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.5.4.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.5.4-py3-none-any.whl (53.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rvc_inferpy-0.5.4.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.5.4.tar.gz
Algorithm Hash digest
SHA256 e497f9cfa7ddc10cd0448efce923f449317e4341ae2e401da2bc4f4043003d00
MD5 cc5a7f4f1ebc2fb390c41f4ea38ab964
BLAKE2b-256 153fdf878e36da2499d146751fde9fcb2924832d18f46bae5b19b033f6b2d01f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rvc_inferpy-0.5.4-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.5.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b8a1ccad94a78338db49718d6fa4e9aca0a2cbc16770a45e6396f8667d8d21f0
MD5 f13284106ba3726502ca7dcd84db7edf
BLAKE2b-256 7f7760985500b6c1783c373bf9c0e9301b9c2460a3fa6173dcf8f7bc3a36ad24

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