TTS-With-RVC (RVCを使用したテキストツースピーチ)は、 RVCモジュールを導入することにより、テキストツーイチ(TTS)システムの機能を強化するように設計されたパッケージです。このパッケージにより、ユーザーはテキストをスピーチに変換するだけでなく、RVCサポートを使用した好みに応じて音声出力をパーソナライズしてカスタマイズすることもできます。
CUDAまたはMPSを備えたPytorchは、TTS-with-rvc作業を取得するために必要です。
バグが含まれている場合があります。エラーの場合の問題を報告します。
0.1.4- 2024年11月22日:インデックスベースの音声変換をさらに制御するためのindex_pathとindex_rateパラメーターが追加されました
0.1.3-多くの問題、いくつかの最適化を修正しました。
python <= 3.10がインストールされている必要があります(3.10をお勧めします)。
GPUのCUDAまたはMPSサポートが必要です(MPSはまだテストされていません)。
CUDAまたはMPSサポート付きのPytorchをここにインストールする:https://pytorch.org/get-started/locally/
次に、PIPインストールを使用してTTS-with-RVCをインストールします。
python -m pip install git+https://github.com/Atm4x/tts-with-rvc.git#egg=tts_with_rvc
python -m pip install git+https://github.com/Atm4x/rvc-lib.git@dev#egg=rvc
python -m pip install -e git+https://github.com/Atm4x/rvc-lib.git#egg=rvclib
python -m pip install git+https://github.com/Atm4x/rvc-tts-pipeline-fix.git@dev#egg=rvc_tts_pipe
Path内のEnvironment variablesにFFMPEGを追加します。 TTS-With-RVCには、 TTS_RVCというクラスがあります。必要なパラメーターがいくつかあります。
rvc_pathインストールされているRVCLIBディレクトリへのパス(通常はVENV/SRCフォルダーに)。
input_directory入力ディレクトリへのパス(TTS出力を保存するためのTEMPディレクトリ)
model_path .pthモデルへのパス
およびオプションのパラメーター:
voice -Edge-TTSリストからの音声(デフォルトは「ru-dmitryneural」です)
output_directory -Moved Audioを保存するためのディレクトリ( temp/ ISデフォルト)。
index_path音声モデル調整のためのファイルインデックスへのパス(デフォルトは空の文字列"" )。
index_rate元の音声変換とインデックス付き音声変換の間のブレンド率(デフォルトは0.75 )。
声を設定するには、まずTTS_RVCのインスタンスを作成します。
from tts_with_rvc import TTS_RVC
tts = TTS_RVC ( rvc_path = "src \ rvclib" , model_path = "models \ YourModel.pth" , input_directory = "input \ " , index_path = "logs \ YourIndex.index" ) voices.txtファイルに配置されたすべての声があります:
tts.get_voices()問題のために無期限に無効になっています
次に、 tts.set_voice()関数を使用してTTSの音声を設定します。
tts . set_voice ( "un-Un-SelectedNeural" )ナレーションに他の言語を使用している場合は、適切な言語を設定する必要があります!
そして最後のステップは、音声を置き換えるためにttsを呼び出すことです。
path = tts ( text = "Привет, мир!" , pitch = 6 , index_rate = 0.50 )パラメーター:
text - TTSのテキスト(必須)
pitch - RVCのピッチ(オプション、否定値は互換性があり、デフォルトは0です)
tts_rate余分な音声率(オプション、否定値は互換性があり、デフォルトは0です)
tts_volume余分な音量の音量(オプション、否定値は互換性があり、デフォルトは0です)
tts_pitch -TTS生成オーディオの追加ピッチ(オプション、否定値は互換性があり、推奨されません、デフォルトは0です)
output_filename音声オーディオの指定されたパス(オプション、デフォルトはNone )
テキストを発声するための簡単な例:
from tts_with_rvc import TTS_RVC
from playsound import playsound
tts = TTS_RVC (
rvc_path = "src \ rvclib" ,
model_path = "models \ DenVot.pth" ,
input_directory = "input \ " ,
index_path = "logs \ added_IVF1749_Flat_nprobe_1.index"
)
tts . set_voice ( "ru-RU-DmitryNeural" )
path = tts ( text = "Привет, мир!" , pitch = 6 , index_rate = 0.9 )
playsound ( path )GPTモジュールの追加など、統合問題のためのテキストパラメータープロセッサがいくつかあります。
TTS_RVCクラスでprocess_argsを使用して処理できます。
--tts-rate (value) -TTSパラメーター音声レートを編集する(低下率の負の値と増加率の正の値)
--tts-volume (value) -TTSパラメーター音声ボリュームを編集するためのパラメーターRVCモジュール変換のため、動作しないようです。
--tts-pitch (value) -TTSパラメーターTTS生成オーディオのピッチを編集するためのパラメーター(ピッチを減らすためのネガティブ値とピッチの増加の正の値) RVCモジュールには出力用の独自のpitchがあるため、これを使用することをお勧めしません。
--rvc-pitch (value) -RVCパラメーター出力オーディオのピッチを編集する(ピッチを減らすための負の値とピッチの増加の正の値)
今、仕事の原則:
from tts_with_rvc import TTS_RVC
tts = TTS_RVC ( rvc_path = "src \ rvclib" , model_path = "models \ YourModel.pth" , input_directory = "input \ " )
# This method returns arguments and original text without these text parameters
args , message = tts . process_args ( message ) args変数には、次の構造を持つ配列が含まれています。
args[0] -TTSレート
args[1] -TTSボリューム
args[2] -TTSピッチ
args[3] -RVCピッチ
そして今、私たちはそれを世代に使用する準備ができています:
path = tts ( message , pitch = args [ 3 ],
tts_rate = args [ 0 ],
tts_volume = args [ 1 ],
tts_pitch = args [ 2 ])set_index_path(index_path) - 音声モデル調整のためにインデックスファイルへのパスを更新します。
NameError: name 'device' is not definedデバイスがCUDAをサポートしていることを確認してください。トーチの正しいバージョンをインストールしてください。
RuntimeError: Failed to load audio: {e} ffmpegをインストールしてください。
ライセンスなし
atm4x(artem dikarev)