Skip to main content

Inference tools for RVC

Project description

RVC INFER PY

PyPI version

rvc_inferpy is a Python library designed for audio inference using RVC (Retrieval-based Voice Conversion). It provides a straightforward interface to process audio files with various configurable parameters.

Installation

Install the package using pip:

pip install rvc-inferpy

Usage

Here's a simple example demonstrating how to use the library:

from rvc_inferpy import infer_audio

inferred_audio = infer_audio(
    MODEL_NAME="model_name_here",       # Name or path to the RVC model
    SOUND_PATH="path_to_audio.wav",    # Path to the input audio file
    F0_CHANGE=0,                       # Change in fundamental frequency
    F0_METHOD="crepe",                 # F0 extraction method ("crepe", "dio", etc.)
    MIN_PITCH=50,                      # Minimum pitch value
    MAX_PITCH=800,                     # Maximum pitch value
    CREPE_HOP_LENGTH=128,              # Hop length for Crepe
    INDEX_RATE=1.0,                    # Index rate for model inference
    FILTER_RADIUS=3,                   # Radius for smoothing filters
    RMS_MIX_RATE=0.75,                 # Mixing rate for RMS
    PROTECT=0.33,                      # Protect level to prevent overfitting
    SPLIT_INFER=True,                  # Whether to split audio for inference
    MIN_SILENCE=0.5,                   # Minimum silence duration for splitting
    SILENCE_THRESHOLD=-40,             # Silence threshold in dB
    SEEK_STEP=10,                      # Seek step in milliseconds
    KEEP_SILENCE=0.1,                  # Keep silence duration in seconds
    FORMANT_SHIFT=0.0,                 # Amount of formant shifting
    QUEFRENCY=0.0,                     # Cepstrum quefrency adjustment
    TIMBRE=1.0,                        # Timbre preservation level
    F0_AUTOTUNE=False,                 # Enable or disable F0 autotuning
    OUTPUT_FORMAT="wav"                # Desired output format (e.g., "wav", "mp3")
)

Usage with cli

you can also use with cli by:


rvc-infer -h


Parameters

  • MODEL_NAME: Name or path of the RVC model to use.
  • SOUND_PATH: Path to the input audio file to be processed.
  • F0_CHANGE: Adjusts the fundamental frequency (F0) of the audio.
  • F0_METHOD: Method for extracting F0 (e.g., "crepe", "dio").
  • MIN_PITCH / MAX_PITCH: Minimum and maximum pitch values for processing.
  • CREPE_HOP_LENGTH: Hop length parameter for the Crepe method.
  • INDEX_RATE: Determines the index rate for the inference model.
  • FILTER_RADIUS: Radius used for smoothing filters.
  • RMS_MIX_RATE: Mix rate for RMS adjustments.
  • PROTECT: Protects specific audio characteristics from overfitting.
  • SPLIT_INFER: Splits the audio for inference if set to True.
  • MIN_SILENCE: Minimum silence duration for splitting audio (in seconds).
  • SILENCE_THRESHOLD: Threshold to detect silence (in decibels).
  • SEEK_STEP: Seek step in milliseconds during splitting.
  • KEEP_SILENCE: Duration of silence to retain after processing.
  • FORMANT_SHIFT: Amount of formant shifting applied.
  • QUEFRENCY: Adjusts the quefrency in the cepstrum domain.
  • TIMBRE: Controls timbre preservation during processing.
  • F0_AUTOTUNE: Enables or disables F0 autotuning.
  • OUTPUT_FORMAT: Specifies the output file format (e.g., "wav", "mp3").

Output

The function returns an audio object with the processed audio based on the provided parameters.

Information

you must upload your models in models/model_name folder

Credits

IAHispano's Applio: base of this project

RVC-Project: Original RVC repository

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rvc_inferpy-0.4.3.tar.gz (49.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rvc_inferpy-0.4.3-py3-none-any.whl (53.6 kB view details)

Uploaded Python 3

File details

Details for the file rvc_inferpy-0.4.3.tar.gz.

File metadata

  • Download URL: rvc_inferpy-0.4.3.tar.gz
  • Upload date:
  • Size: 49.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.12

File hashes

Hashes for rvc_inferpy-0.4.3.tar.gz
Algorithm Hash digest
SHA256 207f83a6eef937829ad924b7df23b19bdb39db8061877209edf243d2d17db8cd
MD5 01fc82310d759e14f2e3a8765429118e
BLAKE2b-256 f2d2c9d788c878fa3e2322f548cd168c376950680b528eaa2b9b2f796b1b432f

See more details on using hashes here.

File details

Details for the file rvc_inferpy-0.4.3-py3-none-any.whl.

File metadata

  • Download URL: rvc_inferpy-0.4.3-py3-none-any.whl
  • Upload date:
  • Size: 53.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.12

File hashes

Hashes for rvc_inferpy-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c4926ff4bcc857f499f46deb96ef44c062f2772953f1fc810a14dda5dbc79aaf
MD5 dcee874016d30adf8bf79a7a449fc4c7
BLAKE2b-256 d5d50248312808ade7c0c4f61277faa6d82d5e269dd71fb704be6eb787a72d98

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page