Amazon Polly字幕ジェネレーターを使用して、同期されたクローズドキャプションとオーディオを生成します

Amazon Polly、AIで生成されたテキスト読み上げサービスを使用すると、対話型音声ソリューションを自動化および拡張できるため、生産性の向上とコストの削減に役立ちます。

お客様がAmazonPollyの豊富な機能と使いやすさを引き続き使用しているため、特定のテキスト入力に対して同期されたオーディオと字幕またはクローズドキャプションを同時に生成する機能が求められています。 AWSでは、お客様からの要望に応えて継続的に取り組んでいるため、この投稿では、特定のテキストに対してオーディオと字幕を同時に生成する方法の概要を説明します。

この投稿を含め、字幕とキャプションは同じ意味で使用されることがよくありますが、それらの間には微妙な違いがあります。

  • 字幕 –字幕では、画面に表示されるテキスト言語は音声言語とは異なり、重要な音のような非対話用には何も表示されません。 主な目的は、動画の音声言語を話さない視聴者にリーチすることです。
  • キャプション(クローズ/オープン) –キャプションは、音声で話されているダイアログを同じ言語で表示します。 その主な目的は、さまざまな問題のためにエンドユーザーがオーディオを聞くことができない場合のアクセシビリティを向上させることです。 クローズドキャプションはオーディオ/ビデオソースとは異なるファイルの一部であり、ユーザーの裁量でオンとオフを切り替えることができますが、オープンキャプションはビデオファイルの一部であり、ユーザーがオフにすることはできません。

AmazonPollyを使用して字幕またはクローズドキャプション付きのオーディオを生成する利点

次のユースケースを想像してみてください。オンライン学習ポータル用にスライドベースのプレゼンテーションを準備します。 各スライドには、画面上のコンテンツとナレーションが含まれています。 画面上のコンテンツは基本的なアウトラインであり、ナレーションは詳細に説明されています。 面倒で一貫性のない人間の声を録音する代わりに、AmazonPollyを使用してナレーションを生成できます。 Amazon Pollyは、高品質で一貫性のある音声を生成します。 ポストプロダクションの必要はありません。 将来、プレゼンテーションの一部を更新する必要がある場合は、影響を受けるスライドのみを更新する必要があります。 声は元のスライドと一致します。 さらに、Amazon Pollyがオーディオを生成すると、オーディオに合わせて表示されるキャプションが含まれます。 手動での録音が不要なため時間を節約でき、更新が必要な場合は追加の時間を節約できます。 キャプションは学生がコンテンツを消費するのに役立つため、プレゼンテーションはより多くの価値をもたらします。 それはお互いに有利な解決策です。

ソーシャルスペース、体育館、コーヒーショップ、その他の場所での広告など、キャプションの使用例は多数あります。通常、テレビには音声がミュートされ、音楽がバックグラウンドで表示されます。 オンライントレーニングとクラス。 仮想会議; 公開電子発表; ヘッドホンなしで、同乗者の邪魔をせずに通勤中にビデオを見る。 そしてさらにいくつか。

アプリケーションの分野に関係なく、クローズドキャプションは次のことに役立ちます。

  • ユーザー補助 –聴覚障害のある人は、あなたのコンテンツをよりよく消費することができます。
  • リテンション –オンライン学習は、より多くの人間の感覚が関与している場合、eラーニングが把握して保持するのが簡単です。
  • 到達可能性 –コンテンツは、ゲームとニュースの同時視聴など、優先順位が競合する人々、または音声言語とは異なる母国語を持つ人々に到達できます。
  • 検索性 –コンテンツは検索エンジンで検索できます。 ほとんどの検索エンジンでは動画を最適に検索できませんが、検索エンジンはキャプションテキストファイルを使用して、コンテンツをより見つけやすくすることができます。
  • 社会的礼儀 –周囲の環境が原因でオーディオを再生するのが失礼な場合や、環境のノイズが原因でオーディオが聞き取りにくい場合があります。
  • 理解 –話者のアクセント、話者の母国語、または発話速度に関係なく、内容が理解しやすくなります。 同じシーンを繰り返し見ずにメモを取ることもできます。

ソリューションの概要

この投稿で紹介するライブラリは、Amazon Pollyを使用して、入力テキストのサウンドキャプションとクローズドキャプションを生成します。 このライブラリは、テキスト読み上げアプリケーションに簡単に統合できます。 いくつかのオーディオ形式と、業界全体で最も一般的に使用されているVTTファイル形式とSRTファイル形式の両方のキャプションをサポートしています。

この投稿では、 PollyVTT() 構文とオプション、およびPythonの使用方法を示すいくつかの例を提供します SubtitleGeneratorForPolly 特定のテキスト入力に対して同期オーディオファイルと字幕ファイルを同時に生成します。 出力オーディオファイル形式はPCM(wav)、OGG、またはMP3であり、サブタイトルファイル形式はVTTまたはSRTです。 さらに、 SubtitleGeneratorForPolly すべてのAmazonPollyをサポート synthesize_speech パラメータを設定し、豊富なAmazonPolly機能セットに追加します。

  polly-vtt ライブラリとその依存関係は、 GitHubの.

関数をインストールして使用する

使用例を見る前に PollyVTT()、力を与える機能 SubtitleGeneratorForPolly、インストールと構文を見てみましょう。

次のコードを使用してライブラリをインストールします。

pip install

コマンドラインから実行するには、次のコマンドを実行するだけです。 polly-vtt:

Usage: polly-vtt [OPTIONS] BASE_FILENAME VOICE_ID OUTPUT_FORMAT TEXT

次のコードは、オプションを示しています。

--caption-format TEXT 'srt' or 'vtt'
--help Show this message and exit. 

BASE_FILENAME: Base filename for both the audio and caption files 
VOICE_ID: Polly voice to use (Case-sensitive)
OUTPUT_FORMAT: Amazon Polly output format: pcm, mp3, ogg_vorbis 
TEXT: Full text to be digitized 
Caption format: srt or vtt

ここでいくつかの例を見てみましょう。

この例では、XNUMXつの簡単な文のSRTキャプションファイルとともにPCMオーディオファイルを生成します。

$ polly-vtt testfile Joanna pcm "this is a test. this is a second sentence." --caption-format srt 

testfile.wav written successfully.
testfile.wav.srt written successfully.
Total Audio Length: 0:00:03.017500 
# of Sentences: 2

この例は、テキストの段落を入力として使用する方法を示しています。 これにより、WAV、MP3、およびOGGでオーディオファイルが生成され、SRTおよびVTTで字幕が生成されます。 次の例では、指定された入力テキストに対してXNUMXつのファイルを作成します。

  • pcm_testfile.wav
  • pcm_testfile.wav.vtt
  • mp3_testfile.mp3
  • mp3_testfile.mp3.vtt
  • ogg_testfile.ogg
  • ogg_testfile.ogg.srt

次のコードを参照してください。

from polly_vtt import PollyVTT 

text = "News content is shaped by its own unique characteristics. Sentences and paragraphs are usually short and highly in formative because writers have to compress information into a limited space. Depending on the theme, news articles may con tain relevant terminology, place names, abbreviations, people’s names, and quotes. Excellent news writing is clear, precis e, and avoids ambiguity. The writing is dynamic, especially in online articles, because content may get updated multiple times per day as new information becomes available." 

polly_vtt = PollyVTT() 

# pcm with VTT captions 
polly_vtt.generate( 
"pcm_testfile", 
Text=text, 
VoiceId="Joanna", 
OutputFormat="pcm", 
) 

# mp3 with VTT captions 
polly_vtt.generate( 
"mp3_testfile", 
Text=text, 
VoiceId="Joanna", 
OutputFormat="mp3", 
)
 
# ogg with SRT captions 
polly_vtt.generate( 
"ogg_testfile", 
"srt",
Text=text, 
VoiceId="Joanna", 
OutputFormat="ogg_vorbis", 
) 

ただし、ほとんどの場合、テキストを入力ファイルとして渡します。 以下は、このPythonの例であり、前の例と同じ出力です。

from polly_vtt import PollyVTT
import os
import boto3
import json

polly_vtt = PollyVTT()

try:
	f=open("input.txt", "r")
	print("file is opened")
	polly_vtt.generate(
	"pcm_testfile",
	Text=f.read(),
	VoiceId="Joanna",
	OutputFormat="pcm",
	)
	f.close()
except:
	print("error occurred while converting to PCM")
print("end of file")

# mp3 with VTT captions
try:
	f=open("input.txt", "r")
	print("file is opened")
	polly_vtt.generate(
	"mp3_testfile",
	Text=f.read(),
	VoiceId="Joanna",
	OutputFormat="mp3",
	)
	f.close()
except:
	print("error occurred while converting to MP3")
print("end of file")

# ogg with SRT captions
try:
	f=open("input.txt", "r")
	print("file is opened")
	polly_vtt.generate(
	"ogg_testfile",
	"srt",
	Text=f.read(),
	VoiceId="Joanna",
	OutputFormat="ogg_vorbis",
	)
	f.close()
except:
	print("error occurred while converting to OGG")
print("end of file")

以下は、クローズドキャプション付きのAmazonPollyの使用に関するAWS内部トレーニングチームからの紹介文です。

次のビデオは、AWSの内部トレーニングチームがどのように使用するかについての短いデモを提供します PollyVTT():

まとめ

この投稿では、特定のテキストに対してオーディオと字幕を同時に生成する方法を共有しました。 The PollyVTT() 機能と SubtitleGeneratorForPolly 効率的かつ効果的な方法で字幕の一般的な要件に対処します。 Amazon Pollyチームは、複雑な顧客の要件に対して簡素化されたソリューションを発明し、提供し続けています。

Amazon Pollyに関するその他のチュートリアルと情報については、 AWS機械学習ブログ.


著者について

Generate synchronized closed captions and audio using the Amazon Polly subtitle generator PlatoBlockchain Data Intelligence. Vertical Search. Ai.アビシェク・ソニ AWSのパートナーソリューションアーキテクトです。 彼はお客様と協力して、AWSでのワークロードの最良の結果に関する技術的なガイダンスを提供します。

Generate synchronized closed captions and audio using the Amazon Polly subtitle generator PlatoBlockchain Data Intelligence. Vertical Search. Ai. ダン マッキー オーディオ、ビデオ、およびコーヒーを使用して、コンテンツを対象を絞ったモジュール式の構造化されたコースに抽出します。 アマゾンウェブサービスのNetSecドメインのカリキュラム開発者プロジェクトマネージャーとしての彼の役割では、データセンターネットワーキングでの経験を活用して、主題の専門家がアイデアを実現するのを支援しています。

Generate synchronized closed captions and audio using the Amazon Polly subtitle generator PlatoBlockchain Data Intelligence. Vertical Search. Ai.オーランドカラム アマゾンウェブサービスのテクニカルカリキュラム開発者です。つまり、彼はクールな新しいテクノロジーを試して、それについて話し合うことができます。 時折、彼は仕事を簡単にするためにそれらのクールなテクノロジーを使用します。

タイムスタンプ:

より多くの AWS機械学習