テキストを読み上げる音声合成機能が当たり前になりつつある、最近のスマートフォン。スマートフォンに限らず、スピーカーなどの音を発するスマートデバイスプラットフォームにも多く搭載されています。そしてその多くは、「SSML」と呼ばれる音声合成仕様をサポートしています。

SSML/Speech Synthesis Markup Languageは、音声合成(Text To Speech)に利用されるマークアップ言語です。HTMLなどインターネット関連技術で知られる国際団体W3Cにより標準化され、多くのプラットフォームに採用されています。タグとデータをセットにして文書を構成するXMLをベースに設計され、発音や読み上げ速度、音量といったパラメータをサポートし、自然な音声合成の実現にひと役買っています。

SSMLは標準化された技術仕様ですが、どのように発音するかという音声合成技術は再生環境に委ねられています。実際、iOSの音声合成機能はSSMLをサポートしますし、Google CloudやMicrosoft Azureのようにクラウド上に実装された音声合成技術もSSMLを利用しています。

WWDC23で発表されたAppleの新技術「Live Speech」と「Personal Voice」も、SSMLをベースとした音声合成機能の一種です。前者は汎用の音声データを、後者は自分の声色を利用して文字からオーディオデータを生成しますが、いずれもSSMLの内容に従い発音や読み上げ速度を決定します。

なお、Live SpeechとPersonal Voiceは、iOSやmacOS、watchOSで利用可能なAVSpeechSynthesizerというAPIによりオーディオデータが生成されます。かつてのAVSpeechSynthesizer APIはSSMLをサポートせず、抑揚など話し言葉の微妙なニュアンスの再現には難しい部分がありましたが、合成音声をSSMLのマークアップで制御できるようになり表現力が向上しています。

  • 多くの音声合成技術が「SSML」をサポートしています(画像はWWDC23「Extend Speech Synthesis with personal and custom voices」)