Annex-B和AVCC
格式
- Annex-B
- AVCC(H.264) 和 HVCC
Annex-B
Annex-B格式 也叫MPEG-2 transport stream format格式(ts格式), ElementaryStream格式。
AVCC(H.264)
AVCC格式 也叫AVC1格式,MPEG-4格式,字节对齐,因此也叫Byte-Stream Format。用于mp4/flv/mkv, VideoToolbox。
结构
结构主要有两点区别:
- SPS和PPS的组织格式
- 数据分隔方式不同
Annex-B -结构
- SPS和PPS按照流的方式写在头部,一般位于IDR帧之前的位置
- 采用start code分隔NAL(start code为三字节或四字节,0x000001或0x00000001,一般是四字节);
AVCC -结构
- 在头部包含或则固定的位置包含SPS PPS等信息,如flv是在第一个视频tag的avc_decoder_configuration_record中包含
- 使用NAL的长度(固定为4字节)分隔NAL
Why?
统一的格式不香吗?为啥要搞几种?
原因在于媒体可分为本地文件和直播流
- 如果是本地文件,则我们只需要读取一次SPS,PPS的信息,然后就可以一直进行解码了,所以将SPS PPS等信息放到文件的头部,打开文件,先读取这些信息初始化解码器,然后就可以顺利的解码了;其次本地文件不存在丢包或则中途进入一说,所有按照格式读取的话肯定能读取到NAL头的长度,所以像FLV,MP4,MKV这些常用的本地存储方式都用的AVCC封装。
- 如果是直播流,那我们如果放到头部的话,中途播放的用户是无法接收到SPS PPS信息,无法初始化解码器,所以必须每隔一段时间发送一次SPS PPS等信息,一般是放在IDR帧之前进行发送,所以如mpeg-ts 这种常用的直播流就是使用Annex-B结构
mpeg-ts
flv
Annex-B和AVCC相关推荐
- H.264 NALU分隔Annex B和avcC
文章目录 分隔格式 Annex B avcC 编解码器的输入输出分隔符类型 分隔格式 H.264常用的分隔方式有Annex B和avcC Annex B 这种分隔符通常用于视频会议还有文件存储例如TS ...
- H264 Annex B 与 AVCC的区别
本文链接:https://blog.csdn.net/Romantic_Energy/article/details/50508332 首先要理解的是没有标准的H.264基本流格式.文档中的确包含了一 ...
- H264码流的两种形式:Annex B和AVCC
https://blog.csdn.net/qq_15457239/article/details/100545520 https://blog.csdn.net/romantic_energy/ar ...
- (推荐阅读)H264, H265硬件编解码基础及码流分析
需求 在移动端做音视频开发不同于基本的UI业务逻辑工作,音视频开发需要你懂得音视频中一些基本概念,针对编解码而言,我们必须提前懂得编解码器的一些特性,码流的结构,码流中一些重要信息如sps,pps,v ...
- H.264笔记整理3
H.264整理3 转自:http://www.hellotongtong.com/avcodecbase/avcodecbase-h264-learning120.html 需求 在移动端做音视频开发 ...
- H264H265格式
文章目录 H264 1. NALU 1.1 NALU Header 1.1.1 nal_unit_type 2. 码流格式 2.1 Annex B格式 2.2 AVCC格式 2.2.1 extrada ...
- iOS VideoToolbox 硬编指南
引言 调用系统 VideoToolbox 的 API 实现一个硬编很容易,仔细看看文档.了解 API 的使用实现一个基本功能相信难不倒大家.但实际工作中有许多细节,一不注意就会掉坑里,甚至有些系统性问 ...
- FFmpeg之视频封装格式、流媒体协议、视频编解码协议和传输流格式、时间戳和时间基、视频像素数据
通用视频分析工具:Mediainfo.Elecard StreamEye(视频编码分析工具); 视频封装格式: ********************MP4****************** MP ...
- 应用角度理解H264码流
应用角度理解H264码流 前言 1.NAL 2.SPS.PPS 2.1 SPS 2.2 PPS 3.Slice&MB 3.1.Slice 3.2.MB 4.RTP负载 5.AUD 6.文献 前 ...
- H.264流媒体协议格式中的Annex B格式和AVCC格式深度解析
版权声明:本文为CSDN博主「Chucky_Hu」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/Roma ...
最新文章
- 第一课.python入门与环境介绍
- 清理Oracle安装目录里的一些日志信息
- 表单令牌阻止数据重复提交
- python安装第三方库太慢_Python 安装第三方库 pip install 安装慢安装不上的解决办法...
- EAT/IAT Hook
- Ubuntu 8.04 Linux + Apache2 + MySQL5 + PHP + Tomcat5.5 整合安装
- paip.提升安全性--360,WI,AWVS三款WEB程序安全检测软件使用总结
- mysql数据库的属性_mysql 数据库属性
- 习题4-6 莫尔斯代码(Morse Mismatches,ACM/ICPC World Finals 1997,UVa508)
- ACPI\VEN_LENDEV_0078[未知设备]
- 计算机重启 ie 被改,ie被修改怎么办 ie被修改的解决方法【详解】
- 9.17xiecheng面试总结
- 年轻人,劝你不要做前端
- 微博爬虫及简单数据分析
- 数据质量测试:测试数据有效性和准确性的方法
- ae正在发生崩溃_AE崩溃了怎么办?这可能是最全面的解决办法了!
- 实验七 H.264编码实验
- HDU 2977 Color Squares BFS
- 美中嘉和赴港IPO背后:毛利率大幅下滑,杨建宇控股2家公司均亏损
- 计算机南方电网试题,南方电网考试真题