Công cụ tính kích thước khung hình video là gì?
Công cụ này ước tính kích thước trung bình của một khung hình video và tổng dung lượng file của một clip dựa trên ba thông số: bitrate, tốc độ khung hình (fps) và thời lượng. Đây là trợ thủ đắc lực cho dân dựng phim, streamer và lập trình viên khi cần ước lượng dung lượng lưu trữ, băng thông hay ngân sách mã hóa. Phép tính không phụ thuộc vào codec — nó cho ra số byte trung bình mỗi khung hình với giả định các bit được phân bổ đều giữa các frame.
Cách sử dụng
Bạn nhập bitrate tính bằng megabit mỗi giây (Mbps), tốc độ khung hình tính bằng số frame mỗi giây, và thời lượng clip tính bằng giây. Công cụ sẽ đổi bitrate sang bit mỗi giây, chia cho tốc độ khung hình để ra số bit mỗi frame, rồi chia cho 8 để quy đổi sang byte. Tổng dung lượng file được tính bằng công thức bitrate × thời lượng.
Giải thích công thức
Bitrate cho biết video sử dụng bao nhiêu bit trong mỗi giây. Khi chia con số này cho tốc độ khung hình, ta được số bit trung bình dành cho một khung hình. Vì 1 byte = 8 bit, nên chia tiếp cho 8 để đổi ra byte:
$$\text{Frame Size (bytes)} = \frac{\text{Bitrate (Mbps)} \times 10^{6}}{8 \times \text{Frame Rate (fps)}}$$
Đối với toàn bộ file, $$\text{File Size (MB)} = \frac{\text{Bitrate (Mbps)} \times 10^{6} \times \text{Duration (s)}}{8 \times 1024^{2}}$$. Lưu ý rằng các codec thực tế (H.264, H.265) có kích thước khung hình chênh lệch rất lớn — keyframe thì nặng, còn các frame dự đoán thì nhẹ — vì vậy đây chỉ là giá trị trung bình, không phải kích thước chính xác của từng khung hình.
Ví dụ minh họa
Một clip được mã hóa ở 8 Mbps và 30 fps: bitrate = 8.000.000 bit/giây. Số bit mỗi frame = \(8{.}000{.}000 / 30 = 266{.}666{,}67\). Chia cho 8 → khoảng 33.333 byte (~32,6 KB) mỗi khung hình. Trong 60 giây, dung lượng file sẽ là \((8{.}000{.}000 \times 60) / 8 = 60{.}000{.}000\) byte ≈ 57,2 MB.
Câu hỏi thường gặp
Vì sao các khung hình thực tế lại có kích thước khác nhau? Các codec hiện đại dùng bitrate biến thiên và nhiều loại frame khác nhau, nên I-frame lớn hơn rất nhiều so với P-frame/B-frame. Công cụ này chỉ báo giá trị trung bình.
Dung lượng file dùng đơn vị nào? Megabyte ở đây dùng định nghĩa nhị phân (1 MB = 1.048.576 byte).
Tôi có dùng được kbps không? Hãy đổi sang Mbps trước (ví dụ: 5000 kbps = 5 Mbps).