Hasilkan teks tertutup dan audio yang disinkronkan menggunakan generator subtitle Amazon Polly

Amazon Polly, layanan text-to-speech yang dihasilkan AI, memungkinkan Anda untuk mengotomatisasi dan menskalakan solusi suara interaktif Anda, membantu meningkatkan produktivitas dan mengurangi biaya.

Karena pelanggan kami terus menggunakan Amazon Polly untuk rangkaian fitur yang kaya dan kemudahan penggunaan, kami telah mengamati permintaan akan kemampuan untuk secara bersamaan menghasilkan audio dan subtitel yang disinkronkan atau teks tertutup untuk input teks tertentu. Di AWS, kami terus bekerja mundur dari permintaan pelanggan kami, jadi dalam posting ini, kami menguraikan metode untuk menghasilkan audio dan subtitle secara bersamaan untuk teks tertentu.

Meskipun subtitle dan teks sering digunakan secara bergantian, termasuk dalam posting ini, ada perbedaan halus di antara mereka:

  • Teks โ€“ Dalam subtitle, bahasa teks yang ditampilkan di layar berbeda dari bahasa audio dan tidak menampilkan apa pun untuk non-dialog seperti suara yang signifikan. Tujuan utamanya adalah untuk menjangkau pemirsa yang tidak berbicara bahasa audio dalam video.
  • Keterangan (tertutup/terbuka) โ€“ Teks menampilkan dialog yang diucapkan dalam audio dalam bahasa yang sama. Tujuan utamanya adalah untuk meningkatkan aksesibilitas jika audio tidak dapat didengar oleh konsumen akhir karena berbagai masalah. Teks tertutup adalah bagian dari file yang berbeda dari sumber audio/video dan dapat dimatikan dan dihidupkan atas kebijaksanaan pengguna, sedangkan teks terbuka adalah bagian dari file video dan tidak dapat dimatikan oleh pengguna.

Manfaat menggunakan Amazon Polly untuk menghasilkan audio dengan subtitel atau teks tertutup

Bayangkan kasus penggunaan berikut: Anda menyiapkan presentasi berbasis slide untuk portal pembelajaran online. Setiap slide menyertakan konten dan narasi di layar. Konten di layar adalah garis besar dasar, dan narasinya masuk ke detail. Alih-alih merekam suara manusia, yang bisa merepotkan dan tidak konsisten, Anda dapat menggunakan Amazon Polly untuk menghasilkan narasi. Amazon Polly menghasilkan suara berkualitas tinggi dan konsisten. Tidak perlu pasca produksi. Di masa mendatang, jika Anda perlu memperbarui sebagian presentasi, Anda hanya perlu memperbarui slide yang terpengaruh. Suaranya cocok dengan slide aslinya. Selain itu, saat Amazon Polly menghasilkan audio Anda, teks disertakan yang muncul bersamaan dengan audio. Anda menghemat waktu karena tidak ada perekaman manual yang terlibat, dan menghemat waktu tambahan saat pembaruan diperlukan. Presentasi Anda juga memberikan nilai lebih karena teks membantu siswa mengonsumsi konten. Ini adalah solusi win-win-win.

Ada banyak kasus penggunaan untuk teks, seperti iklan di ruang sosial, gimnasium, kedai kopi, dan tempat lain di mana biasanya ada sesuatu di televisi dengan audio yang dimatikan dan musik di latar belakang; pelatihan dan kelas online; pertemuan virtual; pengumuman elektronik publik; menonton video saat bepergian tanpa headphone dan tanpa mengganggu penumpang lain; dan beberapa lagi.

Terlepas dari bidang aplikasinya, teks tertutup dapat membantu hal-hal berikut:

  • Aksesibilitas โ€“ Orang dengan gangguan pendengaran dapat mengonsumsi konten Anda dengan lebih baik.
  • Penyimpanan โ€“ Pembelajaran online lebih mudah dipahami dan dipertahankan oleh e-peserta didik ketika lebih banyak indera manusia terlibat.
  • Jangkauan โ€“ Konten Anda dapat menjangkau orang-orang yang memiliki prioritas bersaing, seperti bermain game dan menonton berita secara bersamaan, atau orang-orang yang memiliki bahasa ibu yang berbeda dari bahasa audio.
  • Searchability โ€“ Konten dapat dicari oleh mesin pencari. Sementara video tidak dapat dicari secara optimal oleh sebagian besar mesin pencari, mesin pencari dapat menggunakan file teks teks dan membuat konten Anda lebih mudah ditemukan.
  • Kesopanan sosial โ€“ Terkadang memutar audio mungkin tidak sopan karena lingkungan Anda, atau audio mungkin sulit didengar karena kebisingan lingkungan Anda.
  • Pemahaman โ€“ Konten lebih mudah dipahami terlepas dari aksen pembicara, bahasa asli pembicara, atau kecepatan bicara. Anda juga dapat membuat catatan tanpa berulang kali menonton adegan yang sama.

Ikhtisar solusi

Pustaka yang disajikan dalam posting ini menggunakan Amazon Polly untuk menghasilkan suara dan teks tertutup untuk teks input. Anda dapat dengan mudah mengintegrasikan perpustakaan ini dalam aplikasi text-to-speech Anda. Ini mendukung beberapa format audio, dan teks dalam format file VTT dan SRT, yang paling umum digunakan di seluruh industri.

Dalam posting ini, kami fokus pada PollyVTT() sintaks dan opsi, dan menawarkan beberapa contoh yang menunjukkan cara menggunakan Python SubtitleGeneratorForPolly untuk secara bersamaan menghasilkan file audio dan subtitle sinkron untuk input teks yang diberikan. Format file audio output dapat berupa PCM(wav), OGG, atau MP3, dan format file subtitle dapat berupa VTT atau SRT. Lebih-lebih lagi, SubtitleGeneratorForPolly mendukung semua Amazon Polly synthesize_speech parameter dan menambah rangkaian fitur Amazon Polly yang kaya.

Grafik polly-vtt perpustakaan dan dependensinya tersedia di GitHub.

Instal dan gunakan fungsi

Sebelum kita melihat beberapa contoh penggunaan PollyVTT(), fungsi yang memberi kekuatan SubtitleGeneratorForPolly, mari kita lihat instalasi dan sintaksnya.

Instal perpustakaan menggunakan kode berikut:

pip install

Untuk menjalankan dari baris perintah, Anda cukup menjalankan polly-vtt:

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

Kode berikut menunjukkan opsi Anda:

--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

Mari kita lihat beberapa contoh sekarang.

Contoh 1

Contoh ini menghasilkan file audio PCM bersama dengan file teks SRT untuk dua kalimat sederhana:

$ 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

Contoh 2

Contoh ini menunjukkan cara menggunakan paragraf teks sebagai input. Ini menghasilkan file audio dalam WAV, MP3, dan OGG, dan subtitle dalam SRT dan VTT. Contoh berikut membuat enam file untuk teks input yang diberikan:

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

Lihat kode berikut:

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", 
) 

Contoh 3

Namun, dalam kebanyakan kasus, Anda ingin meneruskan teks sebagai file input. Berikut ini adalah contoh Python, dengan output yang sama seperti contoh sebelumnya:

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")

Berikut ini adalah postingan testimonial dari tim pelatihan internal AWS tentang penggunaan Amazon Polly dengan teks tertutup:

Video berikut menawarkan demo singkat tentang cara tim pelatihan internal di AWS menggunakan PollyVTT():

Kesimpulan

Dalam posting ini, kami membagikan metode untuk menghasilkan audio dan subtitle secara bersamaan untuk teks tertentu. Itu PollyVTT() fungsi dan SubtitleGeneratorForPolly mengatasi persyaratan umum untuk subtitle dengan cara yang efisien dan efektif. Tim Amazon Polly terus menciptakan dan menawarkan solusi sederhana untuk kebutuhan pelanggan yang kompleks.

Untuk tutorial dan informasi lebih lanjut tentang Amazon Polly, lihat Blog Pembelajaran Mesin AWS.


Tentang Penulis

Hasilkan teks tertulis dan audio yang disinkronkan menggunakan generator subtitle Amazon Polly, PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Abhisek Soni adalah Arsitek Solusi Mitra di AWS. Dia bekerja dengan pelanggan untuk memberikan panduan teknis untuk hasil terbaik dari beban kerja di AWS.

Hasilkan teks tertulis dan audio yang disinkronkan menggunakan generator subtitle Amazon Polly, PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai. Dan McKee menggunakan audio, video, dan kopi untuk menyaring konten menjadi kursus yang ditargetkan, modular, dan terstruktur. Dalam perannya sebagai Manajer Proyek Pengembang Kurikulum untuk Domain NetSec di Amazon Web Services, dia memanfaatkan pengalamannya di Jaringan Pusat Data untuk membantu pakar materi pelajaran mewujudkan ide.

Hasilkan teks tertulis dan audio yang disinkronkan menggunakan generator subtitle Amazon Polly, PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Orlando Karam adalah Pengembang Kurikulum Teknis di Amazon Web Services, yang berarti dia dapat bermain dengan teknologi baru yang keren dan kemudian membicarakannya. Terkadang, ia juga menggunakan teknologi keren tersebut untuk mempermudah pekerjaannya.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS