すべてのプロダクト
Search
ドキュメントセンター

Intelligent Speech Interaction:タイムスタンプ機能

最終更新日:Mar 19, 2025

音声合成サービスは、文中の各単語について、音声ストリーム上の時点を示すタイムスタンプを生成します。音声合成のタイムスタンプ機能は、各単語の音素境界検出とも呼ばれます。タイムスタンプは、バーチャルスピーカーや動画の字幕に使用できます。

重要

この機能は、単語ごとの音素境界検出をサポートするスピーカーでのみ使用できます。

リクエストパラメーター

タイムスタンプ機能を有効にするには、クライアントでリクエストを開始するときに、リクエストパラメーター enable_subtitle を true に設定します。

Java 用 SDK を使用しているとします。次の構成を使用できます。

// 送信するテキストの対応するタイムスタンプを返すためにタイムスタンプ機能を有効にするかどうかを指定します。デフォルトでは、この機能は無効になっています。
synthesizer.addCustomedParam("enable_subtitle", true);

サーバー応答

リクエストで enable_subtitle パラメーターを true に設定すると、サーバーは、送信されたテキストに対応するタイムスタンプを含む MetaInfo イベントを返します。

パラメーター

タイプ

説明

subtitles

リスト

タイムスタンプに関する情報。

次の表は、subtitles に含まれるパラメーターについて説明しています。

パラメーター

タイプ

説明

text

文字列

送信されたテキスト内の単語。

begin_time

整数

合成された音声データ内の単語の開始タイムスタンプ(ミリ秒)。

end_time

整数

合成された音声データ内の単語の終了タイムスタンプ(ミリ秒)。

出力例

{
    "header": {
        "message_id": "05450bf69c53413f8d88aed1ee60****",
        "task_id": "640bc797bb684bd6960185651307****",
        "namespace": "SpeechSynthesizer",
        "name": "MetaInfo",
        "status": 20000000,
        "status_message": "GATEWAY|SUCCESS|Success."
    },
    "payload": {
        "subtitles": [
            {
                "text": "xx",
                "begin_time": 130,
                "end_time": 260
            },
            {
                "text": "xx",
                "begin_time": 260,
                "end_time": 370
            }
        ]
    }
}

注記

  • 音声合成サービスは、元のテキストの読み方に基づいて字幕を返します。そのため、タイムスタンプ機能によって生成された動画字幕を画面上の字幕として使用することはできません。代わりに、元のテキストを使用する必要があります。

  • この機能を使用して動画字幕を生成する場合、返された応答に基づいて各文の開始タイムスタンプと終了タイムスタンプを取得できます。