Làm cách nào để sử dụng Nhận dạng giọng nói YouTube của Google mà không tải video lên YouTube?


15

Tôi có rất nhiều nội dung video bài giảng mà tôi muốn có phụ đề cho. YouTube tự động tạo phụ đề cho video theo các điều kiện nhất định (những điều kiện đó vẫn còn là một điều bí ẩn đối với tôi).

Tôi muốn có thể sử dụng công nghệ nhận dạng giọng nói này bên ngoài YouTube. Tôi không muốn tải lên mọi video chỉ để lấy bản ghi (quá tốn thời gian), ngoài ra, tôi không nghĩ YouTube sẽ làm điều đó cho các video dài hơn khoảng 30 phút (hầu hết trong số đó là), hơn nữa, tôi đừng nghĩ rằng nó sẽ làm điều đó cho các video được liệt kê không công khai (đây là một vấn đề vì đó là nội dung cao cấp có nghĩa là được bán).

Kịch bản hoàn hảo: Có một chương trình mà tôi có thể chạy từ máy tính để bàn của mình để lấy bản sao ra khỏi những video này và nó có chất lượng tương đương hoặc tốt hơn YouTube và có mã thời gian tương tự như SRT hoặc XML mà YouTube tạo ra [ Cách thực hiện lấy phụ đề YouTube ].

Kịch bản có thể chấp nhận: Có một số thủ thuật tôi có thể làm để buộc YouTube sao chép video, dù được đặt ở chế độ riêng tư hoặc công khai và bất chấp thời lượng.

Kịch bản có thể thực hiện: Có một thư viện hoặc thứ gì đó mà tôi có thể sử dụng để mã hóa chương trình của riêng mình. Tôi tốt với C # và ổn với C ++ (Nhưng tôi thực sự thích C #).


2
cảm ơn vì đã liên kết lên - từ góc độ người điếc, rất thích thú khi nghe cách thức hoạt động của nó ...
studiohack

@studiohack không có ý định chơi chữ.
287352 31/03 '

LOL, tôi thậm chí không nhận ra điều đó! : P
studiohack

Câu trả lời:


10

Google đã triển khai API Web Speech (cả để nhận dạng và tổng hợp giọng nói) vào Chrome, bạn có thể sử dụng nếu bạn là nhà phát triển. Đây là những gì YouTube sử dụng để tạo phụ đề gần trên một số video. Có lẽ bạn sẽ tìm thấy mã để tương tác với nó.

Luồng dữ liệu có thể là:

Tệp video => trích xuất và chuyển đổi âm thanh => gửi tệp đó đến Google API => nhận văn bản => ghi vào SRT.

EDIT: dường như không có trang API chính thức, ngoài thông số W3C. Vì vậy, đây là nhiều liên kết hơn:

Các ví dụ này là về việc sử dụng API từ bên trong Chrome, nhưng bạn có thể truy vấn trực tiếp công cụ nhận dạng giọng nói trực tuyến của Google. Chẳng hạn, Jasper , trợ lý cá nhân nhận dạng giọng nói cho Raspberrry Pi, cho phép bạn chọn Google làm công cụ nhận dạng giọng nói.


Cảm ơn bạn! Tôi chắc chắn sẽ thử điều này. Nếu nó có thể được thực hiện nhanh chóng (trừ thời gian xử lý) thì tôi có thể thực hiện điều này vào sản phẩm của mình. Thật là một lợi ích.
287352

Một nguồn khác của API có thể là môi trường NodeWebkit
John Dvorak

1

Có một công cụ gọi là "autosub" (xem agermanidis / autosub trên github) thực hiện chính xác điều này, mặc dù nó sử dụng API bài phát biểu cũ hơn của Google. Công cụ sử dụng ffmpeg để tách âm thanh thành các tệp FLAC và sau đó gửi các tệp FLAC tới Google để sao chép. Nó tạo ra một tệp SRT hoặc VTT.

Độ chính xác một phần thấp do API Google cũ hơn. Có một API gần đây hơn ("API bài phát biểu đám mây" tại https://cloud.google.com/speech/docs/apis ). API này khá đơn giản và tại một số điểm, tôi sẽ rẽ nhánh tự động để sử dụng nó.

Cách khác là tải lên YouTube và tải xuống tệp VTT khi hoàn thành chú thích. Điều phức tạp với điều này là YouTube tạo ra các chú thích rất chi tiết (ví dụ: một vài từ) chứ không phải là một câu. Điều này khiến việc kiểm tra chú thích khi thực hiện quét thủ công trở nên khó khăn hơn.


1

Cách dễ nhất là thế này: truy cập tài liệu google, mở tài liệu văn bản mới và chọn từ các công cụ "nhập giọng nói", sau đó phát băng của bạn. Đúng. Nó là dễ dàng! (và hỗ trợ nhiều ngôn ngữ)

Nếu không, bạn có thể sử dụng trang web cục bộ với HTML5 như thế này: https://www.labnol.org/software/add-speech-recognition-to-website/19989/

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.