对于配置文件的认识这是很重要的,因为文件里面规定了编码的各种参数。在HEVC中包含两种配置文件:编码方式的配置文件和测试序列的配置文件。
一.编码方式的配置文件
下面以HM10.1中编码方式的配置文件为例说明下。
首先,在HM10.1当中有如图1所示的几种配置文件。在配置文件名中,同类型,以"main"结尾与“main10”结尾的主要区别在于Profile(档次)和内部位深,如encoder_intra_main与encoder_intra_main10;不同类型的,主要区别在于编码结构,intra表示:每一帧都是按照帧内方式时行编码,lowdelay和lowdelay_p 表示: 只有第一帧按照帧内编码方式进行编码,随后的各帧都作为一般的P帧或B帧进行编码,randomaccess表示:分批B帧构成,周期性地插入一些随机访问帧。测试者可以根据自己的需要选择适当的编码方式配置文件,如进行帧内快速算法的研究一般选择“intra”的配置文件。
图1
其次,介绍下编码方式配置文件的详细内容,以encoder_intra_main为例。

#======== File I/O =====================输入输出文件

BitstreamFile                 : str.bin  编码后获得的码流,即用来传输的文件,默认存储地址为调试时的绝对路径。但操作者可以更改名称及存储地址,如下:F:\\HEVCres\\BasketballDrill_832x480_50_str.bin

ReconFile                     : rec.yuv 重建文件,即获得的编码视频文件,同样可以改变名称及存储地址,如F:\\HEVCres\\BasketballDrill_832x480_50_rec.yuv

#======== Unit definition ================单元定义(应该是指LCU)

MaxCUWidth                    : 64          # Maximum coding unit width in pixel

最大编码单元LCU的宽

MaxCUHeight                   : 64          # Maximum coding unit height in pixel

最大编码单元LCU的高

MaxPartitionDepth             : 4           # Maximum coding unit depth

最大深度4,深度范围[0,1,2,3],对应的尺寸为64X64到8X8

QuadtreeTULog2MaxSize         : 5           # Log2 of maximum transform size for

# quadtree-based TU coding (2...6)

Log2(32)=5

QuadtreeTULog2MinSize         : 2           # Log2 of minimum transform size for

# quadtree-based TU coding (2...6)

Log2(4)=2

QuadtreeTUMaxDepthInter       : 3   (帧间TU最大深度)

QuadtreeTUMaxDepthIntra       : 3

#======== Coding Structure =============编码结构

IntraPeriod                   : 1           # Period of I-Frame ( -1 = only first)

DecodingRefreshType           : 0           # Random Accesss 0:none, 1:CDR, 2:IDR

Random Accesss :解码更新类型,即随机接入类型

GOPSize                       : 1           # GOP Size (number of B slice = GOPSize-1)

图像组大小

#        Type POC QPoffset QPfactor tcOffsetDiv2 betaOffsetDiv2  temporal_id #ref_pics_active #ref_pics reference pictures

#=========== Motion Search =============运动搜索

FastSearch                    : 1           # 0:Full search  1:TZ search

快速搜索类型,0:全搜索;1:TZ搜索

SearchRange                   : 64          # (0: Search range is a Full frame)

搜索的范围

HadamardME                    : 1           # Use of hadamard measure for fractional ME

fractional ME分数(像素位置)运动估计

FEN                           : 1           # Fast encoder decision   快速编码器决策

FDM                           : 1           # Fast Decision for Merge RD cost  快速合并RD代价决策

#======== Quantization =============量化

QP                            : 32          # Quantization parameter(0-51)

量化参数范围:0-51

MaxDeltaQP                    : 0           # CU-based multi-QP optimization

基于CU的多QP优化

MaxCuDQPDepth                 : 0           # Max depth of a minimum CuDQP for sub-LCU-level delta QP

DeltaQpRD                     : 0           # Slice-based multi-QP optimization

基于片的多QP优化

RDOQ                          : 1           # RDOQ

率失真优化量化

RDOQTS                        : 1           # RDOQ for transform skip

变换跳过的率失真优化量化

#=========== Deblock Filter ============去块滤波

DeblockingFilterControlPresent: 0           # Dbl control params present (0=not present, 1=present)

Db1控制是否使用去块滤波器

LoopFilterOffsetInPPS         : 0           # Dbl params: 0=varying params in SliceHeader, param = base_param + GOP_offset_param; 1=constant params in PPS, param = base_param)

LoopFilterDisable             : 0           # Disable deblocking filter (0=Filter, 1=No Filter)

LoopFilterBetaOffset_div2     : 0           # base_param: -13 ~ 13

LoopFilterTcOffset_div2       : 0           # base_param: -13 ~ 13

#=========== Misc. ============

InternalBitDepth              : 8           # codec operating bit-depth

编解码控制比特深度,表示主要档次,即MAIN

#=========== Coding Tools =================编码工具

SAO                           : 1           # Sample adaptive offset  (0: OFF, 1: ON)  率样点自适应偏移

AMP                           : 1           # Asymmetric motion partitions (0: OFF, 1: ON) 非对称运动分割

TransformSkip                 : 1           # Transform skipping (0: OFF, 1: ON)

TransformSkipFast             : 1           # Fast Transform skipping (0: OFF, 1: ON)

SAOLcuBoundary                : 0           # SAOLcuBoundary using non-deblocked pixels (0: OFF, 1: ON)

SAOLCU边界像素用未经过去块滤波操作的像素值表示

#============ Slices ================片

SliceMode                : 0                # 0: Disable all slice options.

# 1: Enforce maximum number of LCU in an slice,

# 2: Enforce maximum number of bytes in an 'slice'

# 3: Enforce maximum number of tiles in a slice

SliceArgument            : 1500             # Argument for 'SliceMode'.

# If SliceMode==1 it represents max. SliceGranularity-sized blocks per slice.

# If SliceMode==2 it represents max. bytes per slice.

# If SliceMode==3 it represents max. tiles per slice.

LFCrossSliceBoundaryFlag : 1                # In-loop filtering, including ALF and DB, is across or not across slice boundary.

ALF与DB两个滤波器在片边界是否相交

# 0:not across, 1: across

#============ PCM ================ PCM模式

PCMEnabledFlag                      : 0                # 0: No PCM mode

PCMLog2MaxSize                      : 5                # Log2 of maximum PCM block size.

PCMLog2MinSize                      : 3                # Log2 of minimum PCM block size.

PCM块最大为32X32,最小为8X8

PCMInputBitDepthFlag                : 1                # 0: PCM bit-depth is internal bit-depth. 1: PCM bit-depth is input bit-depth.

PCMFilterDisableFlag                : 0                # 0: Enable loop filtering on I_PCM samples. 1: Disable loop filtering on I_PCM samples.

#============ Tiles ================条

UniformSpacingIdc                   : 0                # 0: the column boundaries are indicated by ColumnWidth array, the row boundaries are indicated by RowHeight array

Tiles的列边界由列宽数组决定

# 1: the column and row boundaries are distributed uniformly

NumTileColumnsMinus1                : 0                # Number of columns in a picture minus 1

ColumnWidthArray                    : 2 3              # Array containing ColumnWidth values in units of LCU (from left to right in picture)

NumTileRowsMinus1                   : 0                # Number of rows in a picture minus 1

RowHeightArray                      : 2                # Array containing RowHeight values in units of LCU (from top to bottom in picture)

LFCrossTileBoundaryFlag           : 1                  # In-loop filtering is across or not across tile boundary.

# 0:not across, 1: across

#============ WaveFront ================波前

WaveFrontSynchro                    : 0                # 0:  No WaveFront synchronisation (WaveFrontSubstreams must be 1 in this case).

波前并行处理同步

# >0: WaveFront synchronises with the LCU above and to the right by this many LCUs.

#=========== Quantization Matrix =================量化矩阵

ScalingList                   : 0                      # ScalingList 0 : off, 1 : default, 2 : file read

ScalingListFile               : scaling_list.txt       # Scaling List file name. If file is not exist, use Default Matrix.

#============ Lossless ================失真

TransquantBypassEnableFlag: 0  # Value of PPS flag.

CUTransquantBypassFlagValue: 0 # Constant lossless-value signaling per CU, if TransquantBypassEnableFlag is 1.

### DO NOT ADD ANYTHING BELOW THIS LINE ###

### DO NOT DELETE THE EMPTY LINE BELOW ###

二.测试序列的配置文件

以BasketballDrill_832x480_50.cfg为例

#======== File I/O ===============
InputFile                     : ../../origCfP/BasketballDrill_832x480_50.yuv

输入文件名,将其改成测试序列的地址
InputBitDepth                 : 8           # Input bitdepth

输入位深
FrameRate                     : 50          # Frame Rate per second

帧率
FrameSkip                     : 0           # Number of frames to be skipped in input

输入帧跳过帧数
SourceWidth                   : 832         # Input  frame width
SourceHeight                  : 480         # Input  frame height

测试序列的分辨率
FramesToBeEncoded              : 500         # Number of frames to be coded

编码帧数

HM 中cfg配置文件相关推荐

  1. python中cfg_python操作cfg配置文件

     *.cfg文件一般是程序运行的配置文件,python为读写常见配置文件提供了一个ConfigParser模块,所以在python中解析配置文件相当简单,下面就举例说明一下具体的操作方法. 写文件 ...

  2. zookeeper中zoo.cfg配置文件参数解释,常用命令整理

    zoo.cfg配置文件详解 zookeeper常用命令 ./zkServer.sh start //启动zookeeper服务端 ./zkServer.sh status //查看zookeeper状 ...

  3. python中cfg_python操作cfg配置文件方式

    *.cfg文件一般是程序运行的配置文件,python为读写常见配置文件提供了一个ConfigParser模块,所以在python中解析配置文件相当简单,下面就举例说明一下具体的操作方法. 写文件代码: ...

  4. python的cfg是什么模块_python操作cfg配置文件方式

    *.cfg文件一般是程序运行的配置文件,python为读写常见配置文件提供了一个ConfigParser模块,所以在python中解析配置文件相当简单,下面就举例说明一下具体的操作方法. 写文件代码: ...

  5. spring cloud中通过配置文件自定义Ribbon负载均衡策略

    2019独角兽企业重金招聘Python工程师标准>>> spring cloud中通过配置文件自定义Ribbon负载均衡策略 博客分类: 微服务 一.Ribbon中的负载均衡策略 1 ...

  6. idea中properties配置文件没有代码提示及代码高亮问题解决方案

    idea中properties配置文件没有代码提示及代码高亮问题解决方案 参考文章: (1)idea中properties配置文件没有代码提示及代码高亮问题解决方案 (2)https://www.cn ...

  7. Ansible — ansible.cfg 配置文件解析

    目录 文章目录 目录 配置类型 ansible.cfg 配置文件 [defaults] Section [ssh_connection] Section 配置类型 Ansible 支持以下配置类型,读 ...

  8. 如何在MFC中读写配置文件

    如何在MFC中读写配置文件 在我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下: 一.将信息写入.INI ...

  9. C++中关于配置文件的问题

    眼下本人考虑到部门配置文件较多,所以想写个配置文件检測程序. 眼下大致的思路例如以下三部分; 1, 读取配置文件的内容(*.ini). 查找配置文件,代码例如以下 void CDataBaseDlg: ...

最新文章

  1. html编辑器渗透,渗透笔记40、web编辑器漏洞手册.pdf
  2. a commit git 参数是什么意思_git commit 命令
  3. 经济和信息化谋定研究-左晓栋:国家网络安全事件应急预案
  4. 数据结构 - 单链表(Linked List)实现在内存中实现数据以链表形式生成并根据序号排序
  5. String类、StringBuffer类、StringBuilder类的区别
  6. Madagascar和MPI混合编程的Makefile文件配置
  7. python mock支付_python mock知识03
  8. Sicily/1927. Conflict
  9. Android 插件化和热修复知识梳理
  10. mysql字段类型解析_MySQL数据类型之数字类型详细解析
  11. python-银行转账系统的简单实现及test
  12. 歌单详情内容-播放列表 (音乐app项目-第8步)
  13. 爬取京东图书价格信息分析
  14. 如何让文字下划线border-bottom和文字的长度一致
  15. 【PS】61款中国风古典背景水墨山水古风韵味PSD分层设计素材
  16. SQL分析阿里云淘宝电商数据
  17. cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library:
  18. tecplot 脚本文件
  19. java使用jxls导出excel功能
  20. 解决“非法字符:‘\u200b‘”,来避坑

热门文章

  1. ​探秘 Web 水印技术
  2. java removeattribute_springboot使用shiro后HttpSession的removeAttribute无效
  3. 网页版聊天功能 contentEditable属性,角标问题
  4. 根据实体类生成数据库表
  5. sharepoint2010隐藏site workflows
  6. 如何以公司身份上架APP
  7. 浪潮java笔试大题
  8. hibernate log4j配置祥解
  9. xlinx项目系列之基于zynq-7020ISP图像处理
  10. 浅谈数据中心机房UPS蓄电池在线监测系统研究