{ "schema_version": 1, "family": "rvc", "display_name": "RVC", "description": "RVC is an offline retrieval-based voice conversion family packaged for audio.cpp with native HuBERT content features, RMVPE pitch extraction, optional IVF retrieval blending, packaged v1/v2 voices, and support for user-supplied RVC checkpoints.", "category": "voice_conversion", "status": "experimental", "tasks": [ "vc" ], "modes": [ "offline" ], "languages": [ "language_agnostic" ], "runtime": { "tags": [ "gguf" ] }, "capabilities": {}, "options": { "request": [ { "name": "voice_id", "type": "enum", "description": "Packaged RVC voice id; default selects the v2 default voice. Ignored when voice_model_path is provided.", "values": [ "default", "manthos", "chocola", "fraise" ], "required": false, "default": "default" }, { "name": "voice_model_path", "type": "path", "description": "Optional user RVC .pth or .pt voice checkpoint path. When set, this overrides the packaged voice id.", "required": false }, { "name": "pitch_extractor", "type": "enum", "description": "Pitch extraction method for F0-enabled voices; the native path currently supports rmvpe only.", "values": [ "rmvpe" ], "required": false, "default": "rmvpe" }, { "name": "pitch_file", "type": "path", "description": "Optional CSV F0 override file with time,Hz rows sorted by time.", "required": false }, { "name": "retrieval_index_file", "type": "path", "description": "Optional user FAISS .index retrieval path used when retrieval_blend is greater than 0 for a user voice model.", "required": false }, { "name": "retrieval_blend", "type": "float", "description": "IVF retrieval feature blend rate; default 0 disables retrieval blending.", "required": false, "min": 0.0, "max": 1.0, "default": 0.0 }, { "name": "semitone_shift", "type": "int", "description": "Semitone pitch shift applied before synthesis; default 0.", "required": false, "default": 0 }, { "name": "pitch_filter_radius", "type": "int", "description": "Pitch median-filter switch: values >2 enable a radius-1 filter; values <=2 disable it.", "required": false, "default": 3 }, { "name": "output_sample_rate", "type": "int", "description": "Output sample rate in Hz; default 0 keeps the selected voice model sample rate. Nonpositive values preserve the voice sample rate.", "required": false, "default": 0 }, { "name": "rms_mix_rate", "type": "float", "description": "RMS envelope mix rate applied after conversion; default 0.25.", "required": false, "default": 0.25 }, { "name": "unvoiced_protection", "type": "float", "description": "Unvoiced consonant protection strength; must be in [0, 1], default 0.33.", "required": false, "min": 0.0, "max": 1.0, "default": 0.33 }, { "name": "speaker_id", "type": "int", "description": "Speaker embedding id for multi-speaker RVC checkpoints; default 0.", "required": false, "min": 0, "default": 0 }, { "name": "audio_pad_duration_sec", "type": "int", "description": "Long-audio chunk pad duration in seconds; default 1.", "required": false, "min": 1, "default": 1 }, { "name": "split_query_sec", "type": "int", "description": "Quiet-point query window in seconds for long-audio splitting; default 5.", "required": false, "min": 1, "default": 5 }, { "name": "split_center_sec", "type": "int", "description": "Long-audio split center stride in seconds; default 30.", "required": false, "min": 1, "default": 30 }, { "name": "split_threshold_sec", "type": "int", "description": "Input duration in seconds before quiet-point splitting is used; default 32.", "required": false, "min": 1, "default": 32 } ], "session": [ { "name": "weight_type", "type": "enum", "description": "Tensor storage type for native RVC, HuBERT, and RMVPE weights; default f32.", "preset": "weight_type_full", "required": false, "default": "f32" }, { "name": "voice_cache_slots", "type": "int", "description": "User voice model cache slots; default 4, set 0 to disable caching.", "required": false, "min": 0, "default": 4 } ], "load": [] }, "package_defaults": { "download": { "kind": "huggingface_snapshot", "repo": "audio-cpp/audio.cpp-gguf", "revision": "main", "gated": false } }, "packages": [ { "id": "rvc_f16", "display_name": "RVC F16 GGUF", "default": true, "format": "gguf", "precision": "f16", "target_directory": "RVC-GGUF", "files": [ "RVC-GGUF/rvc-f16.gguf" ], "strip_prefix": "RVC-GGUF" } ], "dependencies": [], "ui": { "recommended_package": "rvc_f16", "tags": [ "VC", "GGUF" ], "docs": [ "docs/audio_tools.md", "docs/gguf.md" ] }, "sources": [ { "format": "gguf", "roots": { "model": ".", "weights": "$gguf" }, "files": { "voice_v1_chocola_index": "model:voices/v1/chocola/added_IVF732_Flat_nprobe_1.index", "voice_v1_fraise_index": "model:voices/v1/fraise/added_IVF802_Flat_nprobe_1.index", "voice_v2_default_index": "model:voices/v2/default/added_IVF511_Flat_nprobe_1_default_v2.index", "voice_v2_manthos_index": "model:voices/v2/manthos/added_IVF2586_Flat_nprobe_1_manthos_v2.index" }, "tensors": { "support_hubert_base": { "source": "weights:", "prefix": "support_hubert_base" }, "support_rmvpe": { "source": "weights:", "prefix": "support_rmvpe" }, "voice_v1_chocola_checkpoint": { "source": "weights:", "prefix": "voice_v1_chocola_checkpoint" }, "voice_v1_chocola_index_vectors": { "source": "weights:", "prefix": "voice_v1_chocola_index_vectors" }, "voice_v1_fraise_checkpoint": { "source": "weights:", "prefix": "voice_v1_fraise_checkpoint" }, "voice_v1_fraise_index_vectors": { "source": "weights:", "prefix": "voice_v1_fraise_index_vectors" }, "voice_v2_default_checkpoint": { "source": "weights:", "prefix": "voice_v2_default_checkpoint" }, "voice_v2_default_index_vectors": { "source": "weights:", "prefix": "voice_v2_default_index_vectors" }, "voice_v2_manthos_checkpoint": { "source": "weights:", "prefix": "voice_v2_manthos_checkpoint" }, "voice_v2_manthos_index_vectors": { "source": "weights:", "prefix": "voice_v2_manthos_index_vectors" } } }, { "format": "safetensors", "roots": { "safetensors": "../safetensors" }, "files": { "voice_v1_chocola_index": "safetensors:voices/v1/chocola/added_IVF732_Flat_nprobe_1.index", "voice_v1_fraise_index": "safetensors:voices/v1/fraise/added_IVF802_Flat_nprobe_1.index", "voice_v2_default_index": "safetensors:voices/v2/default/added_IVF511_Flat_nprobe_1_default_v2.index", "voice_v2_manthos_index": "safetensors:voices/v2/manthos/added_IVF2586_Flat_nprobe_1_manthos_v2.index" }, "tensors": { "support_hubert_base": "safetensors:support/hubert_base.safetensors", "support_rmvpe": "safetensors:support/rmvpe.safetensors", "voice_v1_chocola_checkpoint": "safetensors:voices/v1/chocola/chocola2333333.safetensors", "voice_v1_chocola_index_vectors": "safetensors:voices/v1/chocola/added_IVF732_Flat_nprobe_1.ivf.safetensors", "voice_v1_fraise_checkpoint": "safetensors:voices/v1/fraise/fraise2333333.safetensors", "voice_v1_fraise_index_vectors": "safetensors:voices/v1/fraise/added_IVF802_Flat_nprobe_1.ivf.safetensors", "voice_v2_default_checkpoint": "safetensors:voices/v2/default/default.safetensors", "voice_v2_default_index_vectors": "safetensors:voices/v2/default/added_IVF511_Flat_nprobe_1_default_v2.ivf.safetensors", "voice_v2_manthos_checkpoint": "safetensors:voices/v2/manthos/manthos.safetensors", "voice_v2_manthos_index_vectors": "safetensors:voices/v2/manthos/added_IVF2586_Flat_nprobe_1_manthos_v2.ivf.safetensors" } } ] }