上传码流文件

拖拽 .h264.h265 裸流文件到此处

— 或 —

支持 Annex B 字节流格式(起始码 0x000001 / 0x00000001)

视频码流学习与排查

关于 H.264/H.265 码流结构

什么是 H.264?

H.264 又称 AVC(Advanced Video Coding),是一种广泛使用的视频压缩编码标准。它通过帧内预测、帧间预测、变换、量化和熵编码压缩视频数据,常见于 MP4 视频、直播、视频会议、监控录像和网页视频。本工具解析的是 H.264 Annex B 裸码流,可以直接查看 NAL 单元、SPS/PPS、I/P/B/IDR 帧和二进制字段。

什么是 H.265?

H.265 又称 HEVC(High Efficiency Video Coding),是 H.264 之后的视频压缩标准。它使用更灵活的编码树单元、预测和变换结构,通常在相近画质下比 H.264 提供更高压缩效率,适合 4K、8K 和高码率视频。本工具支持解析 H.265/HEVC Annex B 裸码流中的 VPS/SPS/PPS、slice header、SEI 和 Temporal ID 等信息。

NAL 单元与 Annex B 字节流

H.264(AVC)与 H.265(HEVC)编码的视频在传输和存储时通常采用 Annex B 字节流格式。该格式通过起始码(Start Code)来分隔连续的 NAL(Network Abstraction Layer)单元。起始码可以是 3 字节的 0x000001 或 4 字节的 0x00000001,解析器通过扫描这些特征字节序列来定位每个 NAL 单元的边界,从而完成码流解析的第一步。

参数集:SPS、PPS 与 VPS

H.264 码流中,SPS(序列参数集)包含图像分辨率(通过 frame_cropping 偏移量计算实际宽高)、profile 与 level 标识、色度采样格式(chroma_format_idc)等全局信息。H.265/HEVC 在此基础上增加了 VPS(视频参数集),用于描述多层编码、可伸缩视频等高级特性。VPS 中的 profile_tier_level 结构定义了编码器的能力等级,而 conformance_window 标志用于从编码分辨率推导显示分辨率。

帧类型识别与 GOP 分析

通过解析 VCL NAL 单元中的 Slice Header,可以提取 slice_type 字段,从而判断当前帧是 I 帧(帧内预测)P 帧(前向预测) 还是 B 帧(双向预测)。连续的编码帧组成一个 GOP(Group of Pictures),通常以 I 帧为起始。GOP 长度和结构直接影响视频的随机访问性能和压缩效率。本工具自动统计 I/P/B 帧数量与 GOP 分布,辅助分析编码器配置。

SEI 消息与补充增强信息

SEI(Supplemental Enhancement Information)负载携带不影响解码的辅助信息,常见的包括缓冲周期(buffering_period)、图像时序(pic_timing)、用户自定义数据(user_data_unregistered)等。这些消息在码流分析、调试和合规性检测中具有重要价值。

位流读取与标准参照

裸码流解析的核心是基于标准的位流读取。H.264 语法参照 ITU-T H.264 (08/2024) 第 7.3 节,H.265 语法参照 ITU-T H.265 (01/2026) 第 7.3 节。本解析器实现了完整的 Exp-Golomb 熵解码、定长和变长字段读取,以及对 ue(v)se(v) 等描述符的精确处理。所有解析逻辑在 Web Worker 中异步执行,确保大文件解析时不影响页面交互。