Amazon Web Services ブログ
SyncWords と AWS Elemental Media Services によるライブキャプションの設定
本稿は、2025年1月17日に AWS Media & Entertainment Blog で公開された “Configure live captions with SyncWords and AWS Elemental Media Services” を翻訳したものです。
コンテンツクリエーター、プロデューサー、または放送者にとって、ライブストリーミング用に迅速かつ正確な文字起こし、吹き替え、または翻訳を提供することは困難な場合があります。しかし、必要な最先端のサービスを構成して、時間とお金の両方を節約する方法について説明します。
はじめに
世界中の消費者は、外国語で作成されたコンテンツを含め、これまで以上に多くのコンテンツにアクセスできます。消費者の中には、もともと難聴者向けに設計されたキャプション/字幕 (以下、キャプション) や、視力の弱い人向けの音声解説などのアクセシビリティサービスに依存している人もいます。
これ以外にも、キャプションは聴覚や視力に関係なく、さまざまな環境でも役立ちます (たとえば、音声が適さない公共の場など) 。また、より多くのコンテンツにこのようなアクセシビリティサービスを提供するよう放送局に義務付ける法律も制定されています。
キャプションや外国語の翻訳を提供するビデオオンデマンド (VOD) コンテンツには、多くのワークフローとソリューションがあります。今では、手間をかけずにライブストリーミングで同じことを行うための新しい簡単な方法もあります。Amazon Web Services (AWS) Elemental Servicesとライブキャプションサービス (SyncWords) を設定して、AI が生成する自動ライブキャプションと吹き替え (複数言語への翻訳を含む) を有効にする方法を説明します。
コンテンツ制作者、プロバイダー、放送局がライブ放送で直面する課題は、カメラキャプチャから画面表示までの時間が非常に速いため、正確でタイムリーなキャプションを生成することです。
現在、これを実現する1つの方法は、トランスクリプターに音声を聞いてもらい、話されていることをタイプして、それをメディアワークフローに反映させることです。これにはコストがかかり、人為的ミスが発生しやすく、テキストと音声の同期が困難になる可能性があります。
ライブ放送中、キャプションの表示は通常、ビデオ/オーディオよりも4〜8秒遅れます。一方、単語や文章の一部のスペルを間違えたり、完全に見落とされたりすることがあります。これらの問題により、エンドユーザーエクスペリエンスが低下します。例としては、プレゼンターがあるストーリーから別のストーリーにすばやく移動するライブニュースがあります。アクセシビリティサービス (キャプションなど) が数秒遅れると、動画が次のニュース記事に移ってから数秒後に、記事に関するテキストが表示されることがあります。
アクセシビリティサービスのユーザーに優れたエクスペリエンスを提供するには、タイミングと正確さが重要な要素です。これは、外出先や騒がしい環境でキャプションや字幕付きのライブストリーミングを視聴するモバイル視聴者に特に当てはまります。
タイミングと正確性の課題に加えて、放送局はライブキャプションを放送に挿入する際に大きなハードルに直面することがよくあります。多くの場合、ビデオ投稿段階の上流には専用のハードウェアが必要です。また、ソフトウェアベースのエンコーダーを使用して、EIA-608、テレテキスト、digital video broadcasting (DVB) 字幕などの特定のTVプロトコルにしたがってトランスポートストリームにユーザーデータを挿入する場合もあります。
ソリューション
しかし、解決策はあります。AWS Elemental MediaLive と AWS Elemental MediaPackage と SyncWords では、正確で同期された翻訳済みのキャプションを実現するための効率的なアプローチが提供されています。HTTP live streaming (HLS) のマニフェストの構造を活用することで、放送局は AI 機能をライブストリームにシームレスに統合できます。これにより、面倒なハードウェアが不要になり、プロセス全体が合理化されます。
AWS Elemental Link (エンコーディングデバイス) 、AWS Elemental MediaLive、SyncWords の AI キャプションサービス、AWS Elemental MediaPackage を使用して、ライブキャプション用のクラウド中心のワークフローを設定する方法について説明します。
前提条件
このワークフローでは MediaLive サービスと MediaPackage サービスを使用します。AWSコンソールを使用してこれらのサービスのセットアップに精通していることを前提としています。そうでない場合は、「AWS Elemental MediaLive の開始方法」および「AWS Elemental MediaPackage の開始方法」を参照してください。
また、SyncWords のアカウントを持っていることも確認する必要があります。SyncWords に直接お問い合わせいただくか、AWS マーケットプレイスで購入してください。
ワークフローの概要では、AWS Elemental Linkを示しています。これは、ビデオの暗号化とキーローテーションを備えた、高い弾力性と組み込みのセキュリティを備えたビデオの転送に最適な小型のハードウェアデバイスエンコーダーです。この例では、コントリビューションのソースフィードが Link に接続され、ソースストリームがエンコードされ、イーサネット接続を介して MediaLive に直接プッシュされます。Link の使用は必須ではありませんが、ソースをMediaLiveの入力として表示するためのプラグアンドプレイ機能を備えているため、使用するには最適なユニットです。
MediaLive で受け付けられるその他の入力は、MediaLive ユーザーガイドの「セットアップ:入力の作成」セクションにあります。
図 1: ワークフローの概要
設定
このサンプルワークフローは、MediaLive、SyncWords、および MediaPackage サービスで構成されています。AWS マネジメントコンソールにログインし、AWS Elemental MediaPackageにアクセスして開始してください。
ステップ 1: まず MediaPackage でチャネルを作成します (ここでは v2 を使用) 。
- チャネルグループを作成します。
- 次に、チャネルを作成します。MediaPackage v2 チャネルを作成するときは、SyncWords からのストリームアクセスを許可するカスタムチャネルポリシーを作成する必要があることに注意してください。Publishing HLS streams from SyncWords Live to your AWS MediaPackage v2 Channel のポリシーを定義する方法について説明します。
- チャネル内で、[ Create endpoint ] ボタンをクリックして HLS Origin エンドポイントを作成します。これは、SyncWords からストリームがプッシュされる先のエンドポイントです。
- エンドポイントの[ Settings ]ページに、ステップ 2 で SyncWords HLS 出力を設定するために必要な MediaPackage HLS インジェストエンドポイント URL が表示されます。それを書き留めておいてください。
- HLS Origin エンドポイントの[ Segment settings ] で [ Use audio rendition group ] ボックスが選択されていることを確認します。
注: MediaPackage v1 で設定する場合、カスタムチャネルポリシーを設定しないため異なります。代わりに、ステップ 2 で SyncWords HLS 出力を設定するときに、MediaPackage v1 HLS インジェストエンドポイントの URL、ユーザー名、およびパスワードを使用してください。
ステップ 2: SyncWords チャネルを設定します。
-
- SyncWords のアカウントにログインします。
- [ Services ] または [ Events ] に移動し、[ Create Service ] または [ Schedule an Event ] をクリックします。ここでは、図 2 に示すように、サービス設定を使用しています。
- Service Nameを入力し、[ Create Service ] をクリックします。
図 2: SyncWords の [ Create Service ] 設定のスクリーンショット
-
- [ HLS Push」タイプとして、MediaLive が HLS をストリーミングするための入力エンドポイントを作成します。これにより、SyncWords サービスエンドポイントにアクセスするための一意の URL エンドポイント、ユーザー名、およびパスワードが自動的に生成されます。
- 注:ステップ 3 で MediaLive を設定するときは、URL、ユーザー名、およびパスワードの設定が必要になります。
MediaLiveからこのエンドポイントにストリーミングすると、接続ステータスが [ Not Connected ] から [ Connected ] に変わります。
図 3: SyncWords の [ Input Media ] 設定のスクリーンショット
-
- [ Transcript ] セクション (図4) で、Transcript Type を [ Automated (AI) ] に設定します。次に、ソースオーディオの認識に使用する Speech Engine とソース言語を選択します。必要に応じて、音声エンジンが問題を起こす可能性のあるカスタム用語 (名前や略語など) には、Add Dictionary を使います。
- [ More Options ] で追加の設定を選択します。注:オプションは、選択した Speech Engine によって異なる場合があります。
図 4: SyncWords の [ Transcript ] 設定のスクリーンショット
-
- [ Translations ] セクション (図5) に、翻訳したい言語を追加します。これにより、エンドユーザークライアントにキャプションとして表示される出力言語が定義されます。MT Engine のドロップダウンリストから、希望する翻訳エンジンを選択します。
- 吹き替えオーディオトラックを作成したい言語の [ Audio ] ボックスを選択し、必要な吹き替え音声設定 (方言、性別、話者、話率) を選択します。
- 吹き替えトラックとミックスするオリジナル音声の音量を 0~50 の間でパーセンテージで設定します。
- 自動翻訳の精度を上げるには、カスタム用語集を追加し、ソース言語、ターゲット言語、カスタム用語集の各フィールドに入力します。翻訳が難しい用語や、ターゲット言語に翻訳されたバージョンがない用語には、用語集が必要になることがあります。用語集プリセットも作成できます。その方法については、「 How to Create a Translation Glossary 」で説明されています。
図 5: SyncWords の [ Translations ] 設定のスクリーンショット
-
- [ Outputs ] セクションで HLS 出力を作成します (図 6)。ドロップダウンから [ AWS MediaPackage ] と[ v2 ] を選択します。
- MediaPackage v2 チャネルの [ Settings ] ページから HLS インジェストエンドポイント URL をコピーします (ステップ 1 を参照) 。
- バッファサイズを設定します。注:翻訳を含むストリームでは、言語によって単語の順序が異なるため (ドイツ語では動詞が文の末尾にあることが多い) 、翻訳を処理するには少なくとも一文が必要です。
図 6: SyncWords の [ HLS Output ] 設定のスクリーンショット
- [ Save ] をクリックします (ボタンが [ Saved ] に変わります) 。必須の設定が欠けている場合は、[ Some data is invalid. ] という警告が表示され、感嘆符の付いた赤い円がその設定場所を示します。スクロールして探す必要があるかもしれません。
- これで SyncWords サービスの設定が完了し、開始する準備が整いました。
ステップ 3: HLS を SyncWords チャネルにプッシュするために MediaLive チャネルを設定します。
-
- MediaLive の入力とチャネルを作成します。
- HLS 出力グループを追加し、[ Credentials (optional) ] セクションで [ Create parameter ] を選択します。URL、ユーザー名、パスワードにはステップ 2 で SyncWords が自動生成した設定値を使用します。 パラメータに名前を付けます。MediaLive チャネルが作成されると、このパラメータは AWS Systems Manager パラメータストアに自動的に保存されます。MediaLive チャネルをステップ2で作成したSyncWordsチャネルのソースとして受け入れるには、認証情報が必要です。
図 7: AWS Elemental MediaLive の [ HLS output group ] 設定のスクリーンショット
- MediaLive チャネルで HLS グループと HLS 出力のセットアップを続けます。設定が完了したら、 Create channel ボタンをクリックします。
ステップ 4: サービスの開始と監視:
- MediaLive チャネルを起動し、SyncWords サービスの設定で [ Start Service ] をクリックします。MediaLiveチャネルの状態が [ Running ] に変わり、SyncWords GUI の接続ステータスが [ Connected ] になるのを待ちます。注:起動フェーズには数分かかる場合があります。
- MediaPackage Origin エンドポイントセクションの [ Preview ] リンクをクリックして、出力を監視してください。チャネルが実行されると、字幕と音声言語のリストが表示されます。お好みの再生クライアント (通常は再生クライアントの右下隅にあります) でキャプションと吹き替え言語トラックを選択してください。
注:SyncWords ライブワークフローでスタンドアロン字幕ファイル (SRT または VTT) が必要な場合は、ライブサービスがアーカイブされると、SyncWords Liveダッシュボードで直接利用できるようになります。
クリーンアップ
不必要なリソースの使用とコストを避けるために、使用していない MediaLive と SyncWords のチャネルを停止または削除します。
まとめ
字幕やキャプションのようなアクセシビリティサービスは、より多く、より質の高いものが求められています。AWS Elemental Media Services と SyncWords の AI キャプションおよび翻訳サービスを使用して、ライブキャプションや吹き替えオーディオトラックを作成することで、コンテンツを充実させることができます。
実際にお試しいただきライブ放送のクラウド環境における文字起こし、翻訳、吹き替えの効率的な実装を確認ください。 また、キャプションと翻訳の精度の高さ、エンドユーザーへのタイムリーな表示にもご注目ください。
AWS の担当者にご連絡いただければ、当社がどのようにお客様のビジネスを加速させることができるかご説明致します。
参考リンク
Multi-language automatic captions and audio dubbing made possible for live events with AWS Media Services and SyncWords
Amazon Cloudfront – Content Delivery Network (CDN)
AWS Elemental Live – Live streaming encoder
Automated Captions and Translations Using AWS Elemental
AWS Media Services
AWS Media & Entertainment Blog (日本語)
AWS Media & Entertainment Blog (英語)
AWS のメディアチームの問い合わせ先:awsmedia@amazon.co.jp
※ 毎月のメルマガをはじめました。最新のニュースやイベント情報を発信していきます。購読希望は上記宛先にご連絡ください。
翻訳はソリューションアーキテクトの金目, 井村が担当しました。原文はこちらをご覧ください。