この記事では、コードを記述せずに、Azure AI Speech CLI (SPX とも呼ばれます) を使用して、音声テキスト変換、テキスト読み上げ、音声翻訳などの音声サービスを利用する方法を説明します。 すぐに実稼働環境で使用可能な Speech CLI で、.bat
またはシェル スクリプトを使用して、音声サービスの単純なワークフローを自動化することができます。
この記事では、コマンド プロンプト ウィンドウ、ターミナル、PowerShell に関する実用的な知識があることを前提としています。
注
PowerShell では、解析中止トークン (--%
) は spx
に続ける必要があります。 たとえば、spx --% config @region
を実行すると、現在のリージョンの構成値が表示されます。
ダウンロードしてインストールする
Windows に Speech CLI をインストールするには、次の手順に従います。
プラットフォーム用の Visual Studio 用 Microsoft Visual C++ 再頒布可能パッケージ をインストールします。 初めてインストールする場合、再起動が必要になる場合があります。
.NET 8 をインストールします。
次のコマンドを入力して、.NET CLI から Speech CLI をインストールします。
dotnet tool install --global Microsoft.CognitiveServices.Speech.CLI
Speech CLI を更新するには、次のコマンドを入力します。
dotnet tool update --global Microsoft.CognitiveServices.Speech.CLI
「spx
」または「spx help
」と入力して、Speech CLI のヘルプを表示します。
フォントの制限事項
Windows の Speech CLI では、ローカル コンピューター上のコマンド プロンプトで使用できるフォントのみを表示できます。 Windows ターミナルでは、Speech CLI によって対話的に生成されるすべてのフォントがサポートされます。
ファイルに出力すると、メモ帳などのテキスト エディターや、Microsoft Edge などの Web ブラウザーでも、すべてのフォントを表示できます。
リソース構成を作成する
開始するには、API キーとリージョン識別子 (eastus
、westus
など) が必要です。
Azure portal で Speech 用の AI Foundry リソースを作成します。 詳細については、「 AI Foundry リソースの作成」を参照してください。
リソース キーとリージョン識別子を構成するには、次のコマンドを実行します。
spx config @key --set SPEECH-KEY
spx config @region --set SPEECH-REGION
キーとリージョンは、今後の Speech CLI コマンド用に格納されます。 現在の構成を表示するには、次のコマンドを実行します。
spx config @key
spx config @region
必要に応じて、clear
オプションを含めて、格納されている値のいずれかを削除します。
spx config @key --clear
spx config @region --clear
基本的な使用方法
重要
コンテナーで Speech CLI を使用する場合は、--host
オプションを含めます。 CLI が認証に音声キーを使用しないようにするには、--key none
も指定する必要があります。 たとえば、spx recognize --key none --host wss://localhost:5000/ --file myaudio.wav
で を実行してオーディオ ファイルの音声を認識します。
このセクションでは、初めてのテストと実験に役立つことが多いいくつかの基本的な SPX コマンドについて説明します。 ツール内ヘルプを表示するには、次のコマンドを実行します。
spx
キーワードでヘルプ トピックを検索することができます。 たとえば、Speech CLI の使用例の一覧を表示するために、次のコマンドを実行します。
spx help find --topics "examples"
recognize
コマンドのオプションを表示するには、次のコマンドを実行します。
spx help recognize
コンソール出力には、その他のヘルプ コマンドが一覧表示されます。 これらのコマンドを入力すると、サブコマンドについての詳しいヘルプを表示できます。
Speech to Text (音声認識)
注
Docker コンテナー内で Speech CLI を実行するときは、コンピューターのマイクを使用することはできません。 ただし、ローカルにマウントされたディレクトリ内のオーディオ ファイルを読み取って保存することができます。
システムの既定のマイクを使用して音声をテキストに変換するために、次のコマンドを実行します。
spx recognize --microphone
コマンドを実行すると、アクティブな状態の入力デバイスで、SPX によってオーディオのリッスンが開始されます。 Enter キーを押すと、リッスンが停止されます。 読み上げた音声が認識され、コンソール出力でテキストに変換されます。
Speech CLI を使用すると、オーディオ ファイルから音声を認識することもできます。 次のコマンドを実行します。
spx recognize --file /path/to/file.wav
ヒント
手順がわからなくなった場合や、Speech CLI の認識オプションの詳細を調べる場合は、spx help recognize
を実行します。
Text to Speech (音声合成)
次のコマンドを実行すると、テキストが入力として取得され、合成された音声が、アクティブな状態の出力デバイス (コンピューターのスピーカーなど) に出力されます。
spx synthesize --text "Testing synthesis using the Speech CLI" --speakers
また、合成された出力をファイルに保存することもできます。 この例では、コマンドを実行しているディレクトリに、my-sample.wav というファイルを作成します。
spx synthesize --text "Enjoy using the Speech CLI." --audio output my-sample.wav
これらの例では、英語でテストしていると想定しています。 ただし、Speech サービスでは、多くの言語の音声合成がサポートされています。 次のコマンドを実行するか、または 言語サポート ページにアクセスすると、すべての音声の一覧を取得できます。
spx synthesize --voices
次に、検出された音声のいずれかを使用するためのコマンドを示します。
spx synthesize --text "Bienvenue chez moi." --voice fr-FR-AlainNeural --speakers
ヒント
手順がわからなくなった場合や、Speech CLI の認識オプションの詳細を調べる場合は、spx help synthesize
を実行します。
音声テキスト変換の翻訳
Speech CLI を使用すると、音声テキスト変換の翻訳も実行できます。 次のコマンドを実行して、既定のマイクから音声をキャプチャし、翻訳をテキストとして出力します。
source
コマンドを使用し、target
と translate
の各言語を指定する必要があることに注意してください。
spx translate --microphone --source en-US --target ru-RU
複数の言語に翻訳している場合は、言語コードをセミコロン (;
) で区切ります。
spx translate --microphone --source en-US --target 'ru-RU;fr-FR;es-ES'
翻訳の出力を保存する場合は、--output
フラグを使用します。 この例では、ファイルからの読み取りも行います。
spx translate --file /some/file/path/input.wav --source en-US --target ru-RU --output file /some/file/path/russian_translation.txt
ヒント
手順がわからなくなった場合や、Speech CLI の認識オプションの詳細を調べる場合は、spx help translate
を実行します。