voicebank package
Submodules
voicebank.character module
- class voicebank.character.Character(dirpath: str = '')
ベースクラス:
object
Character.txtを扱います
- name
VBの名前、与えられないときはフォルダ名
- Type
str, default ""
- image
アイコン画像のパス
- Type
str, default ""
- sample
サンプル音声のパス
- Type
str, default ""
- author
管理人名
- Type
str, default ""
- web
webサイトurl
- Type
str, default ""
- version
バージョン
- Type
str, default ""
- dirpath
音源のルートのパス
- Type
str, default ""
- author: str = ''
- dirpath: str = ''
- image: str = ''
- load(dirpath: str)
dirpath\character.txt を読み込んで各パラメータを更新する。
- パラメータ
dirpath -- 音源のルートディレクトリのパス
- 例外
FileNotFoundError -- character.txtが見つからなかった場合
UnicodeDecodeError -- ファイルがcp932でも環境の文字コードでもなかった場合
- property name: str
- sample: str = ''
- save(encoding: str = 'cp932')
self.dirpath\character.txt を encoding で保存する。
- パラメータ
encoding (str, default "cp932") --
保存する際の文字コードUTAU本体のGUIを考えるとcp932が無難- 例外
OSError -- character.txtに書き込み権限がないとき
UnicodeDecodeError -- パラメータをcp932に変換できなかったとき
- version: str = ''
- web: str = ''
voicebank.frq module
frq
frq関係のデータを扱います。
- class voicebank.frq.Frq(frqpath: str = '', framerate: int = 44100)
ベースクラス:
object
frqファイルを扱います。
- frqpath
- frqファイルのパス
- Type
str
- framerate
wavのサンプリング周波数
- Type
int, default = 44100
- f0
f0データの1次元配列
- Type
np.ndarray of np.float64
- f0_avg
平均キー
- Type
float
- amp
音量データの1次元配列
- Type
np.ndarray of np.float64
- t
時間配列。原則として256sample毎に与えられる。
- Type
np.ndarray
- amp: numpy.ndarray
- f0: numpy.ndarray
- framerate: int = 44100
- frqpath: str
- load(frqpath: str, framerate: int)
frqpathで指定したファイルを開き、self.f0, self.f0_avg, self.amp, self.tを更新します。
- パラメータ
frqpath (str) -- frqのパス。
framerate (int) -- wavのサンプリング周波数
- 例外
FileNotFoundError -- 指定したfrqファイルが存在しないとき
- make(wavpath: str)
wavpathで指定したwavファイルを解析し、self.frqpath, self.framerate, self.f0, self.f0_avg, self.amp, self.tを更新します。
- パラメータ
wavpath (str) -- wavファイルの絶対パス
- 例外
FileNotFoundError -- wavpathのwavファイルが見つからなかったとき
wave.Error -- input_pathで指定したファイルがwavではなかったとき
- save()
self.frqpathで指定したパスにfrqファイルを保存します。
- t: numpy.ndarray
voicebank.oto module
- class voicebank.oto.Oto(dirpath: str = '')
ベースクラス:
object
oto.iniのデータを扱います。
- files() int
読み込んだoto.iniファイルの数を返す
- 戻り値
len(self._datas_by_file)
- 戻り値の型
int
- haskey(key) bool
- load(dirpath: str, recursive: bool = False, subdir: str = '')
- dirpathおよびその子フォルダのoto.iniを読み込みself._datas_by_fileとself._valuesを更新する。self._datas_by_fileはdirpathからの相対パスをキーに持つ辞書で、OtoRecord形式のlistを格納する。self._valuesはaliasをkeyとする辞書で、self._datas_by_fileを参照する。aliasの衝突が起きた場合、ファイル名が若いものを参照する。同一ファイル内でaliasの衝突が起きた場合、offset値の小さいものを参照する。
- パラメータ
dirpath (str) -- 音源のルートディレクトリのパス
recursive (bool, default False) --
Trueにすると孫フォルダ以下のoto.iniも探索する。subdir (str, default "") -- 音源ルートディレクトリからの相対パス
- 例外
UnicodeDecodeError -- ファイルがcp932でもutf-8でもなかった場合
- records() int
読み込んだoto.iniの合計行数を返す
- 戻り値
len(self._values)
- 戻り値の型
int
- class voicebank.oto.OtoRecord(otopath: str, filename: str, alias: str, offset: float, pre: float, ove: float, consonant: float, blank: float)
ベースクラス:
object
oto.iniの各行のデータを扱います。
- otopath
oto.iniのパス。voicedirからの相対パスで与えられる
- Type
str
- filename
wavファイルのファイル名
- Type
str
- alias
エイリアス
- Type
str
- offset
オフセット(setparamでいうところの左ブランク)
- Type
float
- pre
先行発声
- Type
float
- ove
オーバーラップ
- Type
float
- consonant
子音部(setparamでいうところの固定範囲)
- Type
float
- blank
- ブランク(setparamでいうところの右ブランク)正の値のときはwav末尾からのmsを表す。負の値のときはオフセットからのmsの絶対値に-1をかけたものを表す。
- Type
float
- alias: str
- blank: float
- consonant: float
- filename: str
- invert_blank(dirpath: str)
- self.blank値の正負を反転します。blankは正の数の時、ノート末尾からの長さms負の数の時、その絶対値がoffsetからの長さmsを表します。
- パラメータ
dirpath (str) -- 音源のルートディレクトリのパス。
- 例外
FileNotFoundError -- os.path.join(dirpath, self.otopath, self.filename)のwavファイルが見つからなかったとき
wave.Error -- os.path.join(dirpath, self.otopath, self.filename)がwavファイルではなかったとき
- offset: float
- otopath: str
- ove: float
- pre: float
voicebank.prefixmap module
- class voicebank.prefixmap.MapRecord(record: str)
ベースクラス:
object
PrefixMapの各行のデータを扱います。
- key
- 音名。C4,D#3,Ab5などこの値は、loadしたprefix.mapをsaveするときに活用します。参照には活用しません。
- Type
str
- prefix
- Type
str
- suffix
- Type
str
- key: str
- prefix: str
- suffix: str
- class voicebank.prefixmap.PrefixMap(dirpath: str = '')
ベースクラス:
object
prefix.mapのデータを扱います。
- load(dirpath: str, filename: str = 'prefix.map')
dirpath\prefix.map を読み込んでself._valueを更新する。
- パラメータ
dirpath (str) -- 音源のルートディレクトリのパス
filename (str, default "prefix.map") -- ファイル名。UTAU本体の仕様では指定不要ですが、複数のprefix.mapを読み込む仕様を想定
- 例外
FileNotFoundError -- prefix.mapが見つからなかった場合
UnicodeDecodeError -- ファイルがcp932でもutf-8でもなかった場合
- save(dirpath: str, filename: str = 'prefix.map', encoding: str = 'cp932')
dirpath\prefix.map を encoding で保存する。
- パラメータ
dirpath (str) -- 音源のルートディレクトリのパス
filename (str, default "prefix.map") -- ファイル名。UTAU本体の仕様では指定不要ですが、複数のprefix.mapを読み込む仕様を想定
encoding (str, default "cp932") --
保存する際の文字コードUTAU本体のGUIを考えるとcp932が無難
- 例外
OSError -- character.txtに書き込み権限がないとき
UnicodeDecodeError -- パラメータをcp932に変換できなかったとき
voicebank.voicebank module
- class voicebank.voicebank.VoiceBank(dirpath: str, *, logger: Optional[logging.Logger] = None)
ベースクラス:
object
UTAUの音源データを扱います。
- dirpath
音源のルートパス
- Type
str
- property character: voicebank.character.Character
- property dirpath: str
- static is_utau_voicebank(dirpath: str, *, logger: Optional[logging.Logger] = None) bool
- 渡されたパスがUTAU音源フォルダか判定する。character.txt、oto.ini、.wavのいずれかがあればUTAU音源フォルダと判定する。
- パラメータ
dirpath (str) -- 音源のルートパス
- 戻り値
is_utau_voicebank
- 戻り値の型
bool
- 例外
FileNotFoundErrod -- 指定したフォルダが見つからなかったとき
- property oto: voicebank.oto.Oto
- property prefix: voicebank.prefixmap.PrefixMap