当前位置: 首页 > 编程日记 > 正文

H.264 picture parameter sets成员值含义学习笔记

-picture parameter sets
  1. pic_parameter_set_id
  pic_parameter_set_id指明了在切片头中对应的某个psp.pic_parameter_set_id的值应该在0到255,包括0和255
  2. seq_parameter_set_id
  set_parameter_set_id表示激活的sps.seq_parameter_set_id应该取值在0到31之间,包括边界值.
  3. entropy_coding_mode_flag
  entropy_coding_mode_flag决定了在解码方法上使用的方法.
  如果entropy_coding_mode_flag为0的话,就使用Exp-Golomb编码方法
  如果entropy_coding_mode_flag为1的话,就使用CABAC方法.
  4. pic_order_present_flag
  pic_order_present_flag等于1表示在切片头中图像顺序值存在,pic_order_present_flag为0表示切片头中的图像顺序值不存在
  5. num_slice_groups_minus1
  num_slice_groups_minus1加上1表示一个图像中的切片组数目.当num_slice_groups_minus1为0时,图象所有的切片属于同一组.
  6. slice_group_map_type
  slice_group_map_type表示从切片组单到切片组的映射方法.slice_group_map_type的值可以取0到6.
  slice_group_map_type=0表示插值切片组.
  slice_group_map_type=1表示分散切片组映射
  slice_group_map_type=2表示一个或多个"前景"切片组和一个"剩余"切片组.
  slice_group_map_type=3,4,5时,表示变换切片组.当num_slice_groups_minus1不不1时,slice_group_map_type应该不为3,4,5.
  slice_group_map_type=6时,表示从外部对对于每个切片组单元进行外部的切片赋值.
  如果frame_mbs_only_flag为0而且mb_adaptive_frame_field_flag为1且编码图像是一帧的话,切片组映射单元是宏块对
  如果frame_mbs_only_flag为1而且mb_adaptive_frame_field_flag为1且编码图像是一场的话,切片组映射单元是宏块
  其他的情况下,切片组单元是两个宏块,它们在一帧宏块对中是垂直连续的
  7.run_length_minus1[i]被用来赋给在光栅扫描中第i个切片组指明连续切片组单元的数量.run_length_minus1[i]的取值应为0到PicSizeInMapUnits-1.
  top_left[ i ] and bottom_right[ i ] specify the top-left and bottom-right corners of a rectangle, respectively. top_left[ i ] and bottom_right[ i ] are slice group map unit positions in a raster scan of the picture for the slice group map units. For each rectangle i, all of the following constraints shall be obeyed by the values of the syntax elements top_left[ i ] and bottom_right[ i ]
  8.top_left[i] and bottom_right[i]
  top_left[i] and bottom_right[i]指出了矩形区左上角和右下角.top_left[i] and bottom_right[i]是对于一个切片组的图像的光栅扫描位置.对于每个矩形i,top_left[i] and bottom_right[i]应该满足所有的以下的约束:
  a) top_left[i]应该比bottom_right[i]小或等于,bottom_right[i]应该比PicSizeInMapUnits的值小.
  b) (top_left[i]%PicWidthInMbs)应该比(bottom_right[i]%PicWidthInMbs)的值小或等于.
  9. slice_group_change_direction_flag在slice_group_map_type为3,4,5时跟slice_group_map_type一块儿来提取生成映射类型,
  10.slice_group_change_rate_minus1
  slice_group_change_rate_minus1用来指明SliceGroupChangeRate变量的值.SliceGroupChangeRate指出当切片组的大小对于每个图像来说都不同的时候,对切片组数目的运算的乘数.slice_group_change_rate_minus1取值范围为0到PicSizeInMapUnits-1:
  SliceGroupChangeRate = slice_group_change_rate_minus1+1;
  11. pic_size_in_map_units_minus1
  pic_size_in_map_units_minus1用来指明在一个图象中使用的切片组映射单元的数目.pic_size_in_map_units_minus1应该等于PicSizeInMapUnits-1.
  12. slice_group_id[i]
  slice_group_id[i]说明了切片组单元中由光栅扫描顺序指定的第i个切片组.slice_group_id[i]应该取0到num_slice_groups_minus1.
  13. num_ref_idx_l0_active_minus1指明了参考图像列表0中的最大参考索引值,它被用来解码图像的每一个切片,列表0在num_ref_idx_active_override_flag值为0的时候被使用.当MbaffFrameFlag值为1时,num_ref_idx_l0_active_minus1是解码帧宏块的最大索引值,而2 * num_ref_idx_10_active_minus1 + 1是解码场宏块的最大索引值.num_ref_idx_l0_active_minus1的取值为0到31.
  14. num_ref_idx_l1_active_minus1与num_ref_idx_l0_active_minus1有相同的语义,只不过它是针对列表1来说的.
  15.weighted_pred_flag
  weighted_pred_flag=0表示加权预测在P和SP切片中没有被使用
  weighted_pred_flag=1表示加权预测在P和SP切片中有使用.
  16. weighted_bipred_idc
  weighted_bipred_idc=0表示默认的加权预测被应用到B切片中.
  weighted_bipred_idc=1表示外部的加权预测被应用到B切片中.
  weighted_bipred_idc=2表示内部的加权预测被应用到B切片中.
  weighted_bipred_idc的取值为0,1,2.
  17.pic_init_qp_minus26指出了对于每个切片来说的SliceQPY的初始值减26.初始值在切片层中当非0的slice_qp_delta被解码后时改变,在非0的mb_qp_delta值被在宏块层解码时再次被改变.pic_init_qp_minus26应该取-26到+25.
  18. pic_init_qs_minus26
  pic_init_qs_minus26指出了对于SP或SI切片中的SliceQSY的被始值减26.这个初始值在切片层中当一个非0的slice_qs_delta被解码的时候被修改.pic_init_qs_minus26的取值为-26到25.
  19.chroma_qp_index_offset
  chroma_qp_index_offset表示在查QPC表时,对于QPY和QSY应该加上的偏移量.chroma_qp_index_offset取值为-12到12
  20. deblocking_filter_control_present_flag
  deblocking_filter_control_present_flag=1表示在切片头处用来控制解块滤波的特征值是存在的.
  deblocking_filter_control_present_flag=0表示在切片头处用来控制解块滤波的特征值是不存在的.
  21. constrained_intra_pred_flag
  constrained_intra_pred_flag=0表示在帧内预测的时候允许剩余数据和邻近宏块解码采样.
  constrained_intra_pred_flag=1表示在受限的帧内预测,对宏块预测中使用帧内宏块预测模式只使用剩余数据和从I和SI宏块类型中的解码采样值.
  22. redundant_pic_cnt_present_flag
  redundant_pic_cnt_present_flag=0表示redundant_pic_cnt在切片头中,数据分区B和数据分区C中不存在.
  redundant_pic_cnt_present_flag=1表示redundant_pic_cnt在所有切片头中,数据分区B和数据分区C中存在.(王朝网络 wangchao.net.cn)

转载于:https://www.cnblogs.com/java315/archive/2010/09/29/2397391.html

相关文章:

软件开发进度管理

一、什么是软件项目管理  软件项目管理是按需求确定范围、按目标制定项目计划、按计划执行管理的过 程。对软件开发各阶段加强项目管理的根本目的在于增强对软件开发的控 制能力,提升软件开发的质量。软件项目的建设按软件工程的生命周期法可分为项目立项、启动、…

SQLServer之ISO游标使用

什么是游标 结果集,结果集就是select查询之后返回的所有行数据的集合。 游标则是处理结果集的一种机制吧,它可以定位到结果集中的某一行,多数据进行读写,也可以移动游标定位到你所需要的行中进行操作数据。 一般复杂的存储过程&am…

JavaScript实现鼠标拖拽登录框

拖拽的本质是登录框获得光标的偏移来调整自身的偏移。 拖拽发生时,光标相对盒子的坐标不会变化,相对于页面的坐标却在变化,二者的差值就是盒子需要的。 两个注意点: 1. 赋值给盒子的什么属性 outer.style.top e.pageY - y p…

c++ STL容器初探

什么是容器 首先,我们必须理解一下什么是容器,在C 中容器被定义为:在数据存储上,有一种对象类型,它可以持有其它对象或指向其它对像的指针,这种对象类型就叫做容器。很简单,容器就是保存其它对…

flutter开发中常用的dart插件

flutter插件官网地址:https://pub.dartlang.org/packages/ 1. image_picker 一个可以从图库选择图片,并可以用相机拍摄新照片的flutter插件 2. flutter_image 使用NetworkImageWithRetry 代替Image.network 加载网络图片可获得重试能力。 3. barcode_sca…

XML(eXtensible Markup Language)文件的解析

XML与HTML一样,文件中除了根节点以外,整个文件包含一个隐含根“/”,所以我们在解析文件同时一般采用XPath语法进行解析时,一般首先要以反“/”开始。 转载于:https://www.cnblogs.com/hibernate3-example/archive/2010/10/20/2492356.html

JavaScript 立即执行函数的两种写法

(function(str){console.log(str欢迎你~);})(行步至春深);(function(str) {console.log(str欢迎你~);}(行路易知难)); 可以看到,每种写法都比平常多出两个小括号,其中一个可以看作是调用,里面装参数,另一个可以看作防止语法错误。…

【Android动画】之Tween动画 (渐变、缩放、位移、旋转)

Android 平台提供了两类动画。 一类是Tween动画,就是对场景里的对象不断的进行图像变化来产生动画效果(旋转、平移、放缩和渐变)。 第二类就是 Frame动画,即顺序的播放事先做好的图像,与gif图片原理类似。 下面就讲一下…

Mac下PHP7.1+Nginx安装和配置

https://blog.csdn.net/haiyanggeng/article/details/79186982 PHP:7.1.13Nginx:1.12.2 1. 安装PHP# 添加源brew tap homebrew/dupesbrew tap homebrew/versionsbrew tap homebrew/homebrew-php#更新源brew update#安装brew install php71 --with-imap -…

黑木耳的功效是什么

黑木耳,生长在朽木上,形似人的耳朵,色黑或褐黑,故名黑木耳,又名木菌、树鸡。黑木耳营养极为丰富,据史料记载,它是上古时代帝王独享之佳品,含有大量的碳水化合物、蛋白质、铁、钙、磷…

Javascript 移动的海绵宝宝

效果描述&#xff1a; 做一个简单的动画效果&#xff0c;刚刷新页面时&#xff0c;SpongeBob在页面的左上角位置&#xff0c;随着时间推移&#xff0c;他匀速向右移动&#xff0c;直到右侧抵达页面右侧停下来。 分析&#xff1a; SpongeBob作为一张图片被存放在<img>里…

sqlserver任务导出Excle

--sql语句就用下面的存储过程 /*--数据导出Excel 导出查询中的数据到Excel,包含字段名,文件为真正的Excel文件,如果文件不存在,将自动创建文件,如果表不存在,将自动创建表基于通用性考虑,仅支持导出标准数据类型 使用方法&#xff1a; 直接复制执行创建储存过程-&#xff0d;陈…

Oracle集合操作

Oracle集合操作 UNION&#xff1a;并集&#xff0c;所有的内容都查询&#xff0c;重复的显示一次 UNION ALL&#xff1a;并集&#xff0c;所有的内容都显示&#xff0c;包括重复的 INTERSECT&#xff1a;交集&#xff1a;只显示重复的 MINUS&#xff1a;差集&#xff1a…

Mongodb 4.0+安装

mongodb 4.0&#xff1a;windows 环境选择默认安装路径&#xff1b;存储文件夹自定义&#xff1a; 1.原配置文件删除.mp2.data下新建db文件夹 Mongod -- dbpath D:MongoDB/data3.&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;close windows防火墙&#xff08;…

JavaScript 慢慢移动的海绵宝宝

前情提要&#xff1a;Javascript 移动的海绵宝宝 这个海绵宝宝是匀速运动、突然停下来的&#xff0c;有点不合理。现实中我们跑步都是速度慢慢减小到0。 要实现这个效果&#xff0c;就必须速度逐渐减小&#xff0c;本质上是盒子的步长逐渐减小。 step (targetLocation - nowL…

Linux(CentOS)目录操作命令、文件操作命令、压缩解压缩命令

一、目录操作命令  ls命令    — 功能说明&#xff1a;显示文件和目录列表。    — 命令格式&#xff1a;ls [参数] [<文件或目录> …]    — 常用参数&#xff1a;      -a : 不隐藏任何以“.”字符开始的条目。      -b : 用八进制形式显示非打…

阿里巴巴持续投入,etcd 正式加入 CNCF

2018 年 12 月 11 日&#xff0c;在 KubeCon CloudNativeCon 北美峰会上&#xff0c;etcd 项目正式加入云原生计算基金会&#xff08;CNCF&#xff09;。CNCF 是一个厂商中立的基金会、云原生技术推广和普及的领导者。 etcd 在 2013 年由李响&#xff0c;Brandon Philips, Al…

小机上监控AIX和数据库管理系统的运行情况直到性能优化(SQL语句优化和排除硬件问题)...

AIX下的命令 1)topas 检测操作系统的运行状况 2)nmon(c--cpu,m--memory,d--disk) 检测这3个的情况 ORACLE下的命令 提示&#xff1a;下面这些视图都是实时监控生产机上数据库的情况查询结果每个时刻都随数据库系统当时的情况在变化 &#xff08;1&#xff09; selectopname,…

从前端框架到前端架构参考资料

参考资料 • Wiki - MVC https://zh.wikipedia.org/wiki/MVC • Wiki - MVVM https://zh.wikipedia.org/wiki/MVVM • Mustach https://github.com/janl/mustache.js#usage • Handlebars Introduction | Handlebars • React React – A JavaScript library for building us…

(转)(c#)数据结构与算法分析 --树

树 首先&#xff0c;在win下&#xff0c;进入命令行&#xff0c;输入tree&#xff0c;它会以树的形式返回当前文件夹下的所有子文件夹及文件。如上图&#xff0c;就是一个树。就像一棵被颠倒过来的苹果树&#xff0c;每一个元素称之为节点&#xff0c;如图&#xff0c;A就是这棵…

.vimrc文件

1 set number 2 set shiftwidth4 3 set softtabstop4 4 set tabstop4 5 set expandtab 6 "set hlsearch 7 set noerrorbells 8 set smartindent 9 set autoindent 10 set nobackup 11 syntax on 12 filetype on 13 filetype plugin on 14 filetype indent on转载于:https:…

Javascript中undefined,NaN等特殊比较

以下内容转自&#xff1a;http://blog.csdn.net/hongweigg/article/details/380900931、问题&#xff1a;在Javascript中&#xff0c;typeof(undefined) undefined成立吗&#xff1f; 答案&#xff1a;不成立&#xff0c;全局函数 typeof()返回值类型为字符串类型&#xff0c;…

ECMAScript 6 模板字面量的常见用法

模板字面量可以理解成是字符串的一种&#xff0c;形式上用反引号 将内容括起来。 目录 特点一&#xff1a;模板字面量会保留反引号内部的空格、回车、tab,会将\n,\t翻译。 特点二&#xff1a;支持字符串插值 特点三&#xff1a;和标签函数搭配食用 特点一&#xff1a;模板…

Pycharm去掉项目所有 # 注释

通过快捷键ctrlshiftR 进入 项目全局替换窗口&#xff0c;点击右上角 勾选正则&#xff0c;然后 搜索框输入 (#.*) 即可 &#xff0c;然后点击 replace all 去掉所有注释 转载于:https://www.cnblogs.com/rgcLOVEyaya/p/RGC_LOVE_YAYA_890days.html

引擎设计跟踪(九.14.2i) Android GLES 3.0 完善

最近把渲染设备对应的GLES的API填上了. 主要有IRenderDevice/IShader/ITexture/IGraphicsResourceManager/IIndexBuffer/IVertexBuffer.都是体力活, 根据文档(https://www.khronos.org/opengles/sdk/docs/man3/)填上对应的API就可了.遇到的问题纪录在下面: Stick to the standa…

NUnit在VS2008中的安装使用

声明&#xff1a;在方法二中图片可以显示不完整&#xff0c;读者可以将图片保存到本地查看。看完再删除了。方法一为转载的。方法二是自己写的。 方法一、 1、从NUnit官网&#xff08;http://www.nunit.org/index.php&#xff09;下载最新版本NUnit&#xff0c;当前版本为NUnit…

Egg 初学笔记

egg是什么 egg.js简称egg&#xff0c;属于小而美的框架&#xff0c;不直接提供功能&#xff0c;它拥有强大的插件机制&#xff0c;扩展性好&#xff0c;egg基于koa(https://eggjs.org/zh-cn/intro/egg-and-koa.html)开发&#xff0c;可基于egg制定上层框架。 Koa特点 提供很好…

HttpModule与HttpHandler详解

ASP.NET对请求处理的过程&#xff1a;当请求一个*.aspx文件的时候&#xff0c;这个请求会被inetinfo.exe进程截获&#xff0c;它判断文件的后缀&#xff08;aspx&#xff09;之后&#xff0c;将这个请求转交给 ASPNET_ISAPI.dll&#xff0c;ASPNET_ISAPI.dll会通过http管道&…

《梦断代码Dreaming In Code》阅读笔记(三)

最后这几章感觉上更多是从软件完成整体上来讲的。比如说技术、方法等。 在我看来&#xff0c;其实一个团队一直坚持一种好的、先进的方法是不可少的。如果一个优秀的团队刚愎自用&#xff0c;只随着成员们喜好发展&#xff0c;那不能长久。比如说&#xff0c;在开发软件工程课程…

个人建议之PHP面试的准备

你好&#xff0c;是我琉忆——PHP程序员面试笔试系列图书的作者。 随着越来越多的人开始迈入PHP开发工程师的队列&#xff0c;不管是一个PHP新手还是一个有一两年开发经验的PHPer都不得不去面对找工作前面试这件事。 我现在以个人对面试的经历和见解来全面的对PHP面试考点PHP真…