40 KiB
| Model | Option / area | Before | After |
|---|---|---|---|
| ACE-Step | Duration / LM guidance / thinking | duration_seconds, lm_cfg_scale, thinking |
duration_sec, lm_guidance_scale, enable_thinking |
| All renamed options below | Compatibility | Existing spellings | Legacy spellings remain accepted; discovery uses canonical names. |
| BreezeTTS, CosyVoice3, FireRed Audio, FireRedTTS3 | Instruction | instruction |
Advertise instruct; retain instruction as a model-local alias with existing embedded specs. |
| Canary ASR, Cohere ASR | Punctuation and casing | pnc |
punc; still controls both punctuation and capitalization. |
| Chatterbox | Flow guidance | s3gen_cfg_rate |
flow_guidance_scale; separate from T3 guidance_scale. |
| Chatterbox | Sampling discovery | Both greedy and do_sample |
Advertise do_sample; legacy greedy=true still overrides sampling. |
| Chatterbox Turbo, VibeASR | Generated-token limit | max_new_tokens |
max_tokens |
| CLI | --audio-chunk-seconds request mapping |
Emits audio_chunk_seconds |
Emits audio_chunk_duration_sec; flag spelling unchanged |
| ControlFoley | Video conditioning file | video |
video_file |
| CosyVoice3 | Convolution storage discovery | Advertised cosyvoice3.conv_weight_type without a consumer |
Remove from discovery; legacy setting remains accepted and ineffective. Existing shared storage selection unchanged. |
| F5-TTS | Guidance discovery | Both cfg_strength and guidance_scale |
Advertise only guidance_scale. |
| FireRed Audio | Understanding-token limit | max_new_tokens |
max_tokens |
| FireRed Audio | Generation limits | max_new_text_tokens, max_new_audio_steps, min_new_audio_steps |
max_text_tokens, max_audio_steps, min_audio_steps; independent limits retained. |
| FireRed Audio | Helper graph-arena discovery | Advertised firered_audio.helper_graph_arena_mb without a consumer |
Remove from discovery; legacy setting remains accepted and ineffective. |
| FireRed Audio | Template default / instruction description | Unconditional tts_clone metadata default; unclear task applicability |
Document asr for ASR and tts_clone for generation. instruction conditions generation; ASR/understanding uses text input as its prompt. |
| Fish Audio, Voxtral Realtime | Token-limit help | max_new_tokens |
Advertise existing canonical max_tokens. |
| FunASR Nano, LFM2 Audio | ASR chunk duration | audio_chunk_seconds |
audio_chunk_duration_sec |
| GigaAM | Session VAD location | Consumer read only vad_model_path |
Also consume canonical gigaam_asr.vad_model_path. |
| GLM-TTS | Noise-file discovery | flow_noise_path, hift_source_random_path |
flow_noise_file, hift_source_random_file |
| Hviske ASR | Punctuation and casing | punctuation |
punc; still controls both punctuation and capitalization. |
| Hviske v6 | Punctuation | punctuated |
punc; casing remains separate. Supply both punc and cased to override automatic formatting. |
| Index Echo | Transcript-token limit | max_text_tokens |
max_tokens |
| IndexTTS2.5 | Duration multiplier | duration_factor |
duration_scale; larger values still mean longer audio. |
| Inflect v2 | Speaking speed | speaking_rate |
speed; larger values remain faster. |
| Irodori TTS | Instruction | instruction, legacy caption |
Advertise instruct; retain both existing spellings. |
| Irodori TTS | Reference trim | max_ref_sec |
reference_duration_sec; zero still selects the full reference. |
| Irodori TTS | Speaker embedding file | speaker_embedding_path |
speaker_embedding_file |
| Kokoro | Session predictor graph arenas | kokoro_tts.predictor_{duration,text,tail}_graph_mb |
Corresponding *_graph_arena_mb; same host metadata allocations and defaults. |
| LFM2 Audio | Session one-pass audio limit | lfm2_audio.max_pass_seconds |
lfm2_audio.max_pass_duration_sec; unchanged 120-second default. |
| LiveAvatar | Request memory policy | memory_saver |
mem_saver |
| LiveAvatar | Reference image file | reference_image_path |
reference_image_file; existing ref_image alias retained. |
| MiniMax Music3 | Session graph arena | minimax_music3.graph_context_mb |
minimax_music3.graph_arena_mb; size unchanged. |
| MiniMax Music3 | Depth-decoder default in specs | rvq_depth_decoder_bf16.gguf |
rvq_depth_decoder_q8_0.gguf, matching the existing runtime default. |
| MioTTS | Request selection help | miotts.best_of_n, miotts.best_of_n_enabled, miotts.best_of_n_language |
Advertise unprefixed request names; session defaults remain family-prefixed. |
| MiraTTS | Session weight selection | Specs classified weights as load options; consumers read bare names | Consume mira_tts.{backbone,linear,conv}_weight_type; classify as session options, retaining bare aliases and Native/Native/F32 defaults. |
| MOSS-TTS v1.5 | Requested duration in codec frames | tokens |
duration_frames; separate from the max_frames ceiling. |
| MOSS-TTS v1.5, MOSS-TTSD, MOSS-VoiceGen | Request text temperature | Family-prefixed text_temperature |
Unprefixed text_temperature; prefixed aliases retained. |
| OuteTTS | Session aligner location | outetts.aligner_path |
outetts.forced_aligner_path |
| OWSM | Beam width | beam_size |
num_beams |
| PocketTTS | Input tokens per text chunk | max_tokens |
text_chunk_tokens; legacy max_tokens remains an input-token budget, not a generation limit. |
| PocketTTS | Generated audio-frame limit | max_steps |
max_frames; zero still selects an estimated cap. |
| PocketTTS | Session FlowLM/Mimi graph arenas | Component *_graph_context_mb |
Corresponding *_graph_arena_mb; sizes unchanged. |
| PocketTTS | Voice-state files | voice_embedding_path, export_voice_state_path |
voice_embedding_file, export_voice_state_file |
| PocketTTS | Clone transcript discovery | Advertised voice_clone_text, unused by voice encoding |
Remove from discovery; legacy input remains accepted with clone audio but does not condition the voice. |
| Qwen3 ASR | Session VAD discovery | qwen3_asr.vad_path |
qwen3_asr.vad_model_path |
| Qwen3 TTS | CustomVoice preset | speaker |
voice_id |
| Qwen3 TTS, OmniVoice, DotTTS, MOSS-TTS v1.5, MOSS-TTSD, MOSS-VoiceGen | Instruction discovery | Legacy or duplicate instruction names | Advertise only instruct; existing parser aliases remain accepted. |
| RVC | Pitch / retrieval files | pitch_path, retrieval_index_path |
pitch_file, retrieval_index_file |
| SAM Audio | Visual reference files | reference_image_path, reference_video_path |
reference_image_file, reference_video_file |
| sanoTTS | Speaking speed | speaking_rate multiplies duration |
speed uses the reciprocal: speed=2 equals legacy speaking_rate=0.5. Legacy behavior unchanged. |
| Seed-VC | Duration multiplier | length_adjust |
duration_scale; not inverted into speed. |
| Seed-VC | Noise file discovery | noise_path |
noise_file |
| Silero VAD | Speech duration limit | max_speech_duration_s |
max_speech_duration_sec |
| Soprano TTS | Session weight selection | Specs classified weights as load options; consumers read bare names | Consume soprano_tts.backbone_weight_type and soprano_tts.decoder_weight_type; classify as session options and retain bare aliases. |
| Soprano TTS | Weight defaults in specs | native despite F32 runtime defaults |
Publish f32; runtime defaults unchanged. |
| Soprano TTS | Session text chunk size | Consumer read bare text_chunk_size |
Also consume soprano_tts.text_chunk_size in offline and streaming paths. |
| Sopro TTS | Generation duration / reference crop | min_seconds, max_seconds, ref_seconds |
min_duration_sec, max_duration_sec, reference_duration_sec |
| Stable Audio | Duration and inpainting help | duration_seconds, duration_padding_seconds, inpaint_mask_*_seconds |
Advertise existing corresponding *_sec names. |
| Stable Audio, MiniMax H3 | Sampler selection | sampler |
sampler_mode; supported algorithms unchanged. |
| Supertonic | Speed help | Both speaking_rate and speed |
Advertise only speed; legacy input retained. |
| Vevo2 | Target duration / reference trim | target_duration_seconds, reference_duration_seconds |
duration_sec, reference_duration_sec |
| Vevo2 | Session graph arenas | vevo2.{ar_prefill,ar_decode,whisper,tokenizer,fm,vocoder}_graph_context_mb |
Corresponding *_graph_arena_mb; sizes unchanged. |
| VieNeu v3 Turbo | Automatic frame cap / minimum text chunk | frame_cap, text_chunk_min |
auto_frame_cap, text_chunk_min_size; the frame-cap switch remains boolean. |
| VieNeu v3 Turbo | Session G2P dictionary file | vieneu_v3_turbo.g2p_dict / bare g2p_dict |
vieneu_v3_turbo.g2p_dict_file |
| VoxCPM1, VoxCPM2 | Session generation/AudioVAE graph arenas | Component *_graph_context_mb |
Corresponding *_graph_arena_mb; sizes unchanged. |
| VoxCPM2 | Request chunk-strategy help | voxcpm2.chunk_strategy |
Advertise chunk_strategy; prefixed alias retained. |
| ZipVoice | Language / timestep shift | lang, t_shift |
language, shift; session shift remains family-prefixed. |
Numeric Metadata Correction Checklist
Specs and existing handwritten inspection entries were updated together where those entries exist. Spec-backed inspection continues using spec metadata. Useful local descriptions and additional options are retained; no new runtime spec reads were introduced.
Numeric min/max boundaries are retained for discovery. Descriptions state
whether each endpoint is included: > 0 excludes zero, (0, 2) excludes both
endpoints, and (0, 1] includes only the upper endpoint. Conditional descriptions
identify the mode in which a stricter bound applies; zero-valid greedy, disabled,
and whole-file behavior is preserved.
The current CLI metadata and spec conversion only carry inclusive scalar bounds. Those fields alone therefore do not encode the complete acceptance predicate: clients must not treat a displayed minimum of 0 as a promise that zero is accepted in every mode. Runtime checks remain authoritative. No positive type, exclusive-bound fields, arbitrary epsilon, or conditional schema extension was added. Integer bounds were corrected directly.
Scalar Boundary Clarifications
Scope is request unless marked session. > 0 below means finite and positive
where the consumer uses the positive-finite parser. Grouped options share the
stated issue, not necessarily their defaults or upper bounds.
| Done | Model / option | Previous metadata / spec | Runtime consumer / actual constraint | Fix |
|---|---|---|---|---|
| [x] | Qwen3 TTS repetition_penalty |
Minimum 0 (spec) | Must be positive (session). | Retained minimum 0 as a boundary; explicitly described > 0 (zero excluded), with default unchanged. |
| [x] | Qwen3 TTS temperature, subtalker_temperature |
Minimum 0; prose already describes sampling conditions (spec, subtalker) | Positive when the corresponding do_sample/subtalker_do_sample is true (session). |
Retained minimum 0; named do_sample / subtalker_do_sample in the > 0 conditions and documented greedy-mode behavior. |
| [x] | Qwen3 ASR audio_chunk_duration_sec |
Minimum 0 (spec) | Positive in chunking and streaming paths (offline, streaming). | Retained minimum 0; documented > 0 when chunking/streaming, offline none behavior, and mode-specific defaults. |
| [x] | Audio8 TTS top_p, temperature |
[0,1], [0,2] (spec) |
(0,1], (0,2) (session). |
Retained numeric boundaries and existing exact (0,1] / (0,2) descriptions. No scalar spec change needed; zero and temperature 2 are explicitly excluded in prose. |
| [x] | Fish Audio top_p, temperature |
[0,1], [0,2] (spec) |
(0,1], (0,2) (session). |
Retained numeric boundaries and exact (0,1] / (0,2) descriptions; copied those intervals into local help. |
| [x] | BreezeTTS temperature, depth_temperature, top_p |
Minimum 0 (spec) | Positive-finite parser (session). | Retained bounds; documented temperatures > 0 and top-p (0,1]. |
| [x] | Confucius4 TTS temperature, top_p, repetition_penalty |
Minimum 0 (spec) | Temperature > 0, top-p (0,1] (request); penalty > 0 (T2S). |
Retained bounds; made temperature/penalty > 0 explicit and retained top-p (0,1]. |
| [x] | ControlFoley guidance_scale |
Minimum 0 (spec) | Positive parser (pipeline). | Retained bounds; documented guidance > 0. |
| [x] | DramaBox reference_duration_sec, audio_chunk_threshold_sec, audio_chunk_duration_sec |
Minimum 0 (spec) | All must be positive (session). | Retained bounds; documented all three as > 0, leaving crossfade unchanged. |
| [x] | FireRed Audio guidance_scale |
Minimum 0 (spec) | Positive parser (session). | Retained minimum 0; documented guidance > 0. |
| [x] | FireRedTTS3 guidance_scale |
Minimum 0 (spec) | Positive parser in base and instruct paths (session). | Retained minimum 0; documented guidance > 0 for the shared option. |
| [x] | HeartMuLa duration_sec, temperature, guidance_scale, codec_duration_sec, codec_guidance_scale |
Minimum 0 (spec) | Positive parsers (session). | Retained bounds; explicitly described all five values as > 0. |
| [x] | Higgs Audio STT audio_chunk_duration_sec |
Minimum 0 (spec) | Must be positive (session). | Retained minimum 0; explicitly described duration > 0. |
| [x] | Irodori TTS duration_scale, min_duration_sec, max_duration_sec |
Minimum 0 (spec) | Scale and minimum duration positive; maximum at least minimum (session). | Retained bounds; explicitly described scale/minimum > 0 and retained max_duration_sec >= min_duration_sec. Reference duration unchanged. |
| [x] | LiveAvatar shift |
Minimum 0 (spec) | Must be positive (pipeline state). | Retained minimum 0; documented shift > 0. |
| [x] | Maya1 temperature, top_p, repetition_penalty |
Minimum 0 (spec) | Positive; top-p also at most 1 (session). | Retained bounds; documented temperature/penalty > 0 and top-p (0,1]. |
| [x] | MiniMax Music3 guidance_scale, ar_guidance_scale |
Minimum 0 (spec) | Both must be positive (pipeline). | Retained both minima; documented both guidance scales > 0. |
| [x] | NeuTTS temperature |
Minimum 0 (spec) | Positive parser (session). | Retained minimum 0; explicitly described temperature > 0. |
| [x] | OuteTTS repetition_penalty |
Minimum 0 (spec) | Nonpositive values throw (decoder). | Retained minimum 0; explicitly described penalty > 0; greedy temperature unchanged. |
| [x] | PersonaPlex temperature, text_temperature |
Minimum 0 (spec) | Positive when do_sample=true (request). |
Retained minimum 0; documented nonnegativity, sampling-only > 0, and greedy behavior. |
| [x] | Seed-VC duration_scale |
Minimum 0 (spec) | Must be positive (session). | Retained minimum 0; explicitly described scale > 0; V2 behavior unchanged. |
| [x] | Sortformer session session_len_sec |
Minimum 0 (spec) | Must be positive (postprocess). | Retained minimum 0; explicitly described session length > 0; Sortformer v2 unchanged. |
| [x] | Soprano TTS temperature |
Minimum 0; prose claims zero selects a default (spec) | Explicitly rejects <= 0 (session). |
Retained minimum 0; removed the false zero/default claim and documented temperature > 0. |
| [x] | Voxtral Realtime temperature, top_p |
Minimum 0 (spec) | Temperature > 0, top-p (0,1] (session). |
Retained bounds; explicitly described temperature > 0 and retained top-p (0,1], including local help. |
| [x] | MOSS-TTSD temperature, repetition_penalty |
Minimum 0 (spec) | Passed to HF sampling (decoder); sampled temperature must be positive (sampler), penalty must be positive when history is present (sampler). | Retained bounds; documented temperature/penalty > 0 and history-dependent penalty checking. |
| [x] | MiDashengLM min_stop_step |
Minimum 0 (spec) | Positive integer parser (session). | Changed integer minimum to 1. |
Session Allocation Bounds
All entries below previously advertised minimum 0 but use parse_size_mb_option,
which rejects nonpositive sizes (shared parser).
Names omit their canonical session family prefix for readability.
| Done | Model | Options | Spec | Consumer | Fix |
|---|---|---|---|---|---|
| [x] | Audio8 TTS | ar_graph_arena_mb, ar_weight_context_mb, codec_graph_arena_mb, codec_weight_context_mb |
spec | session | Changed integer minimum to 1 MiB for every listed option; retained defaults. |
| [x] | Fish Audio | ar_graph_arena_mb, ar_weight_context_mb, codec_graph_arena_mb, codec_weight_context_mb |
spec | session | Changed integer minimum to 1 MiB for every listed option; retained defaults. |
| [x] | Higgs Audio STT | audio_encoder_graph_arena_mb, text_decoder_prefill_graph_arena_mb, text_decoder_decode_graph_arena_mb, text_decoder_weight_context_mb |
spec | session | Changed integer minimum to 1 MiB for every listed option; retained defaults. |
| [x] | Irodori TTS | condition_graph_arena_mb, rf_graph_arena_mb, codec_graph_arena_mb, condition_weight_context_mb, rf_weight_context_mb, codec_weight_context_mb |
arenas, weight contexts | session | Changed integer minimum to 1 MiB for every listed option; retained defaults. |
Sentinels And Coupled Constraints
The first three rows are direct advertised-behavior mismatches. Remaining rows are missing conditional, divisibility, or cross-option constraints, not evidence that every advertised scalar zero is invalid.
| Done | Model / option | Previous metadata / spec | Actual consumer behavior | Fix |
|---|---|---|---|---|
| [x] | F5-TTS session frame_budget |
Default/minimum 0; zero described as 2048 (spec) | Explicit values must be in [256,8192]; explicit zero throws (session). |
Set minimum 256, maximum 8192, and effective default 2048; documented that explicit zero is rejected. Internal omitted-value sentinel unchanged. |
| [x] | AudioSR seed |
-1 described as random (spec) |
Every negative value maps to fixed seed 42; zero is an ordinary seed (pipeline). | Removed the false random claim and minimum -1; documented that all negative inputs and omission use fixed seed 42. Zero remains an ordinary seed. |
| [x] | MiDashengLM seed |
-1 described as random, minimum -1, maximum 2147483647 (spec) |
Unsigned 32-bit parsing rejects -1; omitted seed is 0 (session). | Set range [0,4294967295]; retained default 0 and documented fixed unsigned seed semantics. Downstream seed is uint32_t, widened to uint64_t for flow sampling. |
| [x] | LiveAvatar height, width, num_frames |
Independent minimum values (spec) | Dimensions must be multiples of 16; blockwise frame count must be a multiple of 4 (pipeline state). | Documented multiples of 16 for dimensions and the multiple-of-4 frame constraint only for blockwise generation. |
| [x] | LiveAvatar vae_decoder_tile_size |
Minimum 0, zero disables tiling (spec) | Enabled tiles must be multiples of 8 and larger than overlap (VAE). | Documented enabled tiles as multiples of 8 greater than the 64-pixel overlap; retained zero-disable. |
| [x] | MMS forced aligner session emission_window_sec, emission_context_sec |
Missing upper/alignment constraints (spec) | Window positive, context nonnegative, both at most 3600 s; rounded 16 kHz sample counts must be divisible by 320 (emissions). | Added maximum 3600 for both; documented rounded 16 kHz sample counts divisible by 320, preserving context zero and the context/window relation. |
| [x] | TFGridNet audio_chunk_duration_sec, audio_chunk_overlap_sec |
Independent nonnegative bounds (spec) | Enabled chunk length must exceed n_fft/2 samples; overlap must be positive and smaller than the chunk (session). |
Retained numeric bounds; documented nonnegativity, sample-based chunk/overlap constraints, and strictly positive overlap only when chunking. Whole-file duration zero retained. |
| [x] | Apollo audio_chunk_duration_sec, audio_chunk_overlap_sec |
Independent nonnegative bounds; prose already states the half-chunk overlap limit (spec) | Enabled chunk length must exceed n_fft/2 samples; overlap may not exceed half the chunk (session). |
Added the enabled chunk's sample-based minimum; retained existing half-chunk overlap prose and zero behavior. |
| [x] | RE-USE audio_chunk_duration_sec, audio_chunk_overlap_sec |
Independent nonnegative bounds; prose already states overlap must be shorter (spec) | Enabled chunk length must exceed sample_rate/50 samples; overlap smaller than chunk (session). |
Added the enabled chunk's sample-based minimum; retained existing overlap relation and zero behavior. |
| [x] | MossFormer2 audio_chunk_duration_sec, audio_chunk_overlap_sec |
Independent nonnegative bounds (spec) | When chunking is enabled, overlap must be smaller than duration (session). | Documented overlap smaller than duration when chunking; retained whole-file duration zero. |
| [x] | AudioSR chunk duration/overlap | Independent bounds (spec) | Overlap must be smaller than duration, including after sample rounding (pipeline). | Documented overlap smaller than duration, including after sample rounding. |
| [x] | Stable Audio Foundation init_noise_level |
[0,1] (spec) |
With init audio and k-diffusion, this becomes sampler_sigma_max, which must be positive (assignment, check). |
Documented the Foundation/init-audio/k-diffusion positivity condition; retained [0,1] for the shared option. |
Seed semantics remain model-specific. F5-TTS's default and the AudioSR/MiDashengLM seed descriptions now reflect existing behavior; no new zero-default or random sentinel was implemented. Any future runtime semantics change needs separate authorization and validation; the equivalence results below do not cover it.
Usage Documentation
- Updated the usage tables for all 33 families in this numeric checklist, including shared TTS, music, and speech analysis guides: positive/exclusive bounds, conditional constraints, allocation minima, seed behavior, and the F5 frame-budget default.
- Added missing Audio8/Fish allocation controls, MOSS-TTSD sampling controls, and LiveAvatar shift. Corrected Music3 CFG semantics, Seed-VC V2's duration no-op, and the general seed guidance.
Remaining Discovery Corrections
| Done | Model / control | Fix |
|---|---|---|
| [x] | Echo-TTS text chunk size | Added canonical text_chunk_size to the spec with minimum 1 and default 300, allowing it through request-key validation to the existing consumer. Added a contract regression check and usage documentation. |
| [x] | MMS forced aligner audio chunking | Removed standalone audio-chunk flags from this model's alignment help; other alignment families retain their existing help. |
| [x] | MOSS-TTS-v1.5 / VoiceGenerator generation bounds | Added min_frames and max_frames to specs, local CLI tables, and usage docs. Documented automatic nonpositive values and the runtime-adjusted ceiling. |
| [x] | MiniMax-H3 cache window | Advertised 10%/95% progress controls; removed false literal sigma defaults and documented paired sigma overrides. Updated usage docs. |
| [x] | MOSS-TTS-v1.5 weight format | Corrected local help and the usage table to default native, preserving packaged quantization. |
| [x] | VoxCPM1 automatic retries | Removed the unconditional metadata default; documented true offline, false streaming, and streaming's warning/ignore behavior for explicit true. |
| [x] | Music3 ensemble takes | Added maximum 16 to local CLI metadata and documented the inclusive 1-16 range. |
Runtime Validation Checklist
Checked rows state either a runtime option-equivalence pass or an exemption. Existing GGUFs are used where available; supported safetensors and external-spec packages are labeled explicitly. Unchecked rows retain missing coverage. Output quality is separate from this refactor check: a pass means old/new names reach the same consumers and behave consistently, not that generation quality or pre-existing model behavior is correct.
Instruction naming correction: instruct is canonical. The instruction-only
runtime changes to Audio Flamingo, AuK, Maya1, MOSS-Transcribe-Diarize, and SAMSONE
were reverted to main; their earlier alias runs below describe the superseded
implementation. Newly added instruct aliases for BreezeTTS, CosyVoice3,
FireRed Audio, FireRedTTS3, and Irodori require fresh runtime validation; earlier
checks do not establish coverage for this correction.
| Done | Model | Runtime validation requirement |
|---|---|---|
| [x] | ACE-Step | CUDA Turbo Q8: all three old/new aliases produce identical 12-second WAVs under existing embedded/current specs. Thinking invokes planner code generation, guidance enables CFG, and disabling either changes output; duration yields 60 planner codes and 12 seconds. |
| [x] | Audio Flamingo | CUDA Flamingo 3 Q4_K: both instruction names produce identical summaries under embedded and updated specs; the default produces a transcription instead. |
| [x] | AuK | Flash Q8 aliases match byte-for-byte across old/current external specs; editing rejects both correctly. Unexpected opening phrase is recorded separately as an output-quality observation, not an alias failure. |
| [x] | Canary ASR | CUDA Q8: legacy pnc and canonical punc produce identical transcripts with the existing embedded spec and the updated spec. Disabling the control removes punctuation/capitalization; the default restores them. |
| [x] | Chatterbox | Clone flow aliases/greedy override match byte-for-byte across specs. VC aliases match at the same request position with reversed-order controls. Truncation and repeatability observations are separate from option equivalence. |
| [x] | Chatterbox Turbo | CUDA Q8: token-limit aliases produce identical complete speech under existing and updated specs. Reducing the cap from 512 to 64 shortens output from 6.00 to 2.68 s. |
| [x] | Cohere ASR | CUDA Q8: both punctuation aliases produce identical text with embedded and updated specs; the default restores punctuation/capitalization. |
| [x] | ControlFoley | CUDA existing Q8 GGUF, eight-second upstream skateboarding video: legacy video/canonical video_file produce identical WAVs under embedded/current specs. Video decoding and all visual conditioners execute; output differs from text-only control. |
| [x] | CosyVoice3 | CUDA Q8: legacy conv_weight_type=f16 remains accepted and produces the same WAV as omitting it, under existing and updated specs. ASR recovers the complete requested text. |
| [x] | DotTTS | Edit Q8: old/new instructions perform the requested word replacement with existing/current specs. Reversed-order control gives exact waveform matches at the same request position. Streaming reaches the expected offline-only edit rejection. Repeatability caveat recorded. |
| [x] | F5-TTS | Not required: duplicate guidance discovery removed; parser unchanged. |
| [x] | FireRed Audio | CUDA Q8: ASR token aliases match under embedded/current specs and a four-token control truncates identically. Generation text/audio aliases produce identical complete speech. Removed helper-arena setting remains an accepted no-op. |
| [x] | Fish Audio | Not required: token-limit help only. |
| [x] | FunASR Nano | CUDA Q8: both duration spellings produce identical transcripts and two audio chunks with a three-second setting, under embedded and updated specs. |
| [x] | GigaAM | CUDA multilingual F16 GGUF: bare/prefixed VAD paths produce identical transcripts and two VAD-derived segment boundaries under existing and updated specs. |
| [x] | GLM-TTS | Valid Flow/HiFT noise files: old/new aliases produce identical full-sentence WAVs with the old embedded spec and current override. ASR recovers the full text; controls reach their consumers. |
| [x] | Hviske ASR | CUDA Q8, 16-second Danish sample: both punctuation aliases produce identical text under embedded and updated specs; default conditioning restores capitalization. |
| [x] | Hviske v6 | CUDA Q8, 16-second Danish sample: punctuated=false and punc=false, with cased=false, give identical text under embedded and updated specs. Enabling punctuation/casing changes formatting as expected. |
| [x] | Index Echo | CUDA 2B Q8: max_text_tokens=96 and max_tokens=96 give identical text/timestamps under existing and updated specs. An 8-token control truncates the cue and raises a malformed-subtitle error under both specs. |
| [x] | IndexTTS2.5 | CUDA Q8: duration_factor=1.2 and duration_scale=1.2 match under existing and updated specs; output grows from 6.548 to 7.848 s. ASR recovers the complete requested text. |
| [x] | Inflect v2 | CUDA original GGUF: speaking_rate=1.25 and speed=1.25 produce identical audio under existing and updated specs; 5.831 s versus default 6.492 s confirms the rate direction. ASR recovers the requested text. |
| [x] | Irodori TTS | Both alias pairs match byte-for-byte across old embedded/current specs; reference trimming and embedding loading execute. Embedding-conditioned extra tail is a separate output-quality observation. |
| [x] | Kokoro | CUDA Q8 offline: all three legacy/canonical arena names, with nondefault sizes, produce byte-identical WAVs under existing and updated specs. ASR recovers the requested text. |
| [x] | LFM2 Audio | CUDA upstream Q8 GGUFs require an explicit spec override (no embedded spec). With it, both chunk/one-pass aliases produce identical two-chunk transcripts; both enforce the limit and remain rejected on TTS/S2S where inapplicable. |
| [x] | LiveAvatar | Existing NVFP4/Q4/F16 package: all three image and memory-policy spellings produce byte-identical 45-frame videos. Nondefault false policy is logged in each run; sampled frames are valid and moving. Model-local parsing, not spec-backed validation. |
| [x] | Maya1 | CUDA Q8: both instruction names produce byte-identical WAVs under embedded and updated specs; ASR recovers the requested sentence. Missing instruction still raises the required-input error. |
| [x] | MiniMax H3 | CUDA existing Q4 component package: sampler=res_multistep and sampler_mode=res_multistep select the same nondefault sampler and produce identical 8.7-second audio. Canonical run also uses current spec override. GGUF has no embedded spec; no embedded-spec coverage claimed. |
| [x] | MiniMax Music3 | Existing Q4/Q8/Q4 package: old/new 48 MiB arena names produce identical 20-second WAVs and logged allocations. Lyrics mismatch is recorded separately. Spec overrides do not control this model-local loader. |
| [x] | MiraTTS | Native safetensors: bare/prefixed nondefault weights produce identical WAVs and buffers; canonical names also work with the pre-refactor external spec. Omitted defaults match explicit native/native/F32. No legacy-GGUF coverage claimed. Existing session.wall_ms logging gap recorded. |
| [x] | MioTTS | Not required: request-option help names only. |
| [x] | MOSS-Transcribe-Diarize | Instruction aliases match in offline and streaming with existing/current specs. Custom prompt omits timestamps under both names; default prompt produces a parsed speaker turn. |
| [ ] | MOSS-TTS v1.5 | Matching local package not located, nor found in audio-cpp's HF repositories. Configured package is third-party; not downloaded. Available MOSS-TTS-Local-v1.5 is a different family, not a substitute. |
| [x] | MOSS-TTSD | Instruction and text-temperature aliases produce byte-identical short dialogue across embedded/current specs; ASR recovers both sentences. |
| [x] | MOSS-VoiceGen | Instruction and text-temperature aliases produce byte-identical speech across embedded/current specs; ASR recovers the complete input. |
| [ ] | OuteTTS | Aligner-path aliases and file resolution remain unvalidated. No local package or audio-cpp-hosted package located; configured third-party package not downloaded. |
| [x] | OWSM | CUDA Q8: beam_size=2 and num_beams=2 produce identical transcripts offline and streaming, under embedded and updated specs. |
| [x] | PocketTTS | CUDA English Q8: token/frame limits, voice-state export/import, and five nondefault graph-arena aliases match exactly within offline/streaming modes. Offline old/new options also match across embedded/current specs. Two text chunks; an eight-frame control caps output at 0.64 s. ASR recovers both sentences with minor word differences. |
| [x] | Qwen3 ASR | CUDA 0.6B Q8: both VAD-path names load Silero and produce identical two-chunk transcripts under existing and updated specs. |
| [x] | Qwen3 TTS | CUDA CustomVoice Q8: speaker=ryan and voice_id=ryan override structured Aiden, matching the Ryan-only control and differing from Aiden. Offline results match across specs; streaming alias WAVs also match. Both modes transcribe to the requested text. |
| [x] | RVC | Existing F16 GGUF: valid pitch contour and real FAISS index, retrieval blend 0.25. Old/new names match exactly with packaged loading/current spec; pitch/retrieval consumers execute and ASR preserves the full source sentence. |
| [x] | SAM Audio | CUDA Small F32, six-second official office excerpt: image/video aliases produce byte-identical target and residual WAVs under old embedded/current specs. Vision executes and differs from text-only conditioning. |
| [x] | SAMSONE | CUDA Q8: old/new instruction names give identical audio descriptions under embedded and updated specs; the default prompt produces a different description. |
| [x] | sanoTTS | CUDA F32 Nano and PiperLite: legacy speaking_rate=0.8 equals speed=1.25, byte-for-byte under existing and updated specs. Both shorten audio versus default and preserve the full transcript. |
| [x] | Seed-VC | V1/V2 aliases match at corresponding request positions across packaged/current specs and reversed alias order. Noise files reach their reader; V1 duration control works. V2 parses both duration names but retains the pre-existing no-op; metadata correction is separate from alias equivalence. |
| [x] | Silero VAD | CUDA bundled safetensors (no model spec/GGUF fixture): both maximum-duration names at 2 s produce identical three-segment boundaries; default produces two segments. |
| [x] | Soprano TTS | CUDA Q8: bare/prefixed weight and chunk settings produce byte-identical audio offline and streaming with embedded and updated specs. Nondefault F16 backbone/decoder settings change their weight buffers; chunk size 80 splits the input, unlike the default. |
| [x] | Sopro TTS | CUDA F16: all three duration/reference aliases produce identical offline WAVs under existing and updated specs. Legacy-existing versus canonical-updated streaming WAVs also match, emit 11 chunks, and transcribe to the requested text. |
| [ ] | Stable Audio | Shared Small-SFX parser passes old/new sampler aliases with packaged/current specs; Euler matches exactly and PingPong changes output. Foundation parser remains untested: no local checkpoint or audio-cpp-hosted Foundation package located. |
| [x] | Supertonic | Not required: duplicate speed help removed; parser unchanged. |
| [x] | Vevo2 | Six arena aliases and reference/prosody-duration aliases match exactly on Q8 with packaged loading/current override. Prosody explicitly enabled; 9/6 s controls produce 9.04/6.08 s, and ASR recovers the full text. |
| [x] | VibeASR | CPU upstream two-GGUF package: old/new token limits match using pre-refactor/current external specs. Full transcript at 96 tokens; four-token control truncates. No embedded-spec coverage claimed. |
| [x] | VieNeu v3 Turbo | Existing Q8 GGUF: dictionary, frame-cap, and minimum-chunk aliases give identical 5.2-second WAVs under packaged/current specs. Real SEA-G2P library/dictionary executes. Nondefault cap=false and minimum=60 reach the existing consumers; no frame-ceiling boundary claim. |
| [x] | VoxCPM1 | CUDA Q8: all seven arena aliases at nondefault sizes match byte-for-byte under existing/current specs. Reference encoding is exercised; ASR recovers the full input. |
| [x] | VoxCPM2 | CUDA Q8: all seven arena aliases at nondefault sizes match byte-for-byte under existing/current specs. Reference encoding is exercised; ASR recovers the full input. Chunk-strategy help is documentation-only. |
| [x] | Voxtral Realtime | Not required: token-limit help only. |
| [ ] | ZipVoice | Language and timestep-shift aliases remain unvalidated. No local package or audio-cpp-hosted package located; configured third-party package not downloaded. |