Tải video về phát ngoại tuyến, hay để chia sẻ là một trong số các nhu cầu của người dùng. Tuy nhiên điều này khiến trang web chứa video gốc bị giảm truy cập, mất thu nhập từ quảng cáo. Hay vì lý do bản quyền, nhiều trang web áp dụng các biện pháp khác nhau để người dùng không tải về được.
Với các trang web đơn giản nhất, nhúng link trực tiếp vào player, bạn chỉ cần bấm chuột phải chọn Save as video, nếu trang web chặn bấm chuột phải thì chỉ cần bấm F12, mở tab Network gõ mp4 là ra link tải.
Kỳ công hơn thì có thể dùng 1 extension như FetchV, tiện ích này cho phép tải cả video HLS, khá là tiện lợi!
Tìm hiểu cách tải video từ một vài trang web phổ biến!
TẢI VIDEO TRÊN YOUTUBE
Nhiều trang web cho phép nhập link youtube vào, bấm nút là xong, bạn có thể tìm kiếm trên Google với cụm từ youtube download.
Trên điện thoại Android, bạn có thể cài app Newpipe, một youtube client app không quảng cáo và hỗ trợ tải video về điện thoại cực lẹ.
Trên macOS, một công cụ mà Ngọc yêu thích là Downie 4, phần mềm này hỗ trợ tải video từ Youtube, Facebook và rất nhiều nguồn khác, cả các định dạng HLS không mã hóa.
Trên Windows một công cụ tuyệt vời là IDM.
Nếu bạn yêu thích dòng lệnh thì không nên bỏ quả công cụ yt-dlp, ngoài youtube, phần mềm này còn hỗ trợ tải video từ trên 1.000 trang web khác bao gồm cả Facebook, Vimeo… (danh sách chi tiết).
Cài đặt yt-dlp trên macOS với brew:
brew install yt-dlp
Để tải video chỉ cần gõ, thế là xong.
yt-dlp "https://www.youtube.com/watch?v=BWf-eARnf6U"
Tuy nhiên nhiều trang web cao cấp việc tải không đơn giản như thế, họ sử dụng công nghệ DRM, sẽ đề cập ở phần dưới. Tải video là một chuyện, có giải mã hóa được video đó là là việc khác.
Có thể kể đến như Netflix, Amazon Prime, HBO Max hay Disney+… Khó nhưng không phải bó tay hoàn toàn. Một số công cụ sinh ra như anystream hay flixgrab. Ngọc sẽ không chia sẻ về các công cụ này vì lý do vi phạm điều khoản của các dịch vụ trên.
KIẾN THỨC VỀ HLS
Làm thế nào mà các trang web có thể phát phim và cơ bản về HLS (HTTP Live Streaming).
HLS khác hoàn toàn với việc nhúng 1 link trực tiếp tới file video. HLS sẽ chia nhỏ video thành hàng trăm phần khác nhau (gọi là các segment). Các segment được quản lý bằng một tập tin Master Playlist (m3u8).
HLS có 2 loại:
- Không mã hoá tập tin phân mảnh, điển hình như vtvgo.vn, fptplay.vn,… Loại này ném link m3u8 vào yt-dlp hoặc bắt bằng IDM là xong.
- Loại thứ 2 mã hoá tập tin phân mảnh, gọi là DRM (Digital Rights Management) (ví dụ như dùng thẻ EXT-X-KEY, Widevine,…)
Cơ chế hoạt động của DRM:
Phương thức để tải HLS cơ bản gồm 3 bước:
- Bấm F12 tìm tập tin m3u8, mpd hay mainfest… tập tin này chứa thông tin các segment và phương thức mã hóa. FetchV hay .MPD Detector là một số extension giúp bạn nhận biết tập tin này một cách đơn giản
- Đưa cho yt-dlp tải về, nếu không xem được bằng VLC, bạn cần làm tiếp bước 3
- Tìm key giải mã hóa và dùng mp4decrypt để giả mã.
Phần nội dung này bị ẩn, bạn cần đăng nhập để xem (đăng nhập với Google chỉ mất chưa tới 3s, nếu chưa có hệ thống sẽ tự tạo tài khoản mới, nếu nút đăng nhập bị ẩn hãy tắt trình chặn quảng cáo)
Đó là một vài thông tin để các bạn có thể nghiên cứu và vận dụng vào việc tải video. Lưu ý tuân theo điều khoản của các dịch vụ trực tuyến. Cảm ơn các bạn đã theo dõi, mọi thắc mắc xin để lại ở phần bình luận.