Skip to Content
リファレンス音声リファレンス: Azure Voice | 音声プロバイダー | Mastra ドキュメント

Azure

MastraのAzureVoiceクラスは、Microsoft Azure Cognitive Servicesを利用してテキスト読み上げ(テキスト・トゥ・スピーチ)および音声認識(スピーチ・トゥ・テキスト)機能を提供します。

使用例

import { AzureVoice } from "@mastra/voice-azure"; // Initialize with configuration const voice = new AzureVoice({ speechModel: { name: "neural", apiKey: "your-azure-speech-api-key", region: "eastus", }, listeningModel: { name: "whisper", apiKey: "your-azure-speech-api-key", region: "eastus", }, speaker: "en-US-JennyNeural", // Default voice }); // Convert text to speech const audioStream = await voice.speak("Hello, how can I help you?", { speaker: "en-US-GuyNeural", // Override default voice style: "cheerful", // Voice style }); // Convert speech to text const text = await voice.listen(audioStream, { filetype: "wav", language: "en-US", });

設定

コンストラクターオプション

speechModel?:

AzureSpeechConfig
テキストから音声合成のための設定。

listeningModel?:

AzureSpeechConfig
音声からテキスト認識のための設定。

speaker?:

string
音声合成のデフォルト音声ID。

AzureSpeechConfig

name?:

'neural' | 'standard' | 'whisper'
使用するモデルタイプ。TTSには'neural'、STTには'whisper'。

apiKey?:

string
Azure Speech ServicesのAPIキー。指定がない場合はAZURE_SPEECH_KEY環境変数が使用されます。

region?:

string
Azureリージョン(例: 'eastus', 'westeurope')。指定がない場合はAZURE_SPEECH_REGION環境変数が使用されます。

メソッド

speak()

Azure のニューラルテキスト読み上げサービスを使用して、テキストを音声に変換します。

input:

string | NodeJS.ReadableStream
音声に変換するテキストまたはテキストストリーム。

options.speaker?:

string
= Constructor's speaker value
音声合成に使用するボイスID。

options.style?:

string
話し方のスタイル(例: 'cheerful', 'sad', 'angry')。

options.rate?:

string
話す速度(例: 'slow', 'medium', 'fast')。

options.pitch?:

string
声のピッチ(例: 'low', 'medium', 'high')。

戻り値: Promise<NodeJS.ReadableStream>

listen()

Azure の音声認識サービスを使用して音声をテキストに書き起こします。

audioStream:

NodeJS.ReadableStream
書き起こし対象の音声ストリーム。

options.filetype?:

string
= 'wav'
入力ストリームの音声フォーマット。

options.language?:

string
= 'en-US'
書き起こしに使用する言語コード。

戻り値: Promise<string>

getSpeakers()

利用可能な音声オプションの配列を返します。各ノードには以下が含まれます:

voiceId:

string
音声の一意な識別子(例: 'en-US-JennyNeural')

name:

string
音声の人間が読める名前

locale:

string
音声の言語ロケール(例: 'en-US')

gender:

string
音声の性別('Male' または 'Female')

styles?:

string[]
その音声で利用可能な話し方のスタイル

注意事項

  • APIキーは、コンストラクタのオプションまたは環境変数(AZURE_SPEECH_KEY と AZURE_SPEECH_REGION)で指定できます
  • Azure は多くの言語で幅広いニューラルボイスを提供しています
  • 一部のボイスは、明るい、悲しい、怒っているなどの話し方スタイルに対応しています
  • 音声認識は複数の音声フォーマットと言語をサポートしています
  • Azure の音声サービスは、自然な音声の高品質なニューラルボイスを提供します