一、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码流格式的更多相关文章

  1. H.264/H265码流解析

    H.264/H265码流解析 一.H.264码流解析 一个原始的H.264 NALU 单元常由 [StartCode] [NALU Header] [NALU Payload] 三部分组成 一个原始的 ...

  2. H265码流分析

    H265相比较于H264,除了包含SPS.PPS外,还多包含一个VPS:在NALU header上,H.264的HALU header是一个字节,而H.265则是两个字节. 以OX4001为例,头信息 ...

  3. 【知识点】H264, H265硬件编解码基础及码流分析

    前言 音视频开发需要你懂得音视频中一些基本概念,针对编解码而言,我们必须提前懂得编解码器的一些特性,码流的结构,码流中一些重要信息如sps,pps,vps,start code以及基本的工作原理,而大 ...

  4. 嵌入式 H264—MP4格式及在MP4文件中提取H264的SPS、PPS及码流

    一.MP4格式基本概念 MP4格式对应标准MPEG-4标准(ISO/IEC14496) 二.MP4封装格式核心概念 1  MP4封装格式对应标准为 ISO/IEC 14496-12(信息技术 视听对象 ...

  5. 【视频编解码·学习笔记】4. H.264的码流封装格式

    一.码流封装格式简单介绍: H.264的语法元素进行编码后,生成的输出数据都封装为NAL Unit进行传递,多个NAL Unit的数据组合在一起形成总的输出码流.对于不同的应用场景,NAL规定了一种通 ...

  6. [转]【流媒體】H264—MP4格式及在MP4文件中提取H264的SPS、PPS及码流

    [流媒體]H264—MP4格式及在MP4文件中提取H264的SPS.PPS及码流 SkySeraph Apr 1st 2012  Email:skyseraph00@163.com 一.MP4格式基本 ...

  7. 【视频编解码·学习笔记】4. H.264的码流封装格式 & 提取NAL有效数据

    一.码流封装格式简单介绍: H.264的语法元素进行编码后,生成的输出数据都封装为NAL Unit进行传递,多个NAL Unit的数据组合在一起形成总的输出码流.对于不同的应用场景,NAL规定了一种通 ...

  8. 多媒体开发之---H264—MP4格式及在MP4文件中提取H264的SPS、PPS及码流

    一.MP4格式基本概念 MP4格式对应标准MPEG-4标准(ISO/IEC14496) 二.MP4封装格式核心概念 1  MP4封装格式对应标准为 ISO/IEC 14496-12(信息技术 视听对象 ...

  9. 利用ffmpeg0.6.1把.h264纯码流打包成.mp4 .avi等格式 (转载)

    转自:http://cache2.weidaohang.org/h/index.php?q=aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemh1cWluZ183MzkvYXJ0aWNsZS ...

随机推荐

  1. Python 清华镜像设置

    大家在通过pip 或conda 下载一些很大的第三方库时是不是有一种等到坟头的草都三尺高了,还没下载完的感觉,而且大的第三方库长时间下载,可能会导致超时自动中断下载,感谢清华的大佬们 临时使用: pi ...

  2. Kafka Connector无法启动的原因

    如图:启动Connector的时候一直提示报错. 后面找了一下网上发现原因, 基本原因就是Kafka的lib包和插件包都添加到ClassPath里面了 而这两地方都有Kafka-Client的jar包 ...

  3. eclipse 如何从Gitee.com克隆工程到本地,并运行

    1.再项目资源管理器里选择导入,导入 2.在导入向导中选择Git,选择来自Git的项目 3.选克隆URL 4.输入URL 和用户密码,点击下一步 4.下一步 5.选择保存路径 6.选择下一步,自动导入 ...

  4. BigData进阶--Spark中的函数与符号

    转自:https://blog.csdn.net/YSC1123/article/details/78905090 1.Character.isDigit() 判断是否为数字 2.Character. ...

  5. ES简介及特点

    1.ES是什么? ES是一个高度可伸缩的开源的全文检索和分析引擎,它允许你以近实时的方式快速存储.搜索.分析大量数据,ES是基于Lucence开发,隐藏其复杂性,提供了简单易用的restful api ...

  6. python — 进程

    目录 1. 进程 1.进程就是一个运行中的程序(是对正在运行程序的一个抽象). 2.程序和进程之间的区别: 程序只是一个文件 进程是这个文件被CPU运行起来了 程序是永久的,进程是暂时的. 3.进程- ...

  7. java8 List对象集合去重

    //测试数据 WaterMeter w0 = new WaterMeter(); WaterMeter w1 = new WaterMeter(); WaterMeter w2 = new Water ...

  8. Guava -- 集合类 和 Guava Cache

    Guava -- 集合类 和 Guava Caches 1. 什么是 Guava Guava 是 google 推出的一个第三方 java 库,用来代替 jdk 的一些公共操作,给我印象特别深的就是 ...

  9. sql当前时间往后半年

    select  DATEADD(MONTH, -6, GETDATE()) select  DATEADD(hh, -6, GETDATE())

  10. 谷歌浏览器禁用JS步骤

    前奏: 当你想访问一个页面,因为不符合访问条件,而被JS阻拦:或者你打开的页面特效太多,干扰视线:亦或者JS的某个功能禁止了你的某些行为: 是不是很难受, 好办,咱给他禁了不就好啦,大胆地屏蔽它,不管 ...