voicevox_core#

無料で使える中品質なテキスト読み上げソフトウェア、VOICEVOXのコア。

Submodules#

Attributes#

AccelerationMode

ハードウェアアクセラレーションモードを設定する設定値。

CharacterVersion

キャラクター のバージョン。

StyleId

スタイルID。

StyleType

スタイル に対応するモデルの種類。

UserDictWordType

ユーザー辞書の単語の品詞。

VoiceModelId

音声モデルID。

__version__

Exceptions#

AnalyzeTextError

入力テキストの解析に失敗した。

GetSupportedDevicesError

サポートされているデバイス情報取得に失敗した。

GpuSupportError

GPUモードがサポートされていない。

InitInferenceRuntimeError

推論ライブラリのロードまたは初期化ができなかった。

InvalidModelDataError

無効なモデルデータ。

InvalidWordError

ユーザー辞書の単語のバリデーションに失敗した。

LoadUserDictError

ユーザー辞書を読み込めなかった。

ModelAlreadyLoadedError

すでに読み込まれている音声モデルを読み込もうとした。

ModelNotFoundError

音声モデルIDに対する音声モデルが見つからなかった。

NotLoadedOpenjtalkDictError

open_jtalk辞書ファイルが読み込まれていない。

OpenZipFileError

ZIPファイルを開くことに失敗した。

ParseKanaError

AquesTalk風記法のテキストの解析に失敗した。

ReadZipEntryError

ZIP内のファイルが読めなかった。

RunModelError

推論に失敗した。

SaveUserDictError

ユーザー辞書を書き込めなかった。

StyleAlreadyLoadedError

すでに読み込まれているスタイルを読み込もうとした。

StyleNotFoundError

スタイルIDに対するスタイルが見つからなかった。

UseUserDictError

OpenJTalkのユーザー辞書の設定に失敗した。

WordNotFoundError

ユーザー辞書に単語が見つからなかった。

Classes#

AccentPhrase

AccentPhrase (アクセント句ごとの情報)。

AudioQuery

AudioQuery (音声合成用のクエリ)。

CharacterMeta

キャラクター のメタ情報。

Mora

モーラ(子音+母音)ごとの情報。

StyleMeta

スタイル のメタ情報。

SupportedDevices

ONNX Runtimeとして利用可能なデバイスの情報。

UserDictWord

ユーザー辞書の単語。

Package Contents#

voicevox_core.AccelerationMode: TypeAlias = Literal['AUTO', 'CPU', 'GPU'] | _Reserved#

ハードウェアアクセラレーションモードを設定する設定値。

説明

"AUTO"

実行環境に合った適切なハードウェアアクセラレーションモードを選択する。

"CPU"

ハードウェアアクセラレーションモードを”CPU”に設定する。

"GPU"

ハードウェアアクセラレーションモードを”GPU”に設定する。

_Reserved

将来のために予約されている値。この値が存在することは決してない。 str のサブタイプであるため、 AccelerationModestr として 扱うことは可能。

_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 (アクセント句ごとの情報)。

moras: list[Mora]#

モーラの配列。

accent: int#

アクセント箇所。

pause_mora: Mora | None = None#

後ろに無音を付けるかどうか。

is_interrogative: bool = False#

疑問系かどうか。

class voicevox_core.AudioQuery#

AudioQuery (音声合成用のクエリ)。

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#
class voicevox_core.CharacterMeta#

キャラクター のメタ情報。

name: str#

キャラクター名。

styles: list[StyleMeta]#

キャラクターに属するスタイル。

speaker_uuid: str#

キャラクターのUUID。

version: CharacterVersion#

キャラクターのバージョン。

order: int | None = None#

キャラクターの順番。

CharacterMeta の列は、この値に対して昇順に並んでいるべきである。

voicevox_core.CharacterVersion#

キャラクター のバージョン。

Parameters:

x (str)

class voicevox_core.Mora#

モーラ(子音+母音)ごとの情報。

text: str#

文字。

vowel: str#

母音の音素。

vowel_length: float#

母音の音長。

pitch: float#

音高。

consonant: str | None = None#

子音の音素。

consonant_length: float | None = None#

子音の音長。

voicevox_core.StyleId#

スタイルID。

VOICEVOXにおける、ある キャラクター のある スタイル を指す。

Parameters:

x (int)

class voicevox_core.StyleMeta#

スタイル のメタ情報。

name: str#

スタイル名。

id: StyleId#

スタイルID。

type: StyleType = 'talk'#

スタイルに対応するモデルの種類。

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 のサブタイプであるため、 StyleTypestr として 扱うことは可能。

_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が使える環境ではなかったとしても cudadmlTrue を示しうる。

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 のサブタイプであるため、 UserDictWordTypestr として 扱うことは可能。

_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。

Parameters:

x (UUID)

exception voicevox_core.AnalyzeTextError#

Bases: Exception

入力テキストの解析に失敗した。

exception voicevox_core.GetSupportedDevicesError#

Bases: Exception

サポートされているデバイス情報取得に失敗した。

exception voicevox_core.GpuSupportError#

Bases: Exception

GPUモードがサポートされていない。

exception voicevox_core.InitInferenceRuntimeError#

Bases: Exception

推論ライブラリのロードまたは初期化ができなかった。

exception voicevox_core.InvalidModelDataError#

Bases: Exception

無効なモデルデータ。

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: Exception

open_jtalk辞書ファイルが読み込まれていない。

exception voicevox_core.OpenZipFileError#

Bases: Exception

ZIPファイルを開くことに失敗した。

exception voicevox_core.ParseKanaError#

Bases: ValueError

AquesTalk風記法のテキストの解析に失敗した。

exception voicevox_core.ReadZipEntryError#

Bases: Exception

ZIP内のファイルが読めなかった。

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: Exception

OpenJTalkのユーザー辞書の設定に失敗した。

exception voicevox_core.WordNotFoundError#

Bases: KeyError

ユーザー辞書に単語が見つからなかった。

voicevox_core.__version__: str#