H265码流格式
一、H265码流格式
VPS:视频参数集,用于传输视频分级信息,有利于兼容标准在可分级视频编码或多视点视频的扩展。
NALU header定义:
NALU header(){ | Descriptor |
forbidden_zero_bit | f(1) |
nalu unit type | u(6) |
nuh_layer_id | u(6) |
nuh_temporal_id_plus1 | u(3) |
H264的NALU type是首字节&0x1f,H265的NALU type是(首字节&0x7E)>>1;
NALU type定义:
/**
* Table 7-3: NAL unit type codes
*/
enum HEVCNALUnitType {
HEVC_NAL_TRAIL_N = ,
HEVC_NAL_TRAIL_R = ,
HEVC_NAL_TSA_N = ,
HEVC_NAL_TSA_R = ,
HEVC_NAL_STSA_N = ,
HEVC_NAL_STSA_R = ,
HEVC_NAL_RADL_N = ,
HEVC_NAL_RADL_R = ,
HEVC_NAL_RASL_N = ,
HEVC_NAL_RASL_R = ,
HEVC_NAL_VCL_N10 = ,
HEVC_NAL_VCL_R11 = ,
HEVC_NAL_VCL_N12 = ,
HEVC_NAL_VCL_R13 = ,
HEVC_NAL_VCL_N14 = ,
HEVC_NAL_VCL_R15 = ,
HEVC_NAL_BLA_W_LP = ,
HEVC_NAL_BLA_W_RADL = ,
HEVC_NAL_BLA_N_LP = ,
HEVC_NAL_IDR_W_RADL = ,
HEVC_NAL_IDR_N_LP = ,
HEVC_NAL_CRA_NUT = ,
HEVC_NAL_IRAP_VCL22 = ,
HEVC_NAL_IRAP_VCL23 = ,
HEVC_NAL_RSV_VCL24 = ,
HEVC_NAL_RSV_VCL25 = ,
HEVC_NAL_RSV_VCL26 = ,
HEVC_NAL_RSV_VCL27 = ,
HEVC_NAL_RSV_VCL28 = ,
HEVC_NAL_RSV_VCL29 = ,
HEVC_NAL_RSV_VCL30 = ,
HEVC_NAL_RSV_VCL31 = ,
HEVC_NAL_VPS = ,
HEVC_NAL_SPS = ,
HEVC_NAL_PPS = ,
HEVC_NAL_AUD = ,
HEVC_NAL_EOS_NUT = ,
HEVC_NAL_EOB_NUT = ,
HEVC_NAL_FD_NUT = ,
HEVC_NAL_SEI_PREFIX = ,
HEVC_NAL_SEI_SUFFIX = ,
};
二、丢帧
在性能不足,或者音画不同步时,需要进行丢帧,H264丢帧根据nal_ref_idc来判断,H265根据来NALU type判断。以下type是可以丢帧,且不花屏的:HEVC_NAL_TRAIL_N、HEVC_NAL_TSA_N、HEVC_NAL_STSA_N、HEVC_NAL_RADL_N、HEVC_NAL_RASL_N。
H265码流格式的更多相关文章
- H.264/H265码流解析
H.264/H265码流解析 一.H.264码流解析 一个原始的H.264 NALU 单元常由 [StartCode] [NALU Header] [NALU Payload] 三部分组成 一个原始的 ...
- H265码流分析
H265相比较于H264,除了包含SPS.PPS外,还多包含一个VPS:在NALU header上,H.264的HALU header是一个字节,而H.265则是两个字节. 以OX4001为例,头信息 ...
- 【知识点】H264, H265硬件编解码基础及码流分析
前言 音视频开发需要你懂得音视频中一些基本概念,针对编解码而言,我们必须提前懂得编解码器的一些特性,码流的结构,码流中一些重要信息如sps,pps,vps,start code以及基本的工作原理,而大 ...
- 嵌入式 H264—MP4格式及在MP4文件中提取H264的SPS、PPS及码流
一.MP4格式基本概念 MP4格式对应标准MPEG-4标准(ISO/IEC14496) 二.MP4封装格式核心概念 1 MP4封装格式对应标准为 ISO/IEC 14496-12(信息技术 视听对象 ...
- 【视频编解码·学习笔记】4. H.264的码流封装格式
一.码流封装格式简单介绍: H.264的语法元素进行编码后,生成的输出数据都封装为NAL Unit进行传递,多个NAL Unit的数据组合在一起形成总的输出码流.对于不同的应用场景,NAL规定了一种通 ...
- [转]【流媒體】H264—MP4格式及在MP4文件中提取H264的SPS、PPS及码流
[流媒體]H264—MP4格式及在MP4文件中提取H264的SPS.PPS及码流 SkySeraph Apr 1st 2012 Email:skyseraph00@163.com 一.MP4格式基本 ...
- 【视频编解码·学习笔记】4. H.264的码流封装格式 & 提取NAL有效数据
一.码流封装格式简单介绍: H.264的语法元素进行编码后,生成的输出数据都封装为NAL Unit进行传递,多个NAL Unit的数据组合在一起形成总的输出码流.对于不同的应用场景,NAL规定了一种通 ...
- 多媒体开发之---H264—MP4格式及在MP4文件中提取H264的SPS、PPS及码流
一.MP4格式基本概念 MP4格式对应标准MPEG-4标准(ISO/IEC14496) 二.MP4封装格式核心概念 1 MP4封装格式对应标准为 ISO/IEC 14496-12(信息技术 视听对象 ...
- 利用ffmpeg0.6.1把.h264纯码流打包成.mp4 .avi等格式 (转载)
转自:http://cache2.weidaohang.org/h/index.php?q=aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemh1cWluZ183MzkvYXJ0aWNsZS ...
随机推荐
- 华三F100系列、华为USG6300系列防火墙 策略路由配置实例
策略路由,是一种比基于目标网络进行路由更加灵活的数据包路由转发机制,路由器将通过路由图决定如何对需要路由的数据包进行处理,路由图决定了一个数据包的下一跳转发路由器. 策略路由的应用: 1.可以不仅仅依 ...
- 零零散散的python笔记 2
python2和python3的兼容性方面 工具 2to3 python3中自带的工具,可以检查python2升级到python3的diff: 2to3 x.py 2to3 -w x.py # ...
- navicat建立本地连接出错解决
使用navicat建立本地连接时报错: 2.设置用户配置项 (1) 查看用户信息 select host,user,plugin,authentication_string from mysql.us ...
- hdoj1011(树上分组背包)
题目链接:https://vjudge.net/problem/HDU-1011 题意:给定一颗树,每个结点有两个属性,即花费V和价值w,并且选择子结点时必须选择父结点,求总花费不超过m的最大价值. ...
- java集合List解析
作为一个Developer,Java集合类是我们在工作中运用最多的.最频繁的类.相比于数组(Array)来说,集合类的长度可变,更加适合于现代开发需求: Java集合就像一个容器,可以存储任何类型的数 ...
- SQL SERVER 数据有CHAR(10),CHAR(13),CHAR(9)隐藏字符
原文:SQL SERVER 数据有CHAR(10),CHAR(13),CHAR(9)隐藏字符 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Givi ...
- curl post请求封装
/* POST /servlet/ICBCCMPAPIReqServlet?userID=jyi.y.1001&PackageID=201807311347539185&SendTim ...
- DRF 序列化组件 序列化的两种方式 反序列化 反序列化的校验
序列化组件 django自带的有序列化组件不过不可控不建议使用(了解) from django.core import serializers class Books(APIView): def ge ...
- 使用python连接mysql数据库——pymysql模块的使用
安装pymysql pip install pymysql 使用pymysql 使用数据查询语句 查询一条数据fetchone() from pymysql import * conn = conne ...
- WPF 异步加载窗体
加载某个界面时,需要获取数据,而数据返回的时间比较长,这个时候可以异步加载界面. 1.在该窗体的加载事件(Load)中编写以下代码: new Thread(p=>{DataBinding();} ...