Skip to main content

XSpeechSynthesizerCreate

音声合成器を作成します。

Syntax

Parameters

speechSynthesizer   _Out_
型: XSpeechSynthesizerHandle*
作成された音声合成器のハンドル。

Return value

型: HRESULT 成功した場合は S_OK を返します。そうでない場合はエラー コードを返します。エラー コードの一覧については、エラー コード を参照してください。

Remarks

この関数はタイム センシティブ スレッドで呼び出すのは安全ではありません。詳細については、タイム センシティブ スレッド を参照してください。
この関数を使用して、新しい音声合成器インスタンスへのハンドルを作成して受け取ります。これにより、インストールされている音声合成エンジン (音声) の機能へのアクセスが提供されます。 既定では、新しい音声合成器インスタンスは現在のシステム音声を使用します。現在のデバイスにインストールされている音声を列挙し情報を取得するには、XSpeechSynthesizerEnumerateInstalledVoices 関数を XSpeechSynthesizerInstalledVoicesCallback コールバック関数と共に使用します。インストールされている各音声について、XSpeechSynthesizerVoiceInformation 構造体は音声 ID、説明、表示テキスト、性別、言語、その他の情報を提供します。別のインストール済み音声を使用するには XSpeechSynthesizerSetCustomVoice を呼び出し、現在のシステム音声を再び使用するには XSpeechSynthesizerSetDefaultVoice を呼び出します。 音声合成器ハンドルを作成して音声を指定した後、XSpeechSynthesizerCreateStreamFromText 関数を使用して音声合成器ストリームを作成し、プレーン テキストから音声を合成します。XSpeechSynthesizerGetStreamDataSize および XSpeechSynthesizerGetStreamData 関数を使用して、音声合成器ストリームから合成された音声のオーディオ データを取得し、その後、未完了の非同期操作がすべて完了した後に XSpeechSynthesizerCloseStreamHandle 関数を使用して音声合成器ストリームを閉じます。 音声合成器の使用が完了したら、XSpeechSynthesizerCloseHandle 関数を使用して音声合成器を閉じ、システム リソースを解放します。 メモリ リークを防ぐため、ハンドルを使用するすべての操作が完了した後、XSpeechSynthesizerCloseHandle 関数を呼び出して音声合成器ハンドルを閉じてください。 次の例は、音声合成器とインストール済み音声を使用してプレーン テキストから音声を合成する方法と、音声合成器ストリームでオーディオ データを合成する方法を示しています。XSpeechSynthesizerCreate および XSpeechSynthesizerSetCustomVoice 関数は、音声合成器インスタンスを作成し、voiceId に音声 ID が指定されている場合は必要に応じてカスタム音声を割り当てます。次に、XSpeechSynthesizerCreateStreamFromText 関数は音声合成器ストリームを作成し、textToSpeak で指定されたプレーン テキストから音声を合成します。ストリームが作成された後、XSpeechSynthesizerGetStreamDataSize および XSpeechSynthesizerGetStreamData 関数は、ストリームから再生する合成音声のオーディオ データを取得します。最後に、オーディオ データの再生が完了した後、XSpeechSynthesizerCloseStreamHandle および XSpeechSynthesizerCloseHandle 関数が音声合成器ストリームと音声合成器を閉じます。

Requirements

ヘッダー: XSpeechSynthesizer.h ライブラリ: xgameruntime.lib サポートされているプラットフォーム: Windows、XBOX One ファミリー本体および XBOX Series 本体

Conceptual documentation

See also

XAccessibility
XSpeechSynthesizerCloseHandle
XSpeechSynthesizer
最終更新日 2026年8月24日