news 2026/5/1 21:03:55

常见音视频编码二进制分析笔记(H264,H265,AAC,OPUS,G711A,G711U)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
常见音视频编码二进制分析笔记(H264,H265,AAC,OPUS,G711A,G711U)

常见音视频编码二进制分析笔记

文章目录

  • 常见音视频编码二进制分析笔记
    • 视频
      • H.264 (AVC)
        • 说明
          • nal_unit_type:
          • nal_ref_idc
      • H.265 (HEVC)
    • 音频
      • AAC (Advanced Audio Coding)
      • G.711A (PCMA)
      • G.711U (PCMU)
      • OPUS

视频

H.264 (AVC)

标准来源:ITU-T H.264 | ISO/IEC 14496-10
起始码:0x00000001(NALU 分隔符,标准 7.3.1 节定义,用于区分网络抽象层单元)
NALU 类型(核心标识):
0x67:SPS(序列参数集),存储分辨率、帧率等核心解码参数(标准 7.3.2.1 节)
0x68:PPS(图像参数集),存储切片、量化参数等解码配置(标准 7.3.2.2 节)
0x65:关键帧(即时解码刷新帧),独立解码、刷新参考帧(标准 7.3.2.6 节,关键帧核心类型)
0x41:非关键帧(前向预测帧),依赖前序帧解码(标准 7.3.2.5 节)

说明

ITU-T H.264 参考下载地址:https://www.itu.int/rec/T-REC-H.264-202408-I/en
7.3.1章节:

nal_unit_type:

0x1 non IDR 非关键帧 0x2 slice A 0x3 slice B 0x4 slice C 0x5 IDR 关键帧 0x6 SEI 0x7 SPS 0x8 PPS 0x9 AUD 0xa EOS 0xb EOB 0xc FILL
nal_ref_idc
  • 必须为0的单元 nal_ref_idc = 0 [0b00] => 表示非参考 NALU
    必须用于:SEI (6)、AUD (9)、EOS (10)、EOB (11)、FILL (12)
SEI: 0x06 AUD: 0x09 EOS: 0x0a EOB: 0x0b FILL: 0x0c
  • 必须非0的单元 nal_ref_idc = 1 [0b01], 2 [0b10], 3 [0b11] => 表示参考 NALU
    必须用于:SPS (7)、PPS (8)、IDR (5)
SPS: 0x67 | 0x47 | 0x27 PPS: 0x68 | 0x48 | 0x28 IDC: 0x65 | 0x45 | 0x25
  • 不限制nal_ref_idc => slice(1-4) 非关键帧都可用:
slice1: 0x61 | 0x41 | 0x21 | 0x01 slice2: 0x62 | 0x42 | 0x22 | 0x02 slice3: 0x63 | 0x43 | 0x23 | 0x03 slice4: 0x64 | 0x44 | 0x24 | 0x04

H.265 (HEVC)

标准来源:ITU-T H.265 | ISO/IEC 23008-2
起始码:0x00000001(NALU 分隔符,标准 7.4.1 节定义,与 H.264 兼容基础格式)
NALU 类型(2 字节标识,核心标识):
0x4001:VPS(视频参数集),HEVC 独有,管理多图层、3D 视频参数(标准 7.4.2.1 节)
0x4201:SPS(序列参数集),存储分辨率、编码等级等核心参数(标准 7.4.2.2 节)
0x4401:PPS(图像参数集),存储切片解码相关配置(标准 7.4.2.3 节)
0x2601:关键帧(即时解码刷新帧),HEVC 标准定义的关键帧类型,独立解码(标准 7.4.3.3 节)
0x0201:非关键帧(清洁随机接入帧),非 IDR I 帧,支持随机接入(标准 7.4.3.5 节)

音频

AAC (Advanced Audio Coding)

标准来源:ISO/IEC 13818-7(通用音频标准) | ISO/IEC 14496-3(音频对象编码标准)
核心标识(ADTS 格式,标准 1.A.3.1 节定义):
0xFFF:12 位同步头,用于快速定位 AAC 帧起始位置(同步字字段)
ADTS:音频数据传输流,包含采样率、声道数、帧长度等 7 字节固定帧头结构

G.711A (PCMA)

标准来源:ITU-T G.711(脉冲编码调制标准)
核心特征
核心参数(标准 A.1 节定义):8kHz 采样率、8bit A 律量化、64kbps 固定码率
关键标识:静音值0xD5(标准 A.1.2 节定义,A 律量化零电平对应编码值)

G.711U (PCMU)

标准来源:ITU-T G.711(脉冲编码调制标准)
核心特征
核心参数(标准 B.1 节定义):8kHz 采样率、8bit μ 律量化、64kbps 固定码率
关键标识:静音值0xFF(标准 B.1.2 节定义,μ 律量化零电平对应编码值)

OPUS

标准来源:IETF RFC 6716(实时音频编码标准)
核心标识:TOC 字节(Table Of Contents):帧首第 1 个字节,标准 5.1 节定义,用于标识帧类型、声道数、编码模式、带宽参数
无固定同步头,依赖 RTP 协议载荷或帧长度字段定位帧边界

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 22:32:15

AI原生研发的“最后一公里”真相:奇点大会实测数据揭示——87%团队忽略的3个架构耦合陷阱与解耦实施路线图

第一章:AI原生研发的范式跃迁与“最后一公里”认知重构 2026奇点智能技术大会(https://ml-summit.org) 传统软件工程以人编写确定性逻辑为核心,而AI原生研发将模型、数据、反馈闭环深度嵌入研发全生命周期——从需求理解、代码生成、测试用例合成&#…

作者头像 李华
网站建设 2026/4/10 22:30:03

133. 克隆图(Clone Graph)——C语言实现深拷贝

题目描述给你无向连通图中一个节点的引用,请你返回该图的深拷贝(克隆)。 图中的每个节点都包含它的值 val 和其邻居的列表 neighbors。节点类定义:struct Node {int val;int numNeighbors;struct Node** neighbors; };测试用例格式…

作者头像 李华
网站建设 2026/4/10 22:27:51

5步掌握网盘直链下载助手:告别限速烦恼的终极解决方案

5步掌握网盘直链下载助手:告别限速烦恼的终极解决方案 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼…

作者头像 李华
网站建设 2026/4/10 22:27:47

KMS_VL_ALL_AIO终极指南:3分钟实现Windows与Office智能激活

KMS_VL_ALL_AIO终极指南:3分钟实现Windows与Office智能激活 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO KMS_VL_ALL_AIO是一款功能强大的智能激活脚本工具,专为Window…

作者头像 李华
网站建设 2026/4/10 22:25:09

PyCharm 强强联手:2026 年本地 IDE 连接 AI 的全攻略 (DeepSeek/Copilot/GPT)

前言 在 AI 大模型爆发的今天,如果你的 PyCharm 还只是个“单纯的编辑器”,那真的太可惜了。通过在 PyCharm 中集成 AI 助手,我们可以实现自动补全代码、一键生成单元测试、快速修复 Bug。本文将带你实操三种最主流的集成方式,让…

作者头像 李华
网站建设 2026/4/10 22:17:07

LLM推理微服务基准测试全链路指南,从Prompt扰动控制到P99延迟归因分析

第一章:AI原生软件研发性能基准测试方法 2026奇点智能技术大会(https://ml-summit.org) AI原生软件的研发范式正从“AI增强应用”转向“以模型为一等公民”的系统架构,其性能基准测试需同步重构——不再仅关注延迟与吞吐量,更要量化模型推理…

作者头像 李华