-
飴屋/菖蒲氏によって公開されている、Windows向けに作成された歌声合成ソフトウェア「UTAU」に同梱されている、wavファイル伸縮用ソフトresampler.exeの互換プロジェクトです。
UTAU公式サイト(http://utau2008.web.fc2.com/)
-
プロジェクト名はPy Resampler by world for utauの略でPyRwu(ぱいるぅ)と読みます。
-
音声処理のコアな部分はPyWORLDを使用しています。
PyWORLD(https://github.com/JeremyCCHsu/Python-Wrapper-for-World-Vocoder)
-
改造や組み込みを歓迎しますが、それらのためのドキュメントは準備中です。
-
合成処理時に、worldの解析結果のうち最も時間がかかる非周期性指標をwavフォルダと同じ場所に.d4cの拡張子で生成します。ファイルサイズがwavの20倍ぐらいあります。
-
兄弟プロジェクト
PyWavTool(https://github.com/delta-kimigatame/PyWavTool)
- 本ソフトウェアを使用して生じたいかなる不具合についても、作者は責任を負いません。
- 作者は、本ソフトウェアの不具合を修正する責任を負いません。
pip install PyRwu
import PyRwu
resamp = PyRwu.Resamp("input_path.wav","output_path.wav",
"C4", #音高名
100, #子音速度
"B50", #フラグ
0, #offset_ms(原音設定のオフセット/左ブランク)
500, #target_ms
0, #fixed_ms_(原音設定の子音部/固定範囲)
0, #end_ms(原音設定の右ブランク)
100, #音量
0, #モジュレーション
"!20", #テンポ。!ではじまる
"AA#5#") #-2048 ~ 2047のピッチの値列をBas64エンコードしてランレングス圧縮したもの
resamp.resamp()
使用できるフラグは
PyRwuExe.Exe --show-flags
でも確認できます。
B 0 ~ 100 default:50
息成分の強さ(ブレシネス)。大きいほど息っぽい
0~49ではB0の時非周期性指標が全て0になるように乗算します。
51~100ではB100の時、1000Hz~5000Hz帯の非周期性指標が全て1になるように加算します。
eb 0 ~ 100 default:0
語尾の息成分の強さ。大きいほど息っぽい
ebs -1000 ~ 1000 default:0
ノート前半部分の語尾息がかからない時間を5ms単位で指定します。
負の数を指定するとノート末尾からの時間になります。
eba 0 ~ 1000 default:0
ebフラグのアタックタイムを5ms単位で指定します。
g -100 ~ 100 default:0
疑似ジェンダー値
負の数で女声化・若年化
正の数で男声化・大人化します。
t -100 ~ 100 default:0
音程の補正。1cent単位
P 0 ~ 100 default:86
ピークコンプレッサー。
P100の時volume適用前の音量最大値が-6dBになるように正規化
P0の時は何もしない。
e default:False
wavの伸縮方法。
通常はループ方式で、このフラグを設定するとストレッチ式になる。
A -100 ~ 100 default:0
ピッチ変動にあわせて音量が変化します。
1~100では、基準より高いとき音量が小さくなります。
-1~-100では、基準より低いとき音量が小さくなります。
gw 0 ~ 500 default:0
うなり声、グロウル
グロウルが
gws -1000 ~ 1000 default:0
ノート前半部分のグロウルがかからない時間を5ms単位で指定します。
負の数を指定するとノート末尾からの時間になります。
gwa 0 ~ 1000 default:0
gwフラグのアタックタイムを5ms単位で指定します。
vf -500 ~ 500 default:0
疑似エッジ。
エッジがかかる長さを5ms単位で指定します。
vfw 0 ~ 300 default:100
疑似エッジのエッジ1回あたりの長さ。%指定
vfp 0 ~ 100 default:20
疑似エッジのエッジ1回あたりの無音の長さ。%指定
- 全体の処理の流れについては(https://delta-kimigatame.github.io/PyRwu/resamp.html)
- 各種設定項目については(https://delta-kimigatame.github.io/PyRwu/settings.html)