Bagaimana Menggunakan Pengenalan Pidato YouTube Google tanpa mengunggah video ke YouTube?

15

Saya memiliki banyak konten video ceramah yang saya ingin memiliki subtitle. YouTube secara otomatis membuat subtitle untuk video dalam kondisi tertentu (kondisi itu masih agak menjadi misteri bagi saya).

Saya ingin dapat menggunakan teknologi pengenalan suara ini di luar YouTube. Saya tidak ingin mengunggah setiap video hanya untuk mendapatkan transkrip (terlalu memakan waktu), ditambah, saya tidak berpikir YouTube akan melakukannya untuk video yang lebih lama dari sekitar 30 menit (kebanyakan dari mereka), lebih lanjut, saya jangan berpikir itu akan melakukannya untuk video yang tidak terdaftar untuk umum (yang merupakan masalah karena itu adalah konten premium yang dimaksudkan untuk dijual).

Skenario sempurna: Ada program yang dapat saya jalankan dari desktop saya untuk mendapatkan transkrip dari video ini dan kualitasnya sama atau lebih baik daripada YouTube dan memiliki kode waktu yang mirip dengan SRT atau XML yang dihasilkan YouTube [ Cara dapatkan subtitle YouTube ].

Skenario yang dapat diterima: Ada beberapa trik yang dapat saya lakukan untuk memaksa YouTube untuk mentranskripsikan video, apakah disetel ke privat atau publik, dan meskipun panjang.

Skenario yang bisa dilakukan: Ada perpustakaan atau sesuatu yang bisa saya gunakan untuk kode program saya sendiri. Saya baik dengan C # dan baik-baik saja dengan C ++ (Tapi saya lebih suka C #).

287352
sumber
2
terima kasih atas tautannya - dari sudut pandang tuli, sangat tertarik untuk mendengar bagaimana ini bekerja ...
studiohack
@studiohack no pun intended.
287352
LOL, aku bahkan tidak menyadarinya! : P
studiohack

Jawaban:

10

Google menerapkan Web Speech API (baik untuk pengenalan suara dan sintesis) ke Chrome, yang dapat Anda gunakan jika Anda seorang pengembang. Inilah yang digunakan YouTube untuk membuat teks tertutup pada beberapa video. Mungkin Anda akan menemukan kode untuk berinteraksi dengannya.

Aliran data mungkin akan:

File video => ekstrak dan konversi audio => kirim ke Google API => dapatkan teks => tulis menjadi SRT.

EDIT: sepertinya tidak ada halaman API resmi, selain spesifikasi W3C. Jadi di sini ada lebih banyak tautan:

Contoh-contoh ini adalah tentang menggunakan API dari dalam Chrome, tetapi Anda dapat langsung menanyakan mesin pengenalan suara online Google. Misalnya, Jasper , asisten pribadi yang mengenali ucapan untuk Raspberrry Pi, memungkinkan Anda memilih Google sebagai mesin pengenal ucapan.

foucdeg
sumber
Terima kasih! Saya pasti akan mencoba ini. Jika itu dapat dilakukan dengan cepat (kecuali untuk waktu pemrosesan) maka saya dapat menerapkan ini ke dalam produk saya. Betapa sebuah anugerah.
287352
Sumber lain dari API mungkin adalah lingkungan NodeWebkit
John Dvorak
1

Ada alat yang disebut "autosub" (lihat agermanidis / autosub di github) yang melakukan hal ini, meskipun menggunakan API pidato Google yang lebih lama. Alat ini menggunakan ffmpeg untuk memotong audio menjadi file FLAC dan kemudian mengirim file FLAC ke Google untuk transkripsi. Ini menghasilkan file SRT atau VTT.

Keakuratannya rendah sebagian karena Google API yang lebih lama. Ada API yang lebih baru ("Cloud Speech REST API" di https://cloud.google.com/speech/docs/apis ). API ini cukup sederhana dan pada titik tertentu, saya akan menggunakan autosub untuk menggunakannya.

Alternatifnya adalah mengunggah ke YouTube dan mengunduh file VTT ketika captioning selesai. Kerumitan dengan ini adalah bahwa YouTube menghasilkan teks yang sangat halus (misalnya beberapa kata) daripada misalnya kalimat. Ini membuat lebih sulit untuk memeriksa teks ketika melakukan pemindaian manual.

Dirk Grunwald
sumber