本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
轉錄多聲道音訊
如果您的音訊有兩個聲道,您可以使用頻道識別來分別從每個頻道轉錄語音。 Amazon Transcribe目前不支援超過兩個頻道的音訊。
在您的成績單中,頻道會分配標籤ch_0
和ch_1
.
除了標準成績單區段 (transcripts
和items
) 之外,啟用頻道識別的請求還包括一個channel_labels
區段。此區段包含每個語音符號或標點符號,並依頻道分組,以及其相關的頻道標籤、時間戳記和可信度分數。
"channel_labels": { "channels": [ { "channel_label": "ch_0", "items": [ { "channel_label": "ch_0", "start_time": "4.86", "end_time": "5.01", "alternatives": [ { "confidence": "1.0", "content": "I've" } ], "type": "pronunciation" },
...
"channel_label": "ch_1", "items": [ { "channel_label": "ch_1", "start_time": "8.5", "end_time": "8.89", "alternatives": [ { "confidence": "1.0", "content": "Sorry" } ], "type": "pronunciation" },...
"number_of_channels": 2 },
請注意,如果某個頻道上的使用者與不同頻道上的使用者同時說話,則每個頻道的時間戳記會重疊,而個人彼此交談。
若要檢視具有通道識別功能的完整範例記錄,請參閱範例聲道識別輸出 (批次處理)。
在批次轉錄中使用頻道識別
若要識別批次轉錄中的頻道,您可以使用AWS Management ConsoleAWS CLI、或 AWSSDK;請參閱下列範例:
-
在功能窗格中,選擇「轉錄工作」,然後選取「建立工作」(右上角)。這會開啟 [指定工作詳細資訊] 頁面。
-
填寫您要包含在 [指定工作詳細資訊] 頁面上的任何欄位,然後選取 [下一步]。這會帶您前往 [設定工作-選擇性] 頁面。
在「音訊設定」面板中,選取「聲道識別」(在「音訊識別類型」標題下)。
-
選取 [建立工作] 以執行轉錄工作。
此範例使用 start-transcription-jobStartTranscriptionJob
。
aws transcribe start-transcription-job \ --region
us-west-2
\ --transcription-job-namemy-first-transcription-job
\ --media MediaFileUri=s3://DOC-EXAMPLE-BUCKET
/my-input-files
/my-media-file
.flac
\ --output-bucket-nameDOC-EXAMPLE-BUCKET
\ --output-keymy-output-files
/ \ --language-codeen-US
\ --settings ChannelIdentification=true
以下是使用start-transcription-job
aws transcribe start-transcription-job \ --region
us-west-2
\ --cli-input-json file://my-first-transcription-job
.json
該文件 my-first-transcription-job.json 包含以下請求主體。
{ "TranscriptionJobName": "
my-first-transcription-job
", "Media": { "MediaFileUri": "s3://DOC-EXAMPLE-BUCKET
/my-input-files
/my-media-file
.flac
" }, "OutputBucketName": "DOC-EXAMPLE-BUCKET
", "OutputKey": "my-output-files
/", "LanguageCode": "en-US
", "Settings": { "ChannelIdentification": true } }
此範例會使用AWS SDK for Python (Boto3)來識別使用開始轉譯工作
from __future__ import print_function import time import boto3 transcribe = boto3.client('transcribe', '
us-west-2
') job_name = "my-first-transcription-job
" job_uri = "s3://DOC-EXAMPLE-BUCKET
/my-input-files
/my-media-file
.flac
" transcribe.start_transcription_job( TranscriptionJobName = job_name, Media = { 'MediaFileUri': job_uri }, OutputBucketName = 'DOC-EXAMPLE-BUCKET
', OutputKey = 'my-output-files
/', LanguageCode = 'en-US
', Settings = { 'ChannelIdentification':True } ) while True: status = transcribe.get_transcription_job(TranscriptionJobName = job_name) if status['TranscriptionJob']['TranscriptionJobStatus'] in ['COMPLETED', 'FAILED']: break print("Not ready yet...") time.sleep(5) print(status)
在串流轉錄中使用頻道識別
若要識別串流轉錄中的頻道,您可以使用 HTTP/2 或 WebSockets;如需範例,請參閱下列內容:
此範例會建立 HTTP/2 要求,以分隔轉錄輸出中的通道。如需搭配使用 HTTP/2 串流的詳細資訊Amazon Transcribe,請參閱設定 HTTP/2 串流。如需有關特定參數和標題的更多詳細資訊Amazon Transcribe,請參閱StartStreamTranscription。
POST /stream-transcription HTTP/2 host: transcribestreaming.
us-west-2
.amazonaws.com X-Amz-Target: com.amazonaws.transcribe.Transcribe.StartStreamTranscription
Content-Type: application/vnd.amazon.eventstream X-Amz-Content-Sha256:string
X-Amz-Date:20220208
T235959
Z Authorization: AWS4-HMAC-SHA256 Credential=access-key
/20220208
/us-west-2
/transcribe/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date;x-amz-target;x-amz-security-token, Signature=string
x-amzn-transcribe-language-code:en-US
x-amzn-transcribe-media-encoding:flac
x-amzn-transcribe-sample-rate:16000
x-amzn-channel-identification: TRUE transfer-encoding: chunked
您可以在 API 參考中找到參數定義;所有AWS API 作業的共用參數會列在「一般參數」區段中。
此範例會建立預先簽署的 URL,以分隔轉錄輸出中的頻道。已加入分行符號以提高可讀性。如需搭配使用 WebSocket 串流的詳細資訊Amazon Transcribe,請參閱設定 WebSocket 串流。如需參數的詳細資訊,請參閱StartStreamTranscription
。
GET wss://transcribestreaming.
us-west-2
.amazonaws.com:8443/stream-transcription-websocket? &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIAIOSFODNN7EXAMPLE
%2F20220208
%2Fus-west-2
%2Ftranscribe
%2Faws4_request &X-Amz-Date=20220208
T235959
Z &X-Amz-Expires=300
&X-Amz-Security-Token=security-token
&X-Amz-Signature=string
&X-Amz-SignedHeaders=content-type%3Bhost%3Bx-amz-date &language-code=en-US &specialty=PRIMARYCARE
&type=DICTATION
&media-encoding=flac
&sample-rate=16000
&channel-identification=TRUE
您可以在 API 參考中找到參數定義;所有AWS API 作業的共用參數會列在「一般參數」區段中。