ナビゲーションにスキップ

文字起こし

ElevenLabsで音声をテキストに変換する方法をご紹介します。

概要

ElevenLabsのスピーチtoテキスト(STT)APIは、最先端の精度で音声をテキストに変換します。Scribe v2モデルは、90以上の言語と複数の声のスタイルにわたるテキスト上の手がかりに適応します。ライブデモを試すには、スピーチtoテキストの紹介ページをご覧ください。

HIPAA準拠が必要な企業は、Business Associate Agreement(BAA)を締結するためにElevenLabs Salesへお問い合わせください。HIPAA関連の インテグレーションやデプロイを進める前に、この手続きが完了していることを確認してください。

モデル

APIレスポンスの例

以下の例では、サンプル音声ファイルにScribe v2モデルを使用したスピーチtoテキストAPIの出力を示します。

{
"language_code": "en",
"language_probability": 1,
"text": "With a soft and whispery American accent, I'm the ideal choice for creating ASMR content, meditative guides, or adding an intimate feel to your narrative projects.",
"words": [
{
"text": "With",
"start": 0.119,
"end": 0.259,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 0.239,
"end": 0.299,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "a",
"start": 0.279,
"end": 0.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 0.339,
"end": 0.499,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "soft",
"start": 0.479,
"end": 1.039,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.019,
"end": 1.2,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "and",
"start": 1.18,
"end": 1.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.339,
"end": 1.44,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "whispery",
"start": 1.419,
"end": 1.979,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 1.959,
"end": 2.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "American",
"start": 2.159,
"end": 2.719,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 2.699,
"end": 2.779,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "accent,",
"start": 2.759,
"end": 3.389,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.119,
"end": 4.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "I'm",
"start": 4.159,
"end": 4.459,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.44,
"end": 4.52,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "the",
"start": 4.5,
"end": 4.599,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 4.579,
"end": 4.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "ideal",
"start": 4.679,
"end": 5.099,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 5.079,
"end": 5.219,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "choice",
"start": 5.199,
"end": 5.719,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 5.699,
"end": 6.099,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "for",
"start": 6.099,
"end": 6.199,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 6.179,
"end": 6.279,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "creating",
"start": 6.259,
"end": 6.799,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 6.779,
"end": 6.979,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "ASMR",
"start": 6.959,
"end": 7.739,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 7.719,
"end": 7.859,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "content,",
"start": 7.839,
"end": 8.45,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 9,
"end": 9.06,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "meditative",
"start": 9.04,
"end": 9.64,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 9.619,
"end": 9.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "guides,",
"start": 9.679,
"end": 10.359,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 10.359,
"end": 10.409,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "or",
"start": 11.319,
"end": 11.439,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 11.42,
"end": 11.52,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "adding",
"start": 11.5,
"end": 11.879,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 11.859,
"end": 12,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "an",
"start": 11.979,
"end": 12.079,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 12.059,
"end": 12.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "intimate",
"start": 12.179,
"end": 12.579,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 12.559,
"end": 12.699,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "feel",
"start": 12.679,
"end": 13.159,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.139,
"end": 13.179,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "to",
"start": 13.159,
"end": 13.26,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.239,
"end": 13.3,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "your",
"start": 13.299,
"end": 13.399,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.379,
"end": 13.479,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "narrative",
"start": 13.479,
"end": 13.889,
"type": "word",
"speaker_id": "speaker_0"
},
{
"text": " ",
"start": 13.919,
"end": 13.939,
"type": "spacing",
"speaker_id": "speaker_0"
},
{
"text": "projects.",
"start": 13.919,
"end": 14.779,
"type": "word",
"speaker_id": "speaker_0"
}
]
}

出力は次の3つのカテゴリに分類されます。

  • word - 音声の言語での単語
  • spacing - 単語間のスペース。日本語、中国語(標準語)、タイ語、ラオ語、ビルマ語、広東語など、スペースを使用しない言語には該当しません
  • audio_event - 笑い声や拍手などの非音声音

同時実行数と優先度

同時実行数とは、同時に処理できるリクエスト数のことです。

スピーチtoテキストでは、処理を高速化するため、8分を超えるファイルは内部で並列に文字起こしされます。音声は4つのセグメントに分割され、同時に文字起こしされます。

同時実行数の上限は、次の計算式で求められます。

Concurrency=min⁡(4,round_up(audio_duration_secs480))Concurrency = \min(4, \text{round\_up}(\frac{\text{audio\_duration\_secs}}{480}))

たとえば、15分の音声ファイルは同時実行数2で文字起こしされ、120分の音声ファイルは同時実行数4で文字起こしされます。

上記の計算はScribe v2およびScribe v2 Medicalにのみ適用されます。Scribe v2 Realtimeについては、同時実行数上限チャートをご覧ください。

高度な機能

キータームプロンプティングと文字起こし編集には追加料金がかかります。詳しい料金については、API料金 ページ をご覧ください。

キータームプロンプティング

キータームプロンプティングは、Scribe v2、Scribe v2 Medical(バッチ)、Scribe v2 Realtimeで利用できます。

単語やフレーズを強調して、モデルがそれらを文字起こししやすくできます。これは、プロダクト名、人名、その他の固有用語など、音声内で一般的ではない特定の単語や文を文字起こしする場合に役立ちます。キータームは、他のモデルが提供するバイアス付きキーワードやカスタム語彙より強力です。コンテキストに基づき、その用語を文字起こしするかどうかを判断するためです。バッチでは最大1,000個のキーターム(各50文字)、リアルタイムでは最大50個のキーターム(各20文字)をサポートします。

キータームプロンプティングの使用方法については、キータームプロンプティングのドキュメントをご覧ください。

非逐語モード

非逐語モードは、Scribe v2、Scribe v2 Medical(バッチ)、Scribe v2 Realtimeで利用できます。

no_verbatimを有効にすると、モデルは文字起こしからフィラーワード、言い直し、非流暢性を除去します。これにより、字幕、要約、または話されたすべての単語を記録することよりも読みやすさが重要なユースケースに適した、よりクリーンな出力が得られます。

エンティティ検出

エンティティ検出は、すべてのバッチモデルおよびScribe v2 Realtimeで利用できます。

バッチモデルとScribe v2 Realtimeは、文字起こし内の複数カテゴリのエンティティを検出し、その正確なタイムスタンプを提供できます。これは、クレジットカード番号、氏名、病状、社会保障番号を強調表示する場合に役立ちます。

サポートされるエンティティの一覧については、エンティティ検出のドキュメントをご覧ください。

文字起こし編集

文字起こし編集は、すべてのバッチモデルとScribe v2 Realtimeで利用できる実験的機能です。

transcript_editパラメータに自然言語の指示を渡すと、完成した文字起こしに適用されます。編集後のテキストは元の文字起こしとともにedited_transcriptで返されるため、タイムスタンプと話者ラベルは維持されます。日付、時刻、単位の表記を統一したり、別のスタイルを適用したり、1回のリクエストで文字起こしを書き換えたりする際に役立ちます。

詳細は、文字起こし編集のドキュメントとリアルタイム文字起こし編集ガイドをご覧ください。

対応言語

Scribe v2は、以下を含む90以上の言語に対応しています。

アフリカーンス語(afr)、アムハラ語(amh)、アラビア語(ara)、アルメニア語(hye)、アッサム語(asm)、アストゥリアス語(ast)、アゼルバイジャン語(aze)、ベラルーシ語(bel)、ベンガル語(ben)、ボスニア語(bos)、ブルガリア語(bul)、ビルマ語(mya)、広東語(yue)、カタルーニャ語(cat)、セブアノ語(ceb)、チェワ語(nya)、クロアチア語(hrv)、チェコ語(ces)、デンマーク語(dan)、オランダ語(nld)、英語(eng)、エストニア語(est)、フィリピン語(fil)、フィンランド語(fin)、フランス語(fra)、フラニ語(ful)、ガリシア語(glg)、ガンダ語(lug)、ジョージア語(kat)、ドイツ語(deu)、ギリシャ語(ell)、グジャラート語(guj)、ハウサ語(hau)、ヘブライ語(heb)、ヒンディー語(hin)、ハンガリー語(hun)、アイスランド語(isl)、イボ語(ibo)、インドネシア語(ind)、アイルランド語(gle)、イタリア語(ita)、日本語(jpn)、ジャワ語(jav)、カーボベルデ・クレオール語(kea)、カンナダ語(kan)、カザフ語(kaz)、クメール語(khm)、韓国語(kor)、クルド語(kur)、キルギス語(kir)、ラオ語(lao)、ラトビア語(lav)、リンガラ語(lin)、リトアニア語(lit)、ルオ語(luo)、ルクセンブルク語(ltz)、マケドニア語(mkd)、マレー語(msa)、マラヤーラム語(mal)、マルタ語(mlt)、中国語(標準語)(zho)、マオリ語(mri)、マラーティー語(mar)、モンゴル語(mon)、ネパール語(nep)、北ソト語(nso)、ノルウェー語(nor)、オック語(oci)、オディア語(ori)、パシュトー語(pus)、ペルシャ語(fas)、ポーランド語(pol)、ポルトガル語(por)、パンジャブ語(pan)、ルーマニア語(ron)、ロシア語(rus)、セルビア語(srp)、ショナ語(sna)、シンド語(snd)、シンハラ語(sin)、スロバキア語(slk)、スロベニア語(slv)、ソマリ語(som)、スペイン語(spa)、スワヒリ語(swa)、スウェーデン語(swe)、タミル語(tam)、タジク語(tgk)、テルグ語(tel)、タイ語(tha)、トルコ語(tur)、ウクライナ語(ukr)、ウンブンドゥ語(umb)、ウルドゥー語(urd)、ウズベク語(uzb)、ベトナム語(vie)、ウェールズ語(cym)、ウォロフ語(wol)、コサ語(xho)、ズールー語(zul)。

言語サポートの内訳

単語誤り率(WER)は、文字起こしシステムの精度を評価するための重要な指標です。参照文字起こしと比較して、文字起こしにどれだけの誤りがあるかを測定します。以下は、Scribe v2がサポートする各言語のWERの内訳です。

ベラルーシ語(bel)、ボスニア語(bos)、ブルガリア語(bul)、カタルーニャ語(cat)、クロアチア語(hrv)、チェコ語(ces)、 デンマーク語(dan)、オランダ語(nld)、英語(eng)、エストニア語(est)、フィンランド語(fin)、フランス語(fra)、ガリシア語 (glg)、ドイツ語(deu)、ギリシャ語(ell)、ハンガリー語(hun)、アイスランド語(isl)、インドネシア語(ind)、イタリア語 (ita)、日本語(jpn)、カンナダ語(kan)、ラトビア語(lav)、マケドニア語(mkd)、マレー語(msa)、マラヤーラム語 (mal)、ノルウェー語(nor)、ポーランド語(pol)、ポルトガル語(por)、ルーマニア語(ron)、ロシア語(rus)、スロバキア語 (slk)、スペイン語(spa)、スウェーデン語(swe)、トルコ語(tur)、ウクライナ語(ukr)、ベトナム語(vie)。

アルメニア語(hye)、アゼルバイジャン語(aze)、ベンガル語(ben)、広東語(yue)、フィリピン語(fil)、ジョージア語 (kat)、グジャラート語(guj)、ヒンディー語(hin)、カザフ語(kaz)、リトアニア語(lit)、マルタ語(mlt)、中国語(標準語) (cmn)、マラーティー語(mar)、ネパール語(nep)、オリヤー語(ori)、ペルシャ語(fas)、セルビア語(srp)、スロベニア語(slv)、 スワヒリ語(swa)、タミル語(tam)、テルグ語(tel)

アフリカーンス語(afr)、アラビア語(ara)、アッサム語(asm)、アストゥリアス語(ast)、ビルマ語(mya)、ハウサ語(hau)、 ヘブライ語(heb)、ジャワ語(jav)、韓国語(kor)、キルギス語(kir)、ルクセンブルク語(ltz)、マオリ語(mri)、 オック語(oci)、パンジャブ語(pan)、タジク語(tgk)、タイ語(tha)、ウズベク語(uzb)、ウェールズ語(cym)。

アムハラ語(amh)、ガンダ語(lug)、イボ語(ibo)、アイルランド語(gle)、クメール語(khm)、クルド語(kur)、ラオ語(lao)、 モンゴル語(mon)、北ソト語(nso)、パシュトー語(pus)、ショナ語(sna)、シンド語(snd)、シンハラ語(sin)、 ソマリ語(som)、ウルドゥー語(urd)、ウォロフ語(wol)、コサ語(xho)、ヨルバ語(yor)、ズールー語(zul)。

FAQ

はい。APIは文字起こし用に音声ファイルと動画ファイルの両方のアップロードをサポートしています。

最大3GBのファイルをサポートしています。長さの上限は文字起こしモードにより異なります。

  • 標準モード (use_multi_channel=false):最大10時間
  • マルチチャンネルモード (use_multi_channel=true):すべてのチャンネルの合計時間が10時間未満である必要があります

APIは以下の音声・動画形式をサポートしています。

  • audio/aac
  • audio/x-aac
  • audio/x-aiff
  • audio/ogg
  • audio/mpeg
  • audio/mp3
  • audio/mpeg3
  • audio/x-mpeg-3
  • audio/opus
  • audio/wav
  • audio/x-wav
  • audio/webm
  • audio/flac
  • audio/x-flac
  • audio/mp4
  • audio/aiff
  • audio/x-m4a

サポートされる動画形式は以下のとおりです。

  • video/mp4
  • video/x-msvideo
  • video/x-matroska
  • video/quicktime
  • video/x-ms-wmv
  • video/x-flv
  • video/webm
  • video/mpeg
  • video/3gpp

ElevenLabsは、モデルがサポートする言語数を継続的に拡大しています。最新情報は定期的にご確認ください。

はい。非同期の文字起こし結果は、UIのWebhook設定で構成したWebhookに送信できます。詳しくは、Webhookクックブックをご覧ください。

はい。マルチチャンネルSTT機能では、各チャンネルを独立して処理し、そのチャンネル番号に基づいて話者IDを割り当てる音声を文字起こしできます。この機能は最大5チャンネルをサポートします。詳しくは、マルチチャンネル文字起こしクックブックをご覧ください。

ElevenLabsでは、文字起こしのために送信された音声の長さに基づいてスピーチtoテキストの料金が発生します。料金は音声1時間あたりで計算され、プランとモデルによって異なります。詳しい料金については、API料金ページをご覧ください。

無音部分も請求対象の時間に含まれます。バッチとリアルタイムの文字起こしは、休止や無音区間を含め、送信した音声の1秒ごとに計測され、無音部分の割引はありません。

主なポイント

  • 対応入力:音声ファイルと動画ファイルの両方に対応
  • 最大ファイルサイズ:3GB
  • 最大長:10時間(標準モード)、1時間(マルチチャンネルモード)
  • マルチチャンネルモード:最大5チャンネル。各チャンネルは独立して処理され、チャンネル番号に応じた話者IDが割り当てられます
  • Webhook:非同期の文字起こし結果をWebhookに配信できます。ワークスペース設定で構成してください
  • 対応音声形式:AAC、AIFF、OGG、MP3、OPUS、WAV、FLAC、M4A、WebM
  • 対応動画形式:MP4、AVI、MKV、MOV、WMV、FLV、WebM、MPEG、3GPP