Video Engineering · Phần 1 — Từ byte đến pixel: container, codec và pipeline
Dựng mental model từ file video tới màn hình: container, stream, packet, frame, demux, decode, render; phân biệt remux, transcode và kiểm chứng bằng FFmpeg.
Filter/Tag
10 entries
Dựng mental model từ file video tới màn hình: container, stream, packet, frame, demux, decode, render; phân biệt remux, transcode và kiểm chứng bằng FFmpeg.
Tách rõ decoder, encoder và renderer; hiểu software/hardware path, packet/frame queue, backpressure, latency và cách đo từng tầng bằng fixture FFmpeg tự tạo.
Hiểu time base, PTS/DTS, CFR/VFR, GOP, I/P/B-frame, seek và A/V sync; tự tạo fixture có B-frame và VFR rồi đọc timeline bằng ffprobe.
Phân tầng format/stream/frame metadata; đọc rotation, SAR/DAR, color tags, audio layout, language và disposition bằng fixture FFmpeg có hai audio track.
Hiểu scope và thứ tự option, chọn stream bằng -map, rồi phân biệt chính xác demux, decode, filter, encode, mux, remux và transcode trong một lệnh FFmpeg.
Xây renderer bằng filtergraph: scale, crop, pad, overlay, drawtext, burn subtitle và mix audio; đồng thời quản lý pad, timestamp, aspect ratio và encoding đầu ra.
Đọc master/media playlist HLS, hiểu ABR, keyframe alignment, MPEG-TS so với fMP4, rồi tự package một stream nhiều rendition bằng FFmpeg.
Chọn đúng giữa stream copy và cắt chính xác, nối bằng concat demuxer hoặc concat filter, rồi bảo toàn metadata, audio và subtitle mà không phá timeline.
Dùng ffprobe đọc format, stream, packet và frame dưới dạng JSON; sau đó rút gọn dữ liệu thành báo cáo đủ nhỏ để debug, review asset và tự động hóa pipeline.
Tổng hợp series bằng lab end-to-end: tạo source, probe, encode ladder, đóng gói HLS MPEG-TS và fMP4, phát bằng hls.js, profile, fault injection và xuất debug report.