
Hướng dẫn trích xuất phụ đề hardsub từ video sang phụ đề rời
Hiện tại trên web nhiều phim có phụ đề tiếng Việt nhưng rất tiếc là chất lượng phim trên web thường không cao. Để xem phim có chất lượng cao hơn thì lại không có phụ đề rời để thưởng thức. Đây là nỗi thất vọng chung của nhiều người yêu thích điện ảnh, đặc biệt là khi có bộ phim hay mà chưa có ai chia sẻ phụ đề tiếng Việt để được trải nghiệm xem phim chất lượng cao nhất.
Trước đây tôi đã tìm hiểu và đã ocr phụ đề cứng ra file srt thành công và đặc biệt là sử dụng khả năng ocr rất chính xác của Google để tạo ra file phụ đề ít lỗi chính tả nhất có thể, việc chỉnh sửa phụ đề sau khi ocr cũng sẽ đơn giản và đỡ mất thời gian rất nhiều.
Bài viết này tôi sẽ cho bạn biết cách tôi làm để bạn có thể tự làm và chia sẻ phụ đề rời với cả cộng đồng yêu điện ảnh nhé.
PHẦN 1: CHUẨN BỊ
Để có thể thực hiện thành công quá trình chuyển đổi phụ đề cứng sang phụ đề rời, bạn sẽ cần chuẩn bị những công cụ sau:
VideoSubFinder:
VideoSubFinder là một công cụ mạnh mẽ và miễn phí dành cho việc trích xuất phụ đề từ các video có phụ đề cứng. Các tính năng chính của công cụ này bao gồm:
- Khả năng quét và tách phụ đề từ video với độ chính xác cao
- Hỗ trợ nhiều định dạng video khác nhau
- Giao diện thân thiện và dễ sử dụng
- Cho phép tinh chỉnh các thông số để tăng hiệu quả trích xuất
Link tải: https://sourceforge.net/projects/videosubfinder/
VMFOCR:
Đây là công cụ tôi làm ra để sử dụng khả năng OCR cực tốt của Google để chuyển đổi các ảnh chụp phụ đề từ chương trình VideoSubFinder và tất nhiên là các bạn sử dụng miễn phí API này của Google.
- Tải chương trình VMFOCR tại đây https://www.fshare.vn/folder/2NTVNCFWZZO6
- Cách lấy json của Service Account của Google Drive:
Tôi sẽ hướng dẫn bạn cách lấy Google Drive API này sau.
Các chương trình chỉnh sửa và tinh chỉnh phụ đề như:
Subtitle Edit
(link tải https://github.com/SubtitleEdit/subtitleedit/releases)
Aegisub
(link tải https://aegisub.org/downloads/)
Bạn hãy tải các chương trình trên và cài đặt vào máy nhé. Ví dụ lưu tất cả vào "C:\OcrProject"
Hướng dẫn lấy json key của Googe Drive:
Bạn hãy lên Google đăng ký một tài khoản, và chúng ta sử dụng tài khoản này để OCR các ảnh phụ đề sau này. Nếu bạn OCR nhiều phụ đề thì bạn có thể tạo ra nhiều tài khoản Google để sử dụng vì một ngày Google sẽ giới hạn một tài khoản có thể sử dụng để ocr bao nhiêu ảnh thôi. Nhưng thông thường chỉ cần 1 tài khoản cũng đủ dùng rồi.
Bước 1: Truy Cập Google Cloud Console
- Mở trình duyệt và truy cập: https://console.cloud.google.com/
- Đăng nhập bằng tài khoản Google của bạn
Bước 2: Tạo Dự Án Mới
- Nhấn vào dropdown dự án (gần logo Google Cloud)
- Chọn "New Project"
- Đặt tên dự án, ví dụ: "SubtitleProject"
- Nhấn "Create"
Chọn lại project "SubtitleProject".
Bước 3: Kích Hoạt Google Drive API
- Tìm và chọn "APIs & Services" trong menu bên trái
- Nhấn "Enable APIs and Services"
- Tìm và chọn "Google Drive API"
- Nhấn nút "Enable"
Bước 4: Tạo Credentials
- Vào mục "Credentials"
- Nhấn "Create Credentials"
- Chọn "Service Account"
Bước 5: Thiết Lập Service Account
Đặt tên Service Account, ví dụ ở đây là "ocrsub"
Chọn vai trò "Editor" hoặc phù hợp với nhu cầu
Nhấn "Create"
Bước 6: Tạo Key JSON
Vào Service Account vừa tạo.
- Chuyển sang tab "Keys"
- Nhấn "Add Key" > "Create new key"
- Chọn JSON
- Nhấn "Create" - File JSON sẽ tự động tải xuống
- Bạn lưu trữ file này vào một thư mục trên máy. Ví dụ ổ "C:\OcrProject".
Lưu Ý Quan Trọng: Giữ kỹ file JSON, đây là thông tin bảo mật
PHẦN 2: SỬ DỤNG VIDEOSUBFINDER ĐỂ EXTRACT KHUNG HÌNH CHỨA PHỤ ĐỀ
Sau khi tải chương trình Videosubfinder (https://sourceforge.net/projects/videosubfinder/) về các bạn giải nén ra vào thư mục của nó. TronTrong thư mục chứa phần mềm, bạn có thể thấy hai tệp thực thi (exe) là VideoSubFinderWXW_intel.exe và VideoSubFinderWXW.exe.
Nếu bạn đang sử dụng một máy tính có CPU Intel và card đồ họa tích hợp của Intel (Intel HD Graphics, Iris Graphics, v.v.), hãy sử dụng VideoSubFinderWXW_intel.exe để tận dụng tối đa hiệu suất.
Nếu bạn không chắc chắn hoặc đang sử dụng một hệ thống với card đồ họa rời (NVIDIA, AMD) hoặc CPU không phải Intel, hãy sử dụng VideoSubFinderWXW.exe.
Khi chạy chương trình bạn sẽ thấy giao diện của chương trình như sau:
Bước 1:
Bạn hãy nhấn File của chương trình để chọn file video cần extract phụ đề. Hãy chọn "Open Video (FFMPEG)" để hỗ trợ nhiều định dạng video và codec hơn so với OpenCV.
Bước 2:
Sau khi mở video lên. Bạn hãy di chuyển 2 thanh ngang trên màn hình video để xác định vùng phụ đề. Bạn có thể kéo thanh trạng thái để kiểm tra các vùng phụ đề có thể xuất hiện.
Bạn nhấn "Clear Folders" để xóa hết các file (nếu có) được tạo ra từ lần chạy trước. Tiếp theo bạn nhấn nút "Run Search".
Thời gian này chúng ta sẽ phải đợi hơi lâu. Nếu bạn có dùng card đồ họa Nvdia có hỗ trợ CUDA thì cài CUDA Toolkit để tận dụng sức mạnh xử lý đồ họa (Đánh dấu Use CUDA GPU Acceleration trong phần Settings).
Bước 3:
Sau khi chạy xong, bạn chuyển sang tab "OCR". Tìm 3 tùy chọn này đánh dấu vào hết như ảnh.
Chọn Join RGBImages chúng ta sẽ bỏ qua bước tạo "Cleared text Images" vì sử dụng chương trình OCR của Google đã cho kết quả khá chính xác nên sẽ tiết kiệm được thời gian. Trong quá trình làm mà bị lỗi là do Videosubfinder không load được cấu hình tùy chọn này, nên bạn phải đành thực hiện "Cleared text Images" để chạy thành công. Sau đó mới chạy Join Tx/Rgbimages được.
Nhấn Ctrl + S hoặc vào "File / Save setting" để lưu giữ thiết lập.
Bước 5:
Tiếp theo nhấn vào nút "Join TXT/RGBImages" như hình dưới.
Đợi cho chương trình ghép các ảnh vào với nhau để chuẩn bị đến công đoạn OCR lấy text từ các ảnh này.
PHẦN 3: TẠO PHỤ ĐỀ TỪ FILE ẢNH.
Bước 1:
Vào thư mục của chương trình VMFOCR chay chương trình này lên.
Nhấn vào "Select" để chọn thư mục chứa chương trình VideoSubfinder.
Ở mục File Json Google, nhấn Select để chọn file json của Google mà bạn đã tạo ra ở phần 1.
Các lựa chọn này sẽ được tự động lưu lại cho lần sử dụng sau.
Bước 2:
Ở mục "Fucntions" các bạn nhấn nút OCR Images để chương trình tiến hành quá trình trích xuất phụ đề từ các ảnh. Sau khi thực hiện xong chương trình sẽ báo thành công.
Bước 3:
Bước tạo phụ đề sau khi đã trích xuất thành công.
Các bạn nhấn vào "Create Subtitle".
Chương trình sẽ hiện cửa sổ để chọn đường lưu phụ đề, các bạn đặt tên cho phụ đề và nhấn Save nhé.
Cuối cùng đã thành công rồi.
Đây là nội dung phụ đề sau khi đã OCR từ hardsub thành công.
Sau đó các bạn có thể dùng các trình sửa phụ đề giới thiệu ở phần 1 tinh chỉnh, sửa lỗi chính tả để ra một phụ đề hoàn chỉnh.
PHẦN 4: TẢI VIDEO TỪ CÁC SITE PHIM
Các bạn cài trình duyệt Cốc Cốc vào nhé. Khi Play phim thì sẽ có cửa sổ để tải video về. Các bạn có thể tìm các phim mà chưa có phụ đề rời, ocr và đóng góp cho cộng đồng nhé.
Chúc các bạn thành công.
Mọi thảo luận và thắc mắc các vấn đề khi chạy xin vui lòng tham gia group Cộng đồng Kodi Việt Nam https://www.facebook.com/groups/kodiviet