選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

建立影片字幕

焦點模式
建立影片字幕 - Amazon Transcribe

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon Transcribe 支援 WebVTT (*.vtt) 和 SubRip (*.srt) 輸出,以用作影片字幕。您可以在設定批次影片轉錄作業時,選擇一或兩種檔案類型。使用字幕功能時,系統會產生您選擇的字幕檔案和一般的文字記錄檔案 (包含其他資訊)。字幕和轉錄檔案輸出到相同的目的地。

會在朗讀文字的同時顯示字幕,並維持可見,直到自然暫停或發言者完成通話為止。請注意,如果您在轉錄請求中啟用字幕,且您的音訊不包含語音,則不會建立字幕檔案。

重要

Amazon Transcribe 使用 的預設開始索引0作為字幕輸出,這與更廣泛使用的 值不同1。如果您需要 的開始索引1,您可以使用 OutputStartIndex 參數在 AWS Management Console 或 API 請求中指定此索引。

使用不正確的開始索引可能會導致與其他服務的相容性錯誤,因此在建立字幕前,請務必確認您需要的開始索引。如果您不確定要使用的值,我們建議您選擇 1。請參閱 Subtitles,了解詳細資訊。

支援字幕的功能:

  • 內容修訂 — 任何修訂後的內容會在字幕和一般文字記錄輸出檔案中顯示為「PII」。音訊不會改變。

  • 詞彙篩選器 — 字幕檔案是從轉錄檔案產生,因此您在標準轉錄輸出中篩選的任何單字也會在字幕篩選。篩選後的內容會在您的文字記錄和字幕檔案中顯示為空格或 ***。音訊不會改變。

  • 發言者分段標記 — 如果指定的字幕區段有多個發言者,則使用破折號以區分每個發言者。這同時適用於 WebVTT 和 SubRip 格式;例如:

    • --發言者 1 說出的文字

    • --發言者 2 說出的文字

字幕檔案會存放在與轉錄輸出相同的 Amazon S3 位置。

如需建立字幕的影片逐步說明,請參閱:

產生字幕檔案

您可以使用 AWS Management ConsoleAWS CLIAWS SDK 建立字幕檔案;請參閱下列範例:

  1. 登入 AWS Management Console

  2. 在導覽窗格中,選擇轉錄作業,然後選擇建立作業(右上角)。這會開啟指定作業詳細資訊‭頁面。字幕選項位於輸出資料面板。

  3. 選擇字幕檔案所需的格式,然後為開始索引選擇值。請注意, Amazon Transcribe 預設值為 0,但使用範圍1更為廣泛。如果您不確定要使用的值,我們建議您選擇 1,因為這樣可能會改善與其他服務的相容性。

    Amazon Transcribe 主控台螢幕擷取畫面:「指定任務詳細資訊」頁面上的「輸出資料」窗格。
  4. 填入您要包含在指定作業詳細資訊‭頁面上的任何其他欄位,然後選擇下一步。這會引導您前往設定工作 - 選擇性頁面

  5. 選擇建立作業以執行轉錄作業。

  1. 登入 AWS Management Console

  2. 在導覽窗格中,選擇轉錄作業,然後選擇建立作業(右上角)。這會開啟指定作業詳細資訊‭頁面。字幕選項位於輸出資料面板。

  3. 選擇字幕檔案所需的格式,然後為開始索引選擇值。請注意, Amazon Transcribe 預設值為 0,但使用範圍1更為廣泛。如果您不確定要使用的值,我們建議您選擇 1,因為這樣可能會改善與其他服務的相容性。

    Amazon Transcribe 主控台螢幕擷取畫面:「指定任務詳細資訊」頁面上的「輸出資料」窗格。
  4. 填入您要包含在指定作業詳細資訊‭頁面上的任何其他欄位,然後選擇下一步。這會引導您前往設定工作 - 選擇性頁面

  5. 選擇建立作業以執行轉錄作業。

此範例使用 start-transcription-job 指令和 Subtitles 參數。如需詳細資訊,請參閱 StartTranscriptionJobSubtitles

aws transcribe start-transcription-job \ --region us-west-2 \ --transcription-job-name my-first-transcription-job \ --media MediaFileUri=s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac \ --output-bucket-name amzn-s3-demo-bucket \ --output-key my-output-files/ \ --language-code en-US \ --subtitles Formats=vtt,srt,OutputStartIndex=1

這是使用 start-transcription-job 指令的另一個範例,以及新增字幕到工作的請求內文。

aws transcribe start-transcription-job \ --region us-west-2 \ --cli-input-json file://my-first-subtitle-job.json

檔案 my-first-subtitle-job.json 包含以下請求內文。

{ "TranscriptionJobName": "my-first-transcription-job", "Media": { "MediaFileUri": "s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac" }, "OutputBucketName": "amzn-s3-demo-bucket", "OutputKey": "my-output-files/", "LanguageCode": "en-US", "Subtitles": { "Formats": [ "vtt","srt" ], "OutputStartIndex": 1 } }

此範例使用 start-transcription-job 指令和 Subtitles 參數。如需詳細資訊,請參閱 StartTranscriptionJobSubtitles

aws transcribe start-transcription-job \ --region us-west-2 \ --transcription-job-name my-first-transcription-job \ --media MediaFileUri=s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac \ --output-bucket-name amzn-s3-demo-bucket \ --output-key my-output-files/ \ --language-code en-US \ --subtitles Formats=vtt,srt,OutputStartIndex=1

這是使用 start-transcription-job 指令的另一個範例,以及新增字幕到工作的請求內文。

aws transcribe start-transcription-job \ --region us-west-2 \ --cli-input-json file://my-first-subtitle-job.json

檔案 my-first-subtitle-job.json 包含以下請求內文。

{ "TranscriptionJobName": "my-first-transcription-job", "Media": { "MediaFileUri": "s3://amzn-s3-demo-bucket/my-input-files/my-media-file.flac" }, "OutputBucketName": "amzn-s3-demo-bucket", "OutputKey": "my-output-files/", "LanguageCode": "en-US", "Subtitles": { "Formats": [ "vtt","srt" ], "OutputStartIndex": 1 } }

此範例使用 適用於 Python (Boto3) 的 AWS SDK ,使用 start_transcription_job 方法的Subtitles引數來新增字幕。如需詳細資訊,請參閱 StartTranscriptionJobSubtitles

如需使用 AWS SDKs 的其他範例,包括功能特定、案例和跨服務範例,請參閱 使用 AWS SDKs Amazon Transcribe 程式碼範例章節。

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://amzn-s3-demo-bucket/my-input-files/my-media-file.flac" transcribe.start_transcription_job( TranscriptionJobName = job_name, Media = { 'MediaFileUri': job_uri }, OutputBucketName = 'amzn-s3-demo-bucket', OutputKey = 'my-output-files/', LanguageCode = 'en-US', Subtitles = { 'Formats': [ 'vtt','srt' ], 'OutputStartIndex': 1 } ) 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)

此範例使用 適用於 Python (Boto3) 的 AWS SDK ,使用 start_transcription_job 方法的Subtitles引數來新增字幕。如需詳細資訊,請參閱 StartTranscriptionJobSubtitles

如需使用 AWS SDKs 的其他範例,包括功能特定、案例和跨服務範例,請參閱 使用 AWS SDKs Amazon Transcribe 程式碼範例章節。

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://amzn-s3-demo-bucket/my-input-files/my-media-file.flac" transcribe.start_transcription_job( TranscriptionJobName = job_name, Media = { 'MediaFileUri': job_uri }, OutputBucketName = 'amzn-s3-demo-bucket', OutputKey = 'my-output-files/', LanguageCode = 'en-US', Subtitles = { 'Formats': [ 'vtt','srt' ], 'OutputStartIndex': 1 } ) 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)

在本頁面

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。