voicevox_core#
無料で使える中品質なテキスト読み上げソフトウェア、VOICEVOXのコア。
Submodules#
Attributes#
Exceptions#
入力テキストの解析に失敗した。 |
|
サポートされているデバイス情報取得に失敗した。 |
|
GPUモードがサポートされていない。 |
|
推論ライブラリのロードまたは初期化ができなかった。 |
|
無効なモデルデータ。 |
|
AudioQuery、もしくはその一部が不正。 |
|
ユーザー辞書の単語のバリデーションに失敗した。 |
|
ユーザー辞書を読み込めなかった。 |
|
すでに読み込まれている音声モデルを読み込もうとした。 |
|
音声モデルIDに対する音声モデルが見つからなかった。 |
|
open_jtalk辞書ファイルが読み込まれていない。 |
|
ZIPファイルを開くことに失敗した。 |
|
AquesTalk風記法のテキストの解析に失敗した。 |
|
ZIP内のファイルが読めなかった。 |
|
推論に失敗した、もしくは推論結果が異常。 |
|
ユーザー辞書を書き込めなかった。 |
|
すでに読み込まれているスタイルを読み込もうとした。 |
|
スタイルIDに対するスタイルが見つからなかった。 |
|
OpenJTalkのユーザー辞書の設定に失敗した。 |
|
ユーザー辞書に単語が見つからなかった。 |
Classes#
AccentPhrase (アクセント句ごとの情報)。 |
|
AudioQuery (音声合成用のクエリ)。 |
|
キャラクター のメタ情報。 |
|
モーラ(子音+母音)ごとの情報。 |
|
スタイル のメタ情報。 |
|
ONNX Runtimeとして利用可能なデバイスの情報。 |
|
ユーザー辞書の単語。 |
Package Contents#
- voicevox_core.AccelerationMode: TypeAlias = Literal['AUTO', 'CPU', 'GPU'] | _Reserved#
ハードウェアアクセラレーションモードを設定する設定値。
値
説明
"AUTO"実行環境に合った適切なハードウェアアクセラレーションモードを選択する。
"CPU"ハードウェアアクセラレーションモードを”CPU”に設定する。
"GPU"ハードウェアアクセラレーションモードを”GPU”に設定する。
_Reserved将来のために予約されている値。この値が存在することは決してない。
strのサブタイプであるため、AccelerationModeをstrとして 扱うことは可能。_Reservedの存在により、例えば次のコードはPyright/Pylanceの型検査に通らない。これは意図的なデザインである。def _(mode: AccelerationMode) -> int: match mode: case "AUTO": return 0 case "CPU": return 1 case "GPU": return 2
error: Function with declared return type "int" must return value on all code paths "None" is not assignable to "int" (reportReturnType)
strとして扱うことは可能。def _(mode: AccelerationMode): _: str = mode # OK
- class voicevox_core.AccentPhrase#
AccentPhrase (アクセント句ごとの情報)。
この構造体の状態によっては、
Synthesizerの各メソッドはInvalidQueryErrorを発する。詳細はvalidate()にて。- accent: int#
アクセント箇所。
- is_interrogative: bool = False#
疑問系かどうか。
- validate() None#
このインスタンスをバリデートする。
次のうちどれかを満たすなら
InvalidQueryErrorを発する。morasもしくはpause_moraの要素のうちいずれかが 不正 。accentが0。
また次の状態に対しては
WARNINGレベルのログを出す。将来的にはエラーになる予定。morasもしくはpause_moraの要素のうちいずれかが、警告が出る状態。
- class voicevox_core.AudioQuery#
AudioQuery (音声合成用のクエリ)。
この構造体の状態によっては、
Synthesizerの各メソッドはInvalidQueryErrorを発する。詳細はvalidate()にて。シリアライゼーションのサポートはされていない。詳細は データのシリアライゼーション を参照。
- accent_phrases: list[AccentPhrase]#
アクセント句の配列。
- speed_scale: float#
全体の話速。
- pitch_scale: float#
全体の音高。
- intonation_scale: float#
全体の抑揚。
- volume_scale: float#
全体の音量。
- pre_phoneme_length: float#
音声の前の無音時間。
- post_phoneme_length: float#
音声の後の無音時間。
- output_sampling_rate: int#
音声データの出力サンプリングレート。
- output_stereo: bool#
音声データをステレオ出力するか否か。
- kana: str | None = None#
[読み取り専用] AquesTalk風記法。
Synthesizer.create_audio_query()が返すもののみstrとなる。入力として のAudioQueryでは無視される。
- static from_accent_phrases(accent_phrases: list[AccentPhrase]) AudioQuery#
- validate() None#
このインスタンスをバリデートする。
次のうちどれかを満たすなら
InvalidQueryErrorを発する。accent_phrasesの要素のうちいずれかが 不正 。output_sampling_rateが24000の倍数ではない、もしくは0(将来的に解消予定。cf. #762)。
また次の状態に対しては
WARNINGレベルのログを出す。将来的にはエラーになる予定。accent_phrasesの要素のうちいずれかが警告が出る状態。speed_scaleがNaN、infinity、もしくは負。pitch_scaleがNaNもしくは±infinity。intonation_scaleがNaNもしくは±infinity。volume_scaleがNaN、infinity、もしくは負。pre_phoneme_lengthがNaN、infinity、もしくは負。post_phoneme_lengthがNaN、infinity、もしくは負。output_sampling_rateが24000以外の値(エラーと同様将来的に解消予定)。
- class voicevox_core.CharacterMeta#
キャラクター のメタ情報。
- name: str#
キャラクター名。
- speaker_uuid: str#
キャラクターのUUID。
- version: CharacterVersion#
キャラクターのバージョン。
- order: int | None = None#
キャラクターの順番。
CharacterMetaの列は、この値に対して昇順に並んでいるべきである。
- class voicevox_core.Mora#
モーラ(子音+母音)ごとの情報。
この構造体の状態によっては、
Synthesizerの各メソッドはInvalidQueryErrorを発する。詳細はvalidate()にて。- text: str#
文字。
- vowel: str#
母音の音素。
- vowel_length: float#
母音の音長。
- pitch: float#
音高。
- consonant: str | None = None#
子音の音素。
- consonant_length: float | None = None#
子音の音長。
- validate() None#
このインスタンスをバリデートする。
次のうちどれかを満たすなら
InvalidQueryErrorを発する。consonantとconsonant_lengthの有無が不一致。consonantが子音以外の音素であるか、もしくは音素として不正。vowelが子音であるか、もしくは音素として不正。
また次の状態に対しては
WARNINGレベルのログを出す。将来的にはエラーになる予定。consonant_lengthがNaN、infinity、もしくは負。vowel_lengthがNaN、infinity、もしくは負。pitchがNaNもしくは±infinity。
- class voicevox_core.StyleMeta#
スタイル のメタ情報。
- name: str#
スタイル名。
- order: int | None = None#
スタイルの順番。
CharacterMeta.stylesは、この値に対して昇順に並んでいるべきである。
- voicevox_core.StyleType: TypeAlias = Literal['talk', 'singing_teacher', 'frame_decode', 'sing'] | _Reserved#
スタイル に対応するモデルの種類。
値
説明
"talk"音声合成クエリの作成と音声合成が可能。
"singing_teacher"歌唱音声合成用のクエリの作成が可能。
"frame_decode"歌唱音声合成が可能。
"sing"歌唱音声合成用のクエリの作成と歌唱音声合成が可能。
_Reserved将来のために予約されている値。この値が存在することは決してない。
strのサブタイプであるため、StyleTypeをstrとして 扱うことは可能。_Reservedの存在により、例えば次のコードはPyright/Pylanceの型検査に通らない。これは意図的なデザインである。def _(style_type: StyleType) -> int: match style_type: case "talk": return 0 case "singing_teacher": return 1 case "frame_decode": return 2 case "sing": return 3
error: Function with declared return type "int" must return value on all code paths "None" is not assignable to "int" (reportReturnType)
strとして扱うことは可能。def _(style_type: StyleType): _: str = style_type # OK
- class voicevox_core.SupportedDevices#
ONNX Runtimeとして利用可能なデバイスの情報。
あくまでONNX Runtimeが対応しているデバイスの情報であることに注意。GPUが使える環境ではなかったとしても
cudaやdmlはTrueを示しうる。VOICEVOX CORE以外が作ることはできない。作ろうとした場合
TypeErrorとなる。- cpu: bool#
CPUが利用可能。
常に
True。
- cuda: bool#
CUDAが利用可能。
ONNX Runtimeの CUDA Execution Provider (
CUDAExecutionProvider)に対応する。必要な環境についてはそちらを参照。
- dml: bool#
DirectMLが利用可能。
ONNX Runtimeの DirectML Execution Provider (
DmlExecutionProvider)に対応する。必要な環境についてはそちらを参照。
- __post_init__(reserved: Never) None#
- class voicevox_core.UserDictWord#
ユーザー辞書の単語。
シリアライゼーションのサポートはされていない。詳細は データのシリアライゼーション を参照。
- surface: str#
言葉の表層形。
- pronunciation: str#
言葉の発音。
カタカナで表記する。
- accent_type: int#
アクセント型。
音が下がる場所を指す。
- word_type: UserDictWordType = 'COMMON_NOUN'#
品詞。
- priority: int = 5#
単語の優先度。
0から10までの整数。 数字が大きいほど優先度が高くなる。 1から9までの値を指定することを推奨する。
- __post_init__() None#
- voicevox_core.UserDictWordType: TypeAlias = Literal['PROPER_NOUN', 'COMMON_NOUN', 'VERB', 'ADJECTIVE', 'SUFFIX'] | _Reserved#
ユーザー辞書の単語の品詞。
値
説明
"PROPER_NOUN"固有名詞。
"COMMON_NOUN"一般名詞。
"VERB"動詞。
"ADJECTIVE"形容詞。
"SUFFIX"語尾。
_Reserved将来のために予約されている値。この値が存在することは決してない。
strのサブタイプであるため、UserDictWordTypeをstrとして 扱うことは可能。_Reservedの存在により、例えば次のコードはPyright/Pylanceの型検査に通らない。これは意図的なデザインである。def _(word_type: UserDictWordType) -> int: match word_type: case "PROPER_NOUN": return 0 case "COMMON_NOUN": return 1 case "VERB": return 2 case "ADJECTIVE": return 3 case "SUFFIX": return 4
error: Function with declared return type "int" must return value on all code paths "None" is not assignable to "int" (reportReturnType)
strとして扱うことは可能。def _(word_type: UserDictWordType): _: str = word_type # OK
- voicevox_core.VoiceModelId#
音声モデルID。
SynthesizerはこのIDをキーとして、音声モデルのロード・アンロードを行う。同じIDを持つ複数のVVMファイルがあるときは、ファイルとして新しい方を常に使うことが推奨される。 VOICEVOX/voicevox_vvm で管理されているVVMでは、次の方針が取られている。
VVMに含まれる声が変化せず、軽微な修正のみのときはIDを使い回してリリースする。
VVMに含まれる声が明確に変化するかもしくは削除されるような実質的な変更のときは、新しいIDを割り振ってリリースする。
これ以外は未定であり、更なるルールについては VOICEVOX/voicevox_vvm#19 で議論される予定。
- Parameters:
x (UUID)
- exception voicevox_core.AnalyzeTextError#
Bases:
Exception入力テキストの解析に失敗した。
- exception voicevox_core.GetSupportedDevicesError#
Bases:
Exceptionサポートされているデバイス情報取得に失敗した。
- exception voicevox_core.GpuSupportError#
Bases:
ExceptionGPUモードがサポートされていない。
- exception voicevox_core.InitInferenceRuntimeError#
Bases:
Exception推論ライブラリのロードまたは初期化ができなかった。
- exception voicevox_core.InvalidModelDataError#
Bases:
Exception無効なモデルデータ。
- exception voicevox_core.InvalidQueryError#
Bases:
ValueErrorAudioQuery、もしくはその一部が不正。
- exception voicevox_core.InvalidWordError#
Bases:
ValueErrorユーザー辞書の単語のバリデーションに失敗した。
- exception voicevox_core.LoadUserDictError#
Bases:
Exceptionユーザー辞書を読み込めなかった。
- exception voicevox_core.ModelAlreadyLoadedError#
Bases:
Exceptionすでに読み込まれている音声モデルを読み込もうとした。
- exception voicevox_core.ModelNotFoundError#
Bases:
KeyError音声モデルIDに対する音声モデルが見つからなかった。
- exception voicevox_core.NotLoadedOpenjtalkDictError#
Bases:
Exceptionopen_jtalk辞書ファイルが読み込まれていない。
- exception voicevox_core.OpenZipFileError#
Bases:
ExceptionZIPファイルを開くことに失敗した。
- exception voicevox_core.ParseKanaError#
Bases:
ValueErrorAquesTalk風記法のテキストの解析に失敗した。
- exception voicevox_core.ReadZipEntryError#
Bases:
ExceptionZIP内のファイルが読めなかった。
- exception voicevox_core.RunModelError#
Bases:
Exception推論に失敗した、もしくは推論結果が異常。
- exception voicevox_core.SaveUserDictError#
Bases:
Exceptionユーザー辞書を書き込めなかった。
- exception voicevox_core.StyleAlreadyLoadedError#
Bases:
Exceptionすでに読み込まれているスタイルを読み込もうとした。
- exception voicevox_core.StyleNotFoundError#
Bases:
KeyErrorスタイルIDに対するスタイルが見つからなかった。
- exception voicevox_core.UseUserDictError#
Bases:
ExceptionOpenJTalkのユーザー辞書の設定に失敗した。
- exception voicevox_core.WordNotFoundError#
Bases:
KeyErrorユーザー辞書に単語が見つからなかった。
- voicevox_core.__version__: str#