Flash 视频 (.flv)
Adobe Tiêu chuẩnFlash Video (FLV) là một định dạng vùng chứa do Macromedia và Adobe phát triển để cung cấp video và âm thanh đồng bộ qua web thông qua plugin trình duyệt Adobe Flash Player.
Kiểm tra & Siêu dữ liệu
Các hệ điều hành và trình phân tích tệp nhận dạng tệp FLV bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
Chữ ký tiêu đề ở cấp độ Byte (Magic Bytes)
Các hệ điều hành và trình phân tích tệp nhận dạng tệp FLV bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
CHỮ KÝ HEX (OFFSET 0):
46 4C 56 01BIỂU DIỄN ASCII: FLV
Tiêu chuẩn hóa: Adobe Systems Flash Video File Format Specification
Thông số kỹ thuật
| Kiến trúc Container | Tag-based streaming container with interleaved audio, video, and script data tags |
| Nén | Sorenson Spark, VP6, or H.264 video with MP3 or AAC audio |
| Thứ tự byte Endianness | Big-Endian bit and byte ordering |
| Không gian màu | YUV 4:2:0 |
| Kênh & Cấu trúc | Mono and Stereo audio with video stream |
| Kích thước tối đa | Commonly up to 1080p |
| Độ trong suốt | Alpha channel transparency supported in VP6 video streams |
| Truyền phát & Tăng dần | Native support for RTMP (Real-Time Messaging Protocol) live streaming |
Ma trận so sánh kỹ thuật: FLV so với các đối thủ
| Thuộc tính kỹ thuật | FLV (Hiện tại) | MP4 | WEBM | MKV |
|---|---|---|---|---|
| Hỗ trợ trình duyệt hiện nay | 0% (Đã xóa hoàn toàn khỏi tất cả các trình duyệt hiện đại) | Phổ thông 100% trên tất cả các trình duyệt | Hỗ trợ trình duyệt hiện đại 100% | Yêu cầu trình phát đa phương tiện trên máy tính để bàn |
| Tiêu chuẩn hóa | Đặc tả độc quyền của Adobe | Tiêu chuẩn mở quốc tế ISO/IEC | Tiêu chuẩn mở W3C / WebM | Tiêu chuẩn Matroska mã nguồn mở |
| Phát lại trên thiết bị di động | Không được hỗ trợ gốc trên iOS và Android hiện đại | Hỗ trợ phần cứng gốc | Hỗ trợ phần cứng gốc | Được hỗ trợ qua VLC/ứng dụng của bên thứ ba |
| Độ trong suốt alpha | Được hỗ trợ qua codec On2 VP6 | Hạn chế (yêu cầu canvas hoặc WebCodecs) | Hỗ trợ kênh alpha gốc (VP9) | Được hỗ trợ trong luồng VP9/ProRes |
Các chế độ hỏng hóc phổ biến & Hướng dẫn khôi phục Hex
Video FLV đã tải xuống hiển thị tổng thời lượng là 'không xác định' và không thể kéo xem.
Nguyên nhân gốc rễ: Thiếu thẻ tập lệnh 'onMetaData' chứa các bảng dấu thời gian khung hình chính và kích thước tệp.
Khắc phục: Tiêm các bảng khung hình chính còn thiếu bằng 'yamdi' (Yet Another MetaData Injector) hoặc chuyển đổi sang MP4 bằng File2File.
Phân tích bảo mật & Các vectơ tấn công bộ phân tích cú pháp
Plugin Flash Player từng là một trong những thành phần phần mềm bị khai thác nhiều nhất trong lịch sử điện toán do các lỗi hỏng bộ nhớ trong ActionScript và phân tích cú pháp FLV.
Các Véc-tơ Tấn công Đã biết
- Sử dụng sau khi giải phóng và tràn vùng nhớ heap trong công cụ phân tích cú pháp ActionScript 3 FLV (ví dụ: CVE-2015-5122).
- Các gói siêu dữ liệu AMF0/AMF3 được tạo thủ công kích hoạt việc thực thi bộ nhớ tùy ý.
- Tràn bộ đệm trong các quy trình giải nén Sorenson Spark cũ.
Thực tiễn Tốt nhất về Phòng thủ:
Nguồn gốc lịch sử & Các cột mốc
Ưu điểm & Lợi ích chính
- Định hướng lịch sử của video trực tuyến phổ biến: cho phép phát lại video trên web mà không cần trình phát trên máy tính để bàn độc lập.
- Hỗ trợ độ trong suốt alpha trong các luồng video bằng cách sử dụng codec On2 VP6.
- Chi phí gói tin thấp được tối ưu hóa cho việc phát sóng video trực tiếp RTMP có độ trễ thấp.
Hạn chế & Nhược điểm kỹ thuật
- Hoàn toàn lỗi thời và không được hỗ trợ trong tất cả các trình duyệt web hiện đại sau khi Flash Player ngừng hoạt động.
- Yêu cầu mã hóa lại hoặc chuyển đổi vùng chứa sang MP4 để phát lại trên iOS, Android và TV thông minh.
- Thiếu các tính năng vùng chứa hiện đại như âm thanh nhiều bản nhạc và phát trực tuyến tốc độ bit thích ứng phản hồi.
Thông tin kỹ thuật thú vị
- Video đầu tiên từng được tải lên YouTube ('Me at the zoo' vào tháng 4 năm 2005) được mã hóa và phân phối dưới dạng tệp FLV.
- Chuỗi byte phép thuật của Flash Video '46 4C 56 01' đánh vần ASCII 'FLV' theo sau là phiên bản vùng chứa 1.
- Steve Jobs đã xuất bản bức thư ngỏ nổi tiếng 'Suy nghĩ về Flash' của mình vào năm 2010, điều này đã đẩy nhanh quá trình chuyển dịch của ngành từ FLV sang HTML5 MP4.
Các câu hỏi kỹ thuật thường gặp
Tại sao tôi không thể phát tệp FLV trên máy tính của mình nữa?
Adobe và tất cả các trình duyệt web lớn đã chính thức ngừng hỗ trợ Flash Player vào tháng 12 năm 2020 do các lỗ hổng bảo mật. Để phát tệp FLV ngày nay, hãy sử dụng trình phát đa phương tiện VLC hoặc chuyển đổi chúng sang MP4.
Tôi có thể chuyển đổi FLV sang MP4 mà không bị giảm chất lượng không?
Nếu tệp FLV chứa video H.264 và âm thanh AAC, File2File có thể thực hiện việc đóng gói lại bộ chứa (remuxing) không mất dữ liệu sang MP4 trong vài giây mà không cần nén lại video.
Video FLAC ban đầu sử dụng codec gì?
Các tệp FLV đời đầu sử dụng Sorenson Spark (một biến thể của H.263) và sau đó là On2 VP6, trước khi Adobe thêm hỗ trợ cho chuẩn H.264 vào năm 2007.