Hướng dẫn tự động làm Subtitle cho Video bằng Tool Autosub

Hướng dẫn cách làm làm Subtitle cho Video bằng Tool Autosub một cách tự động. Tool này sử dụng  Google Speech API để generate subtitle từ âm thanh của video clip. Kết quả đáng kinh ngạc chính xác đến 90% đấy các bạn mình đã test thử!

Đọc bài này các thánh kiếm tiền youtube Reup lại có tinh thần hứng khởi và các bác mê thể loại tiếng nhật =)) thì khỏi phải nói không phải đoán mò nữa:D

 

sub

Đây là link tut của bạn Hưng Nguyễn: https://huwng.wordpress.com/2016/05/11/nhan-dien-tao-phu-de-tu-dong-cho-video-va-am-thanh/

Hưng Nguyễn

[Cập nhật] Hướng dẫn cài đặt và sử dụng trên Windows và Mac OS X 

[Cập nhật] Các bạn cài chương trình cho Windows chú ý nếu quá trình chạy bị lỗi hãy thay thế file autosub_app.py như ở bước 4.

[Cập nhật] Một số bạn gặp lỗi khi chạy lệnh python và pip trên cmd bị lỗi (‘pip’ is not recognized as an internal or external command) thì hãy thêm đường dẫn của hai thư mục C:\Python27\ và C:\Python27\Scripts (hoặc tương tự) vào biến môi trường Path nhé.

Các bạn đã bao giờ xem một bộ phim tiếng Anh nhưng chưa có phụ đề. Hay các bạn học theo một tutorial tải ở trên mạng bằng tiếng Anh, cố gắng nghe đi nghe lại nhưng không thể nghe được người ta nói gì chưa? Gần đây nhiều người có một giải pháp đó là upload video đó lên youtube và chờ youtube tạo sẵn phụ đề cho mình. Mặc dù youtube nhận diện khá tốt tuy nhiên đây là một công việc khá mất thời gian khi phải tải video lên youtube, sau đó lại xem trực tuyến trên youtube, đó là còn chưa kể đến các vấn đề về bản quyền nữa. Do đó, trong bài viết này mình sẽ hướng dẫn các bạn sử dụng công cụ Autosub để có thể nhanh chóng tạo phụ đề cho một video tiếng Anh bất kì.

GIỚI THIỆU

Autosub là một công cụ được viết bằng ngôn ngữ lập trình Python, nguyên lý hoạt động của nó là sẽ tách phần âm thanh của video ra, sau đó upload lên mạng và sử dụng Google Web Speech API để nhận diện, tạo ra phụ đề và cuối cùng là lưu xuống máy tính của mình. Thông tin thêm về Autosub các bạn có thể tìm kiếm thêm ở đây

MÔI TRƯỜNG

Mình chạy autosub trên hệ điều hành Ubuntu 14.04 đã cài đặt Python. Các bạn cũng có thể sử dụng Windows hoặc Mac OS X để chạy công cụ.

HƯỚNG DẪN CÀI ĐẶT

Trên Ubuntu

  1. Trước hết là máy của bạn phải cài đặt Python đã, nếu chưa, hãy chạy lệnh
    sudo apt-get update
    sudo apt-get install python python-dev
    sudo apt-get python pip
  2. Tiếp đến chúng ta cần phải cài đặt FFmpeg, sử dụng các lệnh sau
    sudo add-apt-repository ppa:mc3man/trusty-media
    sudo apt-get update
    sudo apt-get install ffmpeg -y
  3. Tiếp theo hãy cài đặt Autosub bằng lệnh
    sudo pip install autosub

Trên Windows

  1. Trước hết là máy của bạn phải cài đặt Python đã, nếu chưa, tải tại địa chỉ (chọn phiên bản 2.x.x):
    https://www.python.org/downloads/
    Các bạn lưu ý là thêm đường dẫn của hai thư mục C:\Python27\ và C:\Python27\Scripts vào biến môi trường nhé.
  2. Cài đặt FFmpeg
    2.1. Tải FFmpeg tại địa chỉ https://ffmpeg.zeranoe.com/builds/, chọn phiên bản 32bit hay 64bit tùy thuộc vào máy tính của bạn
    Capture
    2.2. Giải nén file vừa tải về vào địa chỉ C:\ffmpeg, chú ý để cấu trúc file như hình
    Capture
    2.3. Thêm địa chỉ của ffmpeg vào biến môi trường. Chuột phải My Computer chọn Properties-> Advanced System Settings -> Advanced-> Environments Variables… Tim đến Path ở ô System variables chọn Edit, thêm vào thư mục bin của ffmpeg
    capture2
  3. Cài đặt autosub:
    3.1. Mở cmd bằng quyền admin
    untitled
    3.2. Chạy lệnh

    pip install autosub
  4. Di chuyển tới thư mục C:\Python27\Scripts đổi tên file autosub thành autosub_app.py, nếu trong quá trình chạy mà phát sinh lỗi bạn hãy thay thế file autosub_app.py bởi file này

Trên Mac OS X

  1. Cài đặt ffmpeg bằng lệnh
    brew install ffmpeg
  2. Cài đặt autosub bằng lệnh
    pip install autosub

HƯỚNG DẪN SỬ DỤNG ĐỂ NHẬN DIỆN VIDEO, ÂM THANH TIẾNG ANH

Mình sẽ hướng dẫn các bạn sử dụng công cụ qua một ví dụ, đó là bài nói chuyện TED Talks “The mind behind Linux” với sự xuất hiện của Linus Torvalds. Các bạn có thể xem video này tại đây hoặc tải về tại đây.

0. Trước hết, hãy nhìn qua hướng dẫn sử dụng một lượt đã nhé (Nếu bạn sử dụng công cụ để tạo sub tiếng Anh thì không cần quan tấm lắm đến bước này). Các bạn hãy chú ý đặc biệt đến hai tham số -S và -D, đây là hai tham số ngôn ngữ được nói trong video và ngôn ngữ của file phụ đề sẽ được xuất ra.

$ autosub -h
usage: autosub [-h] [-C CONCURRENCY] [-o OUTPUT] [-F FORMAT] [-S SRC_LANGUAGE]
               [-D DST_LANGUAGE] [--list-formats] [--list-src-languages]
               [--list-dst-languages]
               source_path

positional arguments:
  source_path           Path to the video or audio file

optional arguments:
  -h, --help            show this help message and exit
  -C CONCURRENCY, --concurrency CONCURRENCY
                        Number of concurrent API requests to make
  -o OUTPUT, --output OUTPUT
                        Output path for subtitles (by default, subtitles are
                        saved in the same directory and name as the source
                        path)
  -F FORMAT, --format FORMAT
                        Destination subtitle format
  -S SRC_LANGUAGE, --src-language SRC_LANGUAGE
                        Language spoken in source file
  -D DST_LANGUAGE, --dst-language DST_LANGUAGE
                        Desired language for the subtitles
  -K API_KEY, --api-key API_KEY
                        The Google Translate API key to be used. (Required for
                        subtitle translation)

  --list-formats        List all available subtitle formats
  --list-src-languages  List all available source languages
  --list-dst-languages  List all available destination languages

Trên Ubuntu

  1. Mở Terminal di chuyển đến thư mục chứa video
  2. Gõ lệnh
    autosub [tên_video]

  3. Nếu thành công, phụ đề sẽ được lưu ngay cùng với thư mục chứa video.
  4. Enjoy. Kết quả rất tốt.
    4

Trên Windows

  1. Di chuyển đên thư muc C:\Python27\Scripts
    11
  2. Chọn File-> Open command prompt-> Open command prompt as administrator
    21
  3. Gõ lệnh
    python autosub_app.py [tên_video]

    31
    Nếu bạn gặp lỗi trong bước này thì hãy thay thế file autosub_app.py bởi file này.

  4. Kết quả rất tốt, tương tự như trên Ubuntu.
    screenshot-34

HƯỚNG DẪN SỬ DỤNG ĐỂ NHẬN DIỆN VIDEO, ÂM THANH TIẾNG VIỆT

Làm tương tự như nhận dạng tiếng Anh nhưng hãy thêm hai tham số:

Trên Ubuntu

autosub [tên_video] -S vi -D vi

Trên Windows

python autosub_app.py [tên_video] -S vi -D vi

Kết quả thử nghiệm cũng rất tốt trên video bản tin.

5

NHẬN XÉT

Autosub sử dụng Google Web Speech API  nên độ chính xác là khá cao, tốc độ thực thi tương đối nhanh, và dĩ nhiên, phụ thuộc vào tốc độ mạng của các bạn nữa. Các video từ 10 phút đổ xuống Autosub chỉ chạy trong vòng chưa đến 1 phút. Mình đã thử nghiệm nhận dạng sub cho bộ phim Big Hero 6 với độ dài 1 giờ 41 phút chương trình chạy chỉ trong vòng 4 phút. Cá nhân mình thấy Autosub rất hay, nhất là trong việc tạo sub tự động cho các video hướng dẫn chỉ bằng tiếng Anh, sẽ giúp đỡ rất nhiều trong quá trình học tập, tiếp cận thêm thông tin mà lại nhanh chóng hơn giải pháp sử dụng youtube.

Các bạn nếu trong quá trình cài đặt gặp lỗi gì hãy comment ở đây nhé, mình sẽ cố gắng giúp đỡ. Nếu bạn có giải pháp tốt hơn, hãy chia sẻ cho mình cùng biết với nhé.

Nguồn:  Hưng Nguyễn

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Scroll To Top