目次

はじめに

こんにちは、FANTECH本部の古谷です。
今回は、「LDH動画配信サービス「CL」、生成AIを使用した字幕・翻訳機能を提供開始」に伴い、CLにおける多言語対応についてご紹介します。

CLでの取り組み

CLでは、世界中のユーザへ最高のエンターテイメントを届けるため、多言語対応に力を入れています。
CLが提供する配信は以下の3種類あり、それぞれ配信の特性に応じて多言語化の課題があります。

  • ライブキャス配信
  • オンデマンド配信
  • ライブ配信

ライブキャス配信は、複数のアーティストによるライブ配信で低遅延、かつリアルタイムで配信を楽しむことができます。
この特性に合わせ、アーティストの発言を話者分離した上でリアルタイムに7ヶ国語に翻訳しユーザへ伝搬する仕組みを取り入れています。
この仕組みについては、以下の記事をご覧ください。

オンデマンド配信は、事前に配信データを入稿する特性上、7ヶ国分の字幕を事前に制作し提供していました。字幕の制作には時間・費用ともにコストがかかるため、ユーザへ配信を提供するまでの障壁となっていました。

今回は、入稿動画から自動的に7ヶ国分の字幕を生成する仕組みを導入し、字幕の制作フローを改善した事例を紹介します。

字幕の仕組み

字幕の仕組み

 

CLのオンデマンド配信は、字幕にWeb Video Text Tracks Format (WebVTT) 形式を採用しています。 動画に合わせて字幕ファイル(WebVTT)を制作・入稿し、動画の配信時にHLSのプレイリストにインジェクトする方式でユーザへ字幕を提供しています。

字幕ファイルは制作担当者によって制作されるため、適切な表現・用語・言語間のニュアンス等の補正が行われた精度の高い字幕を提供できます。 その反面、7ヶ国語の字幕を用意するためには、それなりの時間・費用がかかることになります。

CLはサービス開始以降、数千もの動画コンテンツを提供しており、今後も今まで以上に動画コンテンツの拡充を予定しています。 世界中のユーザへ、少しでも早く最高のエンターテイメントを届けるため字幕の自動生成の導入を行いました。

字幕の自動生成

 

自動字幕の仕組み

入稿した動画から多言語の字幕を自動的に生成する仕組みです。
生成物の精度によっては修正したいケースも想定し、各タスクの生成物は手動による編集・差し替え・再生成を可能な設計にしています。

音声抽出

AWS MediaConvertを利用して、入稿動画を音声ファイル(WAV)へ変換します。
CLではオンデマンド配信用の動画コンテンツ生成でも利用しているため、入出力ファイルの保管・転送効率・コストなども踏まえ選定しました。

音声ファイルへ変換は、文字起こしサービスにおける、入力データ・サイズ制限を回避する目的があります。 また、将来的に別の目的で音声処理をすることを想定し、汎用性と品質の観点でWAV形式を採用しています。

文字起こし

AWS Transcribeを利用して、音声ファイルから文字を起こします。
AWS Transcribeの特徴としては、文字起こしだけではなく、WebVTT形式の字幕ファイルも同時に生成することができます。
継続的にトレーニングされているフルマネージド音声認識モデル以外に、ドメイン固有の語彙を理解するカスタムモデルを利用することが可能で精度向上も可能であるため選定しました。

WebVTTの生成まで行えることで、字幕の表示間隔やテキストの途切れなど考慮すべき部分が解決できるため実装を簡潔にできます。
文字起こしによって生成した字幕ファイルは、後続の翻訳処理の精度へ影響するため、入稿担当者によって管理画面からダウンロードして修正可能な仕組みにしています。
これにより、自動生成による効率化とともに、手動補正による精度の維持も可能な構成にしています。

翻訳

Google Cloud Translation を利用して、文字起こしにて生成した字幕ファイルを多言語に翻訳します。
CLでは、他機能の翻訳でGoogle Cloud Translation を利用している、かつバックエンドの翻訳実行環境がGCPであることから、翻訳精度の統一・運用の簡素化の観点で選定しています。

文字起こし時点で、会話をベースに一連のテキストが字幕化されているため、翻訳もその一連のテキストをベースに翻訳をかけることができテキストの途切れの考慮が減る分、実装を簡潔にできます。

今後について

自動生成の導入によって字幕作成の効率化・コスト削減を達成することができました。
しかし、精度に関する部分は課題感があり、今後も新たな技術や生成AIサービスの導入を検討していきたいと思います。
多種多様な生成AIサービスがある中で、要件や運用に合うものを選定することも大切ですが、変化に応じて部分的に仕組みを差し替えられるような柔軟な設計や実装が重要になってくるかと思います。

最後まで読んでいただきありがとうございました。