翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
StartStreamTranscription
双方向 HTTP/2 WebSocket ストリームをスタートし、オーディオが Amazon Transcribe にストリーミングされると、文字起こしの結果がアプリケーションにストリーミングされます。
以下のパラメータは必須です。
-
language-code
、またはidentify-language
-
media-encoding
-
sample-rate
Amazon Transcribe でのストリーミングの詳細については、ストリーミング音声の書き起こしを参照してください。
リクエストの構文
POST /stream-transcription HTTP/2
x-amzn-transcribe-language-code: LanguageCode
x-amzn-transcribe-sample-rate: MediaSampleRateHertz
x-amzn-transcribe-media-encoding: MediaEncoding
x-amzn-transcribe-vocabulary-name: VocabularyName
x-amzn-transcribe-session-id: SessionId
x-amzn-transcribe-vocabulary-filter-name: VocabularyFilterName
x-amzn-transcribe-vocabulary-filter-method: VocabularyFilterMethod
x-amzn-transcribe-show-speaker-label: ShowSpeakerLabel
x-amzn-transcribe-enable-channel-identification: EnableChannelIdentification
x-amzn-transcribe-number-of-channels: NumberOfChannels
x-amzn-transcribe-enable-partial-results-stabilization: EnablePartialResultsStabilization
x-amzn-transcribe-partial-results-stability: PartialResultsStability
x-amzn-transcribe-content-identification-type: ContentIdentificationType
x-amzn-transcribe-content-redaction-type: ContentRedactionType
x-amzn-transcribe-pii-entity-types: PiiEntityTypes
x-amzn-transcribe-language-model-name: LanguageModelName
x-amzn-transcribe-identify-language: IdentifyLanguage
x-amzn-transcribe-language-options: LanguageOptions
x-amzn-transcribe-preferred-language: PreferredLanguage
x-amzn-transcribe-vocabulary-names: VocabularyNames
x-amzn-transcribe-vocabulary-filter-names: VocabularyFilterNames
Content-type: application/json
{
"AudioStream": {
"AudioEvent": {
"AudioChunk": blob
}
}
}
URI リクエストパラメータ
リクエストでは、次の URI パラメータを使用します。
- ContentIdentificationType
-
文字起こしで識別されるすべての個人を特定できる情報 (PII) にラベルを付けます。
コンテンツの識別はセグメントレベルで行われ、
PiiEntityTypes
で指定された個人情報は、音声セグメントの文字起こしが完了するとフラグが付けられます。ContentIdentificationType
ContentRedactionType
同じリクエストでとを設定することはできません。両方を設定した場合、リクエストはBadRequestException
を返します。詳細については、「個人を特定できる情報の編集または識別」を参照してください。
有効な値:
PII
- ContentRedactionType
-
文字起こしで識別される個人を特定できる情報 (PII) をすべて編集します。
コンテンツの編集はセグメントレベルで実行されます。
PiiEntityTypes
で指定された個人情報は、オーディオセグメントの文字起こしが完了すると編集されます。ContentRedactionType
ContentIdentificationType
同じリクエストでとを設定することはできません。両方を設定した場合、リクエストはBadRequestException
を返します。詳細については、「個人を特定できる情報の編集または識別」を参照してください。
有効な値:
PII
- EnableChannelIdentification
-
マルチチャネルの音声のチャネル識別を有効にします。
チャンネル識別では、各チャンネルのオーディオが個別に文字変換され、各チャンネルの出力が 1 つのトランスクリプトに追加されます。
マルチチャンネルオーディオを使用していて、チャンネル識別が有効になっていない場合、オーディオは連続的に文字変換され、トランスクリプトはチャンネルごとに区切られません。
EnableChannelIdentification
リクエストに含める場合は、その内容も含める必要がありますNumberOfChannels
。詳細については、[マルチチャンネルオーディオの書き起こし] を参照してください。
- EnablePartialResultsStabilization
-
トランスクリプションの結果を部分的に安定化できます。結果を部分的に安定させることで、出力のレイテンシーを減らすことができますが、精度に影響する可能性があります。詳細については、部分結果安定化を参照してください。
- IdentifyLanguage
-
文字起こしの言語自動識別を有効にします。
含める場合は
IdentifyLanguage
、オプションとして、オーディオストリームに含まれていると思われる言語コードのリストをLanguageOptions
、を使用して含めることができます。言語オプションを含めると、文字起こしの精度が向上します。を使用して優先言語を含めることもできます
PreferredLanguage
。優先言語を追加すると、このパラメータを省略した場合よりも Amazon Transcribe が言語をすばやく識別することができます。チャンネルごとに異なる言語を含むマルチチャンネルオーディオがあり、チャンネル識別を有効にしている場合、自動言語識別は各オーディオチャンネルの主要言語を識別します。
LanguageCode
IdentifyLanguage
リクエストにはまたはのいずれかを含める必要があることに注意してください。両方のパラメータを含めると、リクエストは失敗します。ストリーミング言語識別は、カスタム言語モデルや編集と組み合わせることはできません。
- LanguageCode
-
音声で話されている言語を表す言語コードを指定します。
オーディオで話されている言語が不明な場合は、
IdentifyLanguage
を使用して自動言語識別を有効にすることを検討してください。Amazon Transcribe ストリーミングでサポートされている言語のリストについては、サポートされている言語表を参照してください。
有効な値:
en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR | ja-JP | ko-KR | zh-CN | hi-IN | th-TH
- LanguageModelName
-
文字起こしの処理をする際に使用するカスタム言語モデルの名前を指定します。言語モデル名では大文字と小文字が区別されることに注意してください。
指定された言語モデルの言語は、文字起こしリクエストで指定した言語コードと一致する必要があります。言語が一致しない場合、カスタム言語モデルは適用されません。言語の不一致に関連するエラーや警告はありません。
詳細については、「カスタム言語モデル」を参照してください。
長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
^[0-9a-zA-Z._-]+
- LanguageOptions
-
メディアに存在すると思われる言語を表す言語コードを 2 つ以上指定してください。5 つ以上含めることはお勧めしません。どの言語が存在するかわからない場合は、このパラメータを含めないでください。
言語オプションを含めると、言語識別の精度を高めることができます。
LanguageOptions
リクエストに含める場合は、その内容も含める必要がありますIdentifyLanguage
。Amazon Transcribe ストリーミングでサポートされている言語のリストについては、サポートされている言語表を参照してください。
重要
ストリーミングあたり 1 つの言語あたり 1 つの言語方言しか含めることができません。たとえば、
en-US
en-AU
とを同じリクエストに含めることはできません。長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
^[a-zA-Z-,]+
- MediaEncoding
-
入力オーディオのエンコーディングを指定します。サポートされる形式:
-
FLAC
-
Ogg コンテナ内の OPUS エンコードオーディオ
-
PCM (符号付き 16 ビットリトルエンディアンオーディオフォーマットのみ、WAV は含まない)
詳しくは、「メディアフォーマット」を参照してください。
有効な値:
pcm | ogg-opus | flac
必須: はい
-
- MediaSampleRateHertz
-
入力音声のサンプルレート (Hz 単位)。電話オーディオなどの低品質オーディオは、通常約 8,000 Hz です。通常、高品質のオーディオの範囲は 16,000 ヘルツから 48,000 ヘルツです。指定するサンプルレートは、音声のサンプルレートと一致する必要があることに注意してください。
有効範囲: 最小値 は 8,000 です。最大値は 48,000 です。
必須: はい
- NumberOfChannels
-
オーディオストリームのチャンネル数を指定します。2 つのチャネルしかサポートされていないため
2
、この値はでなければなりません。音声に複数のチャンネルが含まれていない場合は、このパラメータをリクエストに含めないでください。NumberOfChannels
リクエストに含める場合は、その内容も含める必要がありますEnableChannelIdentification
。値の範囲: 最小値は 2 です。
- PartialResultsStability
-
部分的な結果の安定化 (
EnablePartialResultsStabilization
) を有効にする場合に使用する安定性のレベルを指定します。安定性が低いほど精度が高くなります。安定性が高いほど速く転写されますが、精度はわずかに低下します。
詳細については、部分結果安定化を参照してください。
有効な値:
high | medium | low
- PiiEntityTypes
-
文字起こしで編集する個人を特定できる情報 (PII) の種類を指定します。タイプは必要な数だけ含めることも、選択することもできます
ALL
。PiiEntityTypes
リクエストに含めるには、ContentIdentificationType
またはも含める必要がありますContentRedactionType
。値はカンマで区切る必要があり
ADDRESS
、、BANK_ACCOUNT_NUMBER
、BANK_ROUTING
、CREDIT_DEBIT_CVV
、CREDIT_DEBIT_EXPIRY
、CREDIT_DEBIT_NUMBER
、EMAIL
、NAME
、PHONE
PIN
SSN
、またはを含めることができますALL
。長さの制限: 最小長は 1 です。最大長は 300 です。
Pattern:
^[A-Z_, ]+
- PreferredLanguage
-
で指定した言語コードのサブセットから優先言語を指定します
LanguageOptions
。このパラメータは、
IdentifyLanguage
LanguageOptions
リクエストにおよびを含めた場合にのみ使用できます。有効な値:
en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR | ja-JP | ko-KR | zh-CN | hi-IN | th-TH
- SessionId
-
トランスクリプションセッションの名前を指定します。このパラメータをリクエストに含めない場合、Amazon Transcribe は ID を生成し、レスポンスでそれを返します。
長さの制限: 最大長は 36 です。
パターン:
[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}
- ShowSpeakerLabel
-
トランスクリプション出力のスピーカーパーティショニング (ダイアライゼーション) を有効にします。スピーカーパーティショニングは、メディアファイル内の個々のスピーカーからのスピーチにラベルを付けます。
詳細については、「スピーカーのパーティショニング (ダイアライゼーション)」を参照してください。
- VocabularyFilterMethod
-
語彙フィルターをトランスクリプトにどのように適用するかを指定します。
単語をに置き換えるには
***
、を選択しますmask
。単語を削除するには、を選択します
remove
。単語を変更せずにフラグを付けるには、を選択します
tag
。有効な値:
remove | mask | tag
- VocabularyFilterName
-
文字起こしを処理する際に使用するカスタムボキャブラリーフィルターの名前を指定します。ボキャブラリーフィルター名では大文字と小文字が区別されることに注意してください。
指定したカスタム語彙フィルターの言語が、メディアで指定されている言語と一致しない場合、語彙フィルターは文字起こしには適用されません。
重要
このパラメータは、パラメータとの併用を目的としたものではありません。
IdentifyLanguage
IdentifyLanguage
リクエストに含めていて、文字起こしにボキャブラリーフィルターを1つ以上使用したい場合は、VocabularyFilterNames
代わりにパラメーターを使用してください。詳細については、「不要な単語でのボキャブラリフィルタリングの使用」を参照してください。
長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
^[0-9a-zA-Z._-]+
- VocabularyFilterNames
-
文字起こしの処理時に使用するカスタムボキャブラリーフィルターの名前を指定します。ボキャブラリーフィルター名では大文字と小文字が区別されることに注意してください。
指定したカスタムボキャブラリーフィルターの言語が、メディアで特定された言語と一致しない場合、ジョブは失敗します。
重要
このパラメータは、パラメータとの併用のみを目的としています。
IdentifyLanguage
IdentifyLanguage
リクエストに含めず、文字起こしにカスタムボキャブラリーフィルターを使用したい場合は、VocabularyFilterName
代わりにパラメーターを使用してください。詳細については、「不要な単語でのボキャブラリフィルタリングの使用」を参照してください。
長さの制限: 最小長は 1 です。最大長は 3000 です。
パターン:
^[a-zA-Z0-9,-._]+
- VocabularyName
-
文字起こしの処理をする際に使用するカスタムボキャブラリーの名前を指定します。ボキャブラリー名では大文字と小文字が区別されます。
指定したカスタムボキャブラリーの言語がメディアで特定されている言語と一致しない場合、カスタムボキャブラリーはトランスクリプションには適用されません。
重要
このパラメータは、パラメータとの併用を目的としたものではありません。
IdentifyLanguage
IdentifyLanguage
リクエストに含めていて、文字起こしにカスタムボキャブラリーを1つ以上使用したい場合は、VocabularyNames
代わりにパラメータを使用してください。詳細については、[カスタム語彙] を参照してください。
長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
^[0-9a-zA-Z._-]+
- VocabularyNames
-
文字起こしの処理時に使用するカスタムボキャブラリの名前を指定します。ボキャブラリー名では大文字と小文字が区別されます。
指定したカスタムボキャブラリーの言語がメディアで識別されている言語と一致しない場合、ジョブは失敗します。
重要
このパラメータは、パラメータとの併用のみを目的としています。
IdentifyLanguage
IdentifyLanguage
リクエストに含めず、文字起こしにカスタムボキャブラリーを使用したい場合は、VocabularyName
代わりにパラメータを使用してください。詳細については、[カスタム語彙] を参照してください。
長さの制限: 最小長は 1 です。最大長は 3000 です。
Pattern:
^[a-zA-Z0-9,-._]+
リクエストボディ
リクエストは以下の JSON 形式のデータを受け入れます。
- AudioStream
-
エンコードされたオーディオブロブのストリーミング。オーディオストリームは HTTP/2 WebSocket またはデータフレームとしてエンコードされます。
詳細については、ストリーミング音声の書き起こしを参照してください。
型: AudioStream オブジェクト
必須: はい
レスポンスの構文
HTTP/2 200
x-amzn-request-id: RequestId
x-amzn-transcribe-language-code: LanguageCode
x-amzn-transcribe-sample-rate: MediaSampleRateHertz
x-amzn-transcribe-media-encoding: MediaEncoding
x-amzn-transcribe-vocabulary-name: VocabularyName
x-amzn-transcribe-session-id: SessionId
x-amzn-transcribe-vocabulary-filter-name: VocabularyFilterName
x-amzn-transcribe-vocabulary-filter-method: VocabularyFilterMethod
x-amzn-transcribe-show-speaker-label: ShowSpeakerLabel
x-amzn-transcribe-enable-channel-identification: EnableChannelIdentification
x-amzn-transcribe-number-of-channels: NumberOfChannels
x-amzn-transcribe-enable-partial-results-stabilization: EnablePartialResultsStabilization
x-amzn-transcribe-partial-results-stability: PartialResultsStability
x-amzn-transcribe-content-identification-type: ContentIdentificationType
x-amzn-transcribe-content-redaction-type: ContentRedactionType
x-amzn-transcribe-pii-entity-types: PiiEntityTypes
x-amzn-transcribe-language-model-name: LanguageModelName
x-amzn-transcribe-identify-language: IdentifyLanguage
x-amzn-transcribe-language-options: LanguageOptions
x-amzn-transcribe-preferred-language: PreferredLanguage
x-amzn-transcribe-vocabulary-names: VocabularyNames
x-amzn-transcribe-vocabulary-filter-names: VocabularyFilterNames
Content-type: application/json
{
"TranscriptResultStream": {
"BadRequestException": {
},
"ConflictException": {
},
"InternalFailureException": {
},
"LimitExceededException": {
},
"ServiceUnavailableException": {
},
"TranscriptEvent": {
"Transcript": {
"Results": [
{
"Alternatives": [
{
"Entities": [
{
"Category": "string",
"Confidence": number,
"Content": "string",
"EndTime": number,
"StartTime": number,
"Type": "string"
}
],
"Items": [
{
"Confidence": number,
"Content": "string",
"EndTime": number,
"Speaker": "string",
"Stable": boolean,
"StartTime": number,
"Type": "string",
"VocabularyFilterMatch": boolean
}
],
"Transcript": "string"
}
],
"ChannelId": "string",
"EndTime": number,
"IsPartial": boolean,
"LanguageCode": "string",
"LanguageIdentification": [
{
"LanguageCode": "string",
"Score": number
}
],
"ResultId": "string",
"StartTime": number
}
]
}
}
}
}
レスポンス要素
アクションが成功すると、サービスは HTTP 200 レスポンスを返します。
レスポンスでは、以下の HTTP ヘッダーが返されます。
- ContentIdentificationType
-
文字起こしでコンテンツの識別が有効になっているかどうかを示します。
有効な値:
PII
- ContentRedactionType
-
文字起こしでコンテンツの編集が有効になっているかどうかを示します。
有効な値:
PII
- EnableChannelIdentification
-
トランスクリプションでチャンネル識別が有効になっているかどうかが表示されます。
- EnablePartialResultsStabilization
-
文字起こしの結果の部分安定化が有効になっているかどうかを示します。
- IdentifyLanguage
-
文字起こしで自動言語識別が有効になっているかどうかを示します。
- LanguageCode
-
リクエストで指定した言語コードを提供します。
有効な値:
en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR | ja-JP | ko-KR | zh-CN | hi-IN | th-TH
- LanguageModelName
-
リクエストで指定したカスタム言語モデルの名前を提供します。
長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
^[0-9a-zA-Z._-]+
- LanguageOptions
-
リクエストで指定した言語コードを提供します。
長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
^[a-zA-Z-,]+
- MediaEncoding
-
リクエストで指定したメディアエンコーディングを提供します。
有効な値:
pcm | ogg-opus | flac
- MediaSampleRateHertz
-
リクエストで指定したサンプルレートを提供します。
有効範囲: 最小値 は 8,000 です。48,000 の最大値。
- NumberOfChannels
-
リクエストで指定したチャンネル数を提供します。
値の範囲: 最小値は 2 です。
- PartialResultsStability
-
トランスクリプションに使用した安定化レベルが表示されます。
有効な値:
high | medium | low
- PiiEntityTypes
-
リクエストで指定した PII エンティティタイプを一覧表示します。
長さの制限: 最小長は 1 です。最大長は 300 です。
Pattern:
^[A-Z_, ]+
- PreferredLanguage
-
リクエストで指定した優先言語を提供します。
有効な値:
en-US | en-GB | es-US | fr-CA | fr-FR | en-AU | it-IT | de-DE | pt-BR | ja-JP | ko-KR | zh-CN | hi-IN | th-TH
- RequestId
-
ストリーミングリクエストの識別子を提供します。
- SessionId
-
トランスクリプションセッションの識別子を提供します。
長さの制限: 最大長は 36 です。
パターン:
[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}
- ShowSpeakerLabel
-
トランスクリプションでスピーカーパーティショニングが有効になっているかどうかが表示されます。
- VocabularyFilterMethod
-
文字起こしをする際に使用するボキャブラリーフィルタリング方法を提供します。
有効な値:
remove | mask | tag
- VocabularyFilterName
-
リクエストで指定したカスタムボキャブラリーフィルターの名前を指定します。
長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
^[0-9a-zA-Z._-]+
- VocabularyFilterNames
-
リクエストで指定したカスタムボキャブラリーフィルターの名前を提供します。
長さの制限: 最小長は 1 です。最大長は 3000 です。
パターン:
^[a-zA-Z0-9,-._]+
- VocabularyName
-
リクエストで指定したカスタムボキャブラリーの名前を提供します。
長さの制限: 最小長は 1 です。最大長は 200 です。
Pattern:
^[0-9a-zA-Z._-]+
- VocabularyNames
-
リクエストで指定したカスタムボキャブラリの名前を提供します。
長さの制限: 最小長は 1 です。最大長は 3000 です。
パターン:
^[a-zA-Z0-9,-._]+
サービスから以下のデータが JSON 形式で返されます。
- TranscriptResultStream
-
ストリーミングセッションに関する詳細情報を提供します。
型: TranscriptResultStream オブジェクト
エラー
すべてのアクションに共通のエラーについては、「共通エラー」を参照してください。
- BadRequestException
-
StartStreamTranscription
、StartMedicalStreamTranscription
、StartCallAnalyticsStreamTranscription
または操作の 1 つまたは複数の引数が無効でした。たとえば、MediaEncoding
LanguageCode
またはサポートされていない値を使用しました。指定されたパラメータを確認して、リクエストを再度試みてください。HTTP ステータスコード: 400
- ConflictException
-
同じセッション ID で新しいストリーミングが開始されました。現在のストリーミングは終了しました。
HTTP ステータスコード: 409
- InternalFailureException
-
音声処理中に問題が発生しました。Amazon Transcribe が処理を終了しました。
HTTP ステータスコード: 500
- LimitExceededException
-
クライアントが Amazon Transcribe の制限の 1 つ (制限の) を超えています。これは通常、オーディオの長さの制限です。オーディオストリームをより小さなチャンクに分割して、リクエストを再試行してください。
HTTP ステータスコード: 429
- ServiceUnavailableException
-
現在、サービスをご利用いただけません。後でリクエストを試してください。
HTTP ステータスコード: 503
以下の資料も参照してください。
言語固有の AWS SDK のいずれかでこの API を使用する方法の詳細については、以下を参照してください。