IBM Watson Blog

テキストの発話速度の調整方法

記事をシェアする:

cURLコマンドの<prosody>要素を使用して、テキストの発話速度の制御がいかに簡単かを学びます。

開発者は、最近、私が答えようとしていた質問を受けました。cURLPOSTを使用してIBM Watson Text to Speechの発話速度を調整するにはどうすればよいですか?
調査中に、SpeakingRateSSMLという用語に出くわしました。 クエリへの回答を投稿する前に、まず用語を理解しましょう。

 

発話速度、SSMLとは何ですか?

発話速度は、多くの場合、1分間あたりの単語数(wpm)で表されます。 この値を計算するには、数分間の発話を録音してから、発話の単語数を合計する必要があります。 単語の総数を発話にかかった分数で割ります。

Speaking rate (wpm) = total words/number of minutes

音声合成マークアップ言語(SSML)は、XMLベースのマークアップ言語で、音声合成アプリケーションにテキストの注釈を提供します。 これは、VoiceXML2.0仕様による音声合成の標準マークアップ言語として採用されている、W3C音声ブラウザワーキンググループの推奨事項です。 SSMLは、音声アプリケーションの開発者に、マークアップを介して発音、音量、ピッチ、速度、その他の属性を指定できるようにすることで、合成プロセスの側面を制御する標準的な方法を提供します。 SSMLの完全な概要については、IBMCloudの資料を参照してください。

 

始める前に

  • サービスのインスタンスを作成します:
    • IBM CloudカタログのText to Speechページに移動します。
    • 無料のIBMCloudアカウントにサインアップするか、ログインします。
    • [作成]をクリックします。
  • 認証する資格情報を、サービスインスタンスにコピーします:
    • IBM Cloud Resourceリストから、Text to Speechサービス・インスタンスをクリックして、Text to Speechサービスのダッシュボードページに移動します。
    • [管理]ページで、[資格情報の表示]をクリックし、資格情報を表示します。
    • APIキーとURLの値をコピーし、プレースホルダー{API_KEY}と{URL}を次のセクションのそれぞれの値に置き換えます。

 

コードスニペット

LinuxまたはmacOSでのPOST呼び出しの実際の例を次に示します:

curl -X POST -u “apikey:{API_KEY}” \ –header “Accept: audio/wav” \ –header “Content-Type: application/json” \ –data ‘{“text”: “<p><s><prosody rate=\”+50%\”>This is the first sentence of the paragraph.</prosody></s><s>Here is another sentence.</s><s>Finally, this is the last sentence.</s></p>”}’ \ –output result.wav \ “{URL}/v1/synthesize” -v

Windowsコマンドプロンプトで、次のコマンドを使用してJSONファイルinput.jsonを作成します:

echo { “text”: “<p><s><prosody rate=’+50%’>This is the first sentence of the paragraph.</prosody></s><s>Here is another sentence.</s><s>Finally, this is the last sentence.</s></p>” } > input.json

 

次に、cURLでresult.wavファイルを確認します:

 

curl -X POST -u “apikey:{API_KEY}” ^
–header “Accept: audio/wav” ^

–header “Content-Type: application/json” ^

–data @input.json ^

–output result.wav ^

“{URL}/v1/synthesize” -v

 

もっと詳しく

IBMCloud上の WatsonAssistantWatson Text to Speech、およびWatson Speech to Textサービスを使用して、音声対応の Android チャットボットの作成 をすばやく簡単にできることを学びます。

Slackbotを作成して、イベントおよび会議のDb2データベースエントリを作成および検索します。

SSML属性を理解するのに役立つ上記のコードサンプルを作成するための便利なリンクを次に示します。 また、以下のリンクで<prosody>の制限を確認してください。

https://cloud.ibm.com/docs/text-to-speech?topic=text-to-speech-usingHTTP#usingHTTP

https://cloud.ibm.com/docs/text-to-speech?topic=text-to-speech-elements#break_element

https://text-to-speech-demo.ng.bluemix.net (英語)

 

原文:November 10, 2020, “Adjust the Speaking Rate of Your Text” (https://www.ibm.com/cloud/blog/adjust-the-speaking-rate-of-your-text (英語))

More IBM Watson Blog stories

あらゆる言語に対応する Watson アシスタント

IBM Cloud Blog, IBM Data and AI, IBM Watson Blog

優れたカスタマー・サービス・エクスペリエンスを提供するのは簡単なことではありません。そのためには、お客様の望む方法で関心を引きながらやりとりし、質問を正確に理解して、効率的に問題を解決する必要があります。そのようなエクス ...続きを読む


「IBMから製品を買えば間違いはない」のが本当である理由

IBM Cloud Blog, IBM Data and AI, IBM Watson Blog

Watson Assistant 新しいエンタープライズ・プランをリリース   テクノロジー業界では、「IBM から製品を買っていれば間違いはない」という昔からの通説があります。新型コロナウイルス感染症が猛威を振るう時代 ...続きを読む


チャットボットのオーケストレーションをしやすくする方法の紹介

IBM Cloud Blog, IBM Data and AI, IBM Watson Blog

エンタープライズ・チャットボットの構築には、トレーニング・データと応答コンテンツの他にも、非常に多くの要素の考慮が必要です   時が経つのは早いもので、私がアシスタントをあらゆるものと統合する(英語)ための全体 ...続きを読む