视频音频编码知识.doc_第1页
视频音频编码知识.doc_第2页
视频音频编码知识.doc_第3页
视频音频编码知识.doc_第4页
视频音频编码知识.doc_第5页
已阅读5页,还剩67页未读 继续免费阅读

视频音频编码知识.doc.doc 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

audio。AAC(Advanced Audio Coder)区别于ac3,mp3(全称MPEG1 Layer3,可不是MPEG3的缩写哦)等等,aac是Mp4官方指定的mp4音频规格。和video一样,她也有两个profile:- LC-AAC (Low Complexity) 也被叫做MAIN Level 2- HE-AAC (High Efficiency) 也被叫做AAC SBR/AAC+/aacplus再次抛开技术性的数据,HE比LC更高级一些,允许你在相同音质下已更低的bitrate编码。帧间压缩。 其次,时间相关性的统计分析:统计的结果表明,在间隔12帧的图像中,各像素只有10%以下的点,其亮度差值变化超过2%,而色度差值的变化只有1%以下。 采用的压缩方法: 分组:把几帧图像分为一组(GOP),为防止运动变化,帧数不宜取多。 1.定义帧:将每组内各帧图像定义为三种类型,即I帧、B帧和P帧; 2.预测帧:以I帧做为基础帧,以I帧预测P帧,再由I帧和P帧预测B帧; 3.数据传输:最后将I帧数据与预测的差值信息进行存储和传输。 I帧:帧内编码帧 I帧特点: 1.它是一个全帧压缩编码帧。它将全帧图像信息进行JPEG压缩编码及传输; 2.解码时仅用I帧的数据就可重构完整图像; 3.I帧描述了图像背景和运动主体的详情; 4.I帧不需要参考其他画面而生成; 5.I帧是P帧和B帧的参考帧(其质量直接影响到同组中以后各帧的质量); 6.I帧是帧组GOP的基础帧(第一帧),在一组中只有一个I帧; 7.I帧不需要考虑运动矢量; 8.I帧所占数据的信息量比较大。 P帧:前向预测编码帧。 P帧的预测与重构:P帧是以I帧为参考帧,在I帧中找出P帧“某点”的预测值和运动矢量,取预测差值和运动矢量一起传送。在接收端根据运动矢量从I帧中找出P帧“某点”的预测值并与差值相加以得到P帧“某点”样值,从而可得到完整的P帧。 P帧特点: 1.P帧是I帧后面相隔12帧的编码帧; 2.P帧采用运动补偿的方法传送它与前面的I或P帧的差值及运动矢量(预测误差); 3.解码时必须将I帧中的预测值与预测误差求和后才能重构完整的P帧图像; 4.P帧属于前向预测的帧间编码。它只参考前面最靠近它的I帧或P帧; 5.P帧可以是其后面P帧的参考帧,也可以是其前后的B帧的参考帧; 6.由于P帧是参考帧,它可能造成解码错误的扩散; 7.由于是差值传送,P帧的压缩比较高。 B帧:双向预测内插编码帧。 B帧的预测与重构 B帧以前面的I或P帧和后面的P帧为参考帧,“找出”B帧“某点”的预测值和两个运动矢量,并取预测差值和运动矢量传送。接收端根据运动矢量在两个参考帧中“找出(算出)”预测值并与差值求和,得到B帧“某点”样值,从而可得到完整的B帧。 B帧特点 1.B帧是由前面的I或P帧和后面的P帧来进行预测的; 2.B帧传送的是它与前面的I或P帧和后面的P帧之间的预测误差及运动矢量; 3.B帧是双向预测编码帧; 4.B帧压缩比最高,因为它只反映丙参考帧间运动主体的变化情况,预测比较准确; 5.B帧不是参考帧,不会造成解码错误的扩散。 注:I、B、P各帧是根据压缩算法的需要,是人为定义的,它们都是实实在在的物理帧,至于图像中的哪一帧是I帧,是随机的,一但确定了I帧,以后的各帧就严格按规定顺序排列。x264参数介绍(一、帧类型和码率控制)本页说明所有x264参数之目的和用法。参数的排列相同于在x264 -fullhelp出现的顺序。参阅:X264统计资料输出、X264统计资料档案和X264编码建议。x264设定说明x264带有一些内置的文件。要阅读此说明,执行x264 -help、x264 -longhelp或x264 -fullhelp。越后面的选项会提供越详细的资讯。输入以一个位置引数指定输入的视讯。例如:x264.exe -output NUL C:input.avs x264 -output /dev/null /input.y4m当输入是raw YUV格式时,还必须告知x264视讯的分辨率。你可能也要使用-fps来指定帧率:x264.exe -output NUL -fps 25 -input-res 1280x720 D:input.yuv x264 -output /dev/null -fps 30000/1001 -input-res 640x480 /input.yuv默认为了减少使用者花费时间和精力在命令列上而设计的一套系统。这些设定切换了哪些选项可以从x264 -fullhelp的说明里得知。profile默认:无说明:限制输出文件的profile。这个参数将覆盖其它所有值,此选项能保证输出profile兼容的视频流。如果使用了这个选项,将不能进行无损压缩(qp 0 or crf 0)。可选:baseline,main,high- Baseline Profile 提供I/P帧,仅支持progressive(逐行扫描)和CAVLC - Extended Profile 提供I/P/B/SP/SI帧,仅支持progressive(逐行扫描)和CAVLC - Main Profile 提供I/P/B帧,支持progressive(逐行扫描)和interlaced(隔行扫描),提供CAVLC或CABAC - High Profile (也就是FRExt)在Main Profile基础上新增:8x8 intra prediction(8x8 帧内预测), custom quant(自定义量化), lossless video coding(无损视频编码), 更多的yuv格式(4:4:4.)建议:不设置。除非解码环境只支持main或者baseline profile的解码。preset默认:medium一些在压缩效率和运算时间中平衡的预设值。如果指定了一个预设值,它会在其它选项生效前生效。可选:ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow and placebo.建议:可接受的最慢的值tune默认:无说明:在上一个选项基础上进一步优化输入。如果定义了一个tune值,它将在preset之后,其它选项之前生效。可选:film, animation, grain, stillimage, psnr, ssim, fastdecode, zerolatency and touhou.建议:根据输入选择。如果没有合适的就不要指定。slow-firstpass默认:无说明:随着预设值机制在r1177版本的出现,使用pass 1会在解析命令行时增加以下设置:* ref 1* no-8x8dct* partitions i4x4 (if originally enabled, else none)* me dia* subme MIN( 2, subme )* trellis 0如果设置preset=placebo则自动关闭此特性。如果想显式关闭此特性,使用slow-firstpass。帧类型keyint默认:250说明:设置x264输出中最大的IDR帧(亦称关键帧)间距。IDR帧是视频流的“分隔符”,所有帧都不可以使用越过关键帧的帧作为参考帧。IDR帧是I帧的一种,所以它们也不参照其它帧。这意味着它们可以作为视频的搜索(seek)点。通过这个设置可以设置IDR帧的最大间隔帧数(亦称最大图像组长度)。较大的值将导致IDR帧减少(会用占用空间更少的P帧和B帧取代),也就同时减弱了参照帧选择的限制。较小的值导致减少搜索一个随机帧所需的平均时间。建议:默认值(fps的10倍)对大多数视频都很好。如果在为蓝光、广播、直播流或者其它什么专业流编码,也许会需要更小的图像组长度(一般等于fps)。参见:min-keyint, scenecut, intra-refreshmin-keyint默认:auto(keyint/10)说明:参见keyint的说明。过小的keyint范围会导致产生“错误的”IDR帧(比如说,一个闪屏场景,参见上一篇blog)。此选项限制了IDR帧之间的最小距离。建议:默认,或者与fps相等参见:keyint, scenecutno-scenecut默认:无说明:完全关闭自适应I帧决策。参见:scenecutscenecut默认:40说明:设置决策使用I帧、IDR帧的阈值(场景变换检测)。x264会计算每一帧与前一帧的不同程度并得出一个值。如果这个值低于scenecut,那么就算检测到一个“场景变换”。如果此时距离上一帧的距离小于 min-keyint则插入一个I帧,反之则插入一个IDR帧。较高的值会增加侦测到“场景变换”纪律。更详细的工作原理可见 /showthread.php?t=121116设置scenecut=0与no-scenecut等效。建议:使用默认值参见:keyint, min-keyint, no-scenecutintra-refresh默认:off说明:让x264为每keyint数量的帧使用宏块内部编码取代IDR帧。块以水平移动列的方式更新,也叫刷新波。对于低延迟的流,这样可以让帧的尺寸比使用标准的IDR帧更加保持恒定。而且这样可以增强视频流对丢包的容错能力。这个选项会降低压缩率,所以在确实需要的时候才选择它。还有一些有意思的事情:1、第一帧依然是IDR帧。2、内部宏块只在P帧中存在,刷新波在一个或多个B帧后的P帧中广泛存在。3、主要的压缩率下降原因是在宏块中新(左边)的波并不能参考旧(右边)的波。建议:使用默认值bframes默认:3说明:设置x264可使用的B帧的最大连续数量。没有B帧时,一个典型的x264流帧类型是这样的:IPPPPPPI。如果设置了-bframes 2,那么两个连续的P帧就可以用B帧替换,然后就像这样:IBPBBPBPPPBPI。B帧和P帧的区别在于它可以参照它之后的帧,这个特点让它可以显著地提升压缩率。他们的平均品质受 pbratio选项的控制。还有一些有意思的事情:1、x264有2种B帧,一种可以作为参照帧,一种不能;2、关于x264如何决策B帧或P帧,可以看看这个ffmpeg-devel邮件列表中的这一封 /p.video.ffmpeg.devel/29064。这种情况下帧类型看起来就像这样IBBBPBBBPBPI(假设设置 bframes 3)。参见:no-b-adapt, b-bias, b-pyramid, ref, pbratio, partitions, weightbb-adapt默认:1说明:设置B帧决策算法,这个选项会影响到x264使用P帧或者B帧。0 关闭。总是使用B帧。和以前的 no-b-adapt选项效果相同;1 快速算法。快速,b-frames越大速度越快。推荐配合使用bframes 16;2 最佳算法,慢速,b-frames越大速度越慢;注意:多趟编码时,只有第一趟编码的此选项起效,因为第一趟编码结束时,帧类型就已经被决定了。b-bias默认:0说明:调节使用B帧的力度。越大的值越偏向B帧,可以在-100和100之间选择。100或-100不能保证完全或是全是B帧(使用 b-adapt 0)。请只在你认为你能做出比x264更好的码率控制时才使用这个选项。参见: b-frames, ipratiob-pyramid默认:normal说明:允许B帧作为参照帧。如果关闭,那么只有I帧和P帧才能作为参照帧。可以作为参照帧的B帧的量化参数会介于P帧和普通B帧之间。只在b-frames设置大于等于2时此选项才生效。如果是在为蓝光光盘编码,请使用none或者strict。none 不允许B帧作为参照帧;strict 一个图像组内只允许一个B帧参照帧,这是蓝光编码强制要求的标准;normal 任意使用B帧参照帧;参见:bframes, refs, no-mixed-refsopen-gop默认:none说明:Open-GOP是一个提升压缩效率的编码技术。它有以下选项:none 关闭normal 开启bluray 开启。一个稍低效的open-GOP版本,因为normal模式不能用于蓝光编码有些解码器不能完全支持open-GOP流,因此这个选项默认关闭。如果要用,请测试你的解码器。更多open-gop的资料可以看这个链接/showthread.php?p=1300124#post1300124no-cabac默认:无说明:关闭CABAC (Context Adaptive Binary Arithmetic Coder)压缩,使用较为低效的CAVLC (Context Adaptive Variable Length Coder)。这两者在压缩效率和解码效率上有10%-20%的差别。ref默认:3说明:控制DPB (Decoded Picture Buffer)的大小。可以在0-16之间选择。简单地说,就是设置P帧可以选择它之前的多少帧作为参照帧(B帧的值要小1-2,取决于那个B帧能不能作为参照)。最小可以选择值1,只参照自己前面的那帧。注意H.264标准限制了每个level可以参照的帧的数量。如果选择level4.1,1080p最大选4,720p最大选9。参照: b-pyramid, no-mixed-refs, levelno-deblock默认:无说明:完全关闭内置去块滤镜。不推荐使用。参见: deblockdeblock默认:0:0说明:调节H.264标准中的内置去块滤镜。这是个性价比很高的选则。详细的参数运作原理可以看这篇文章/showthread.php?t=109747(看楼主和akupenguin的回复)。See Also: no-deblockslices默认:0说明:设置每帧的分片数,强制使用矩形分片。(会被slice-max-size 或 slice-max-mbs选项覆盖)如果是在为蓝光光盘编码,设置为4。如果不是,不要使用这个选项,除非你确定你需要它。参见:slice-max-size, slice-max-mbsslice-max-size默认:0说明:设置每个分块包括NAL头的最大大小(bytes)。 (目前与 interlaced选项不兼容)参见:slicesslice-max-mbs默认:0说明:设置每个分块包含的最大宏块数量。 (目前与 interlaced选项不兼容)参见:slicestff说明:开启隔行编码并设置上半场在前。x264的隔行编码使用MBAFF,因此效率不如逐行扫描。所以,仅在需要在隔行显示的设备上显示时才开启这个选项(或是送给x264之前无法进行反隔行扫描)。这个选项会触发 pic-struct开启。bff说明:开启隔行编码并设置下半场在前。更多信息同tff。constrained-intra默认:无说明:开启SVC编码的底层要求的强制帧内预测。选择每个人都无视SVC了,你也可以忽略这个设置。pulldown默认:none说明:为你的输入流(逐行扫描的,固定帧率的)使用一组预设的“软性电视模式”。“软性电视模式”在HandBrake Wiki里面有很好的解释。可选的参数有:none、22、32、64、double、triple、euro。除了none之外的选项都会触发 pic-struct开启。fake-interlaced默认:无说明:把流标志为隔行的但不按隔行编码。用于编码25p和30p的蓝光兼容视频。码率控制qp默认:无说明:三种可选的码率控制方法之一。设置x264使用固定量化参数模式。给定的数量将被作为P帧的量化参数,I帧和B帧的量化参数由ipratio and pbratio参数进一步算出。QP模式适用固定的量化参数,这意味着最终的文件大小是不可知的(可以通过一些其他方法预测)。设置为0将产出无损的输出。相同视觉质量时,QP模式产出的文件比crf模式大。QP模式将关闭自适应量化器,因为它是固定QP的。这个选项和 bitrate和crf是互斥的,三者只能选一个,它们背后的原理可以看这篇文章/index.php/archives/1901。一般而言crf都能代替QP模式,不过QP因为完全不需要预测所以它会运行地更快些。参见:bitrate, crf, ipratio, pbratiobitrate默认:无说明:三种可选的码率控制方法之二。设置x264使用固定目标比特率模式。固定目标比特率意味着最终文件的大小是可知的,但是目标的质量是不可知的。 x264会试图让最终文件的整体码率与给定的码率相等。参数的量纲为kilobits/sec(8bit = 1byte)。通常这个选项和pass选项配合进行2趟编码。这个选项和 qp和crf是互斥的,三者只能选一个,它们背后的原理可以看这篇文章/index.php/archives/1901。参见:qp, crf, ratetol, pass, statscrf默认:23.0说明:三种可选的码率控制方法之二。固定ratefactor。QP是固定量化器,bitrate是固定文件大小,crf则是固定“质量”。crf可以提供跟QP一样的视觉的质量,但是文件更小。crf的单位是ratefactor。crf是通过降低那些“不那么重要”的帧的质量做到这一切的。“不那么重要”意思是过于耗费码率又难以用肉眼察觉的帧,比如复杂或者超高速运行的场景。省下来的码率会用在其它更有效的帧里。crf编码比2趟编码快,因为它相当于省略了第1趟编码。所以crf的最终码率也是不可预测的。你应该根据应用场景来选择码率控制方式。这个选项和 qp和crf是互斥的,三者只能选一个,它们背后的原理可以看这篇文章/index.php/archives/1901。参见:qp, bitraterc-lookahead默认:40说明:为mb-tree ratecontrol(Macroblock Tree Ratecontrol)和vbv-lookahead设置可用的帧的数量。最大可设置为250。对于mb-tree而言,调大这个值会得到更准确地结果,但也会更慢。mb-tree能使用的最大值是rc-lookahead和keyint中较小的那一个。对于vbv-lookahead而言,调大这个值会得更稳定和精确的码率控制。vbv-lookahead能使用的最大值是如下公式算出来的:MIN(rc-lookahead, MAX(keyint, MAX(vbv-maxrate, bitrate) / vbv-bufsize * fps)参见:no-mbtree, vbv-bufsize, vbv-maxratevbv-maxrate默认:0说明:设置VBV(Video Buffering Verifier)可用的最大码率。使用VBV会降低视频质量,只在真正需要的才设定它。参见:vbv-bufsize, vbv-init,/wiki/X264_Encoding_Suggestions#VBV_Encodingvbv-bufsize默认:0说明:设置VBV(Video Buffering Verifier)可用的最大缓冲区,单位是kilobits。使用VBV会降低视频质量,只在真正需要的才设定它。参见:vbv-maxsize, vbv-init,/wiki/X264_Encoding_Suggestions#VBV_Encodingvbv-init默认:0.9说明:设置重放之前必须先载入多大的VBV缓冲。如果值小于1,那么大小就为 vbv-init * vbv-bufsize。如果大于1,则是以kbits为单位的值。参见:vbv-maxsize, vbv-bufsize,/wiki/X264_Encoding_Suggestions#VBV_Encodingcrf-max默认:无说明:类似 qp-max,但是设置的是最大的ratefactor值而不是量化参数。这个选项仅用于crf和vbv同时启用的时候。它阻止x264使用小于给定值的ratefactor(也就是“质量”),哪怕会违反vbv。一般用于流服务器。更多的信息请看 /gitweb.cgi/x264.git/?a=commit; h=81eee062a4ce9aae1eceb3befcae855c25e5ec52。参见:crf, vbv-maxrate, vbv-bufsizeqpmin默认:10说明:设置x264可以使用的最小量化器。量化参数越小,输出越接近输入。使用某些值时,x264的输出可以和输入看起来完全一样,虽然其实并不是精确相同的,通常就够了没有必要使用更多比特在宏块上了。如果开启了自适应量化器(默认开启),则不鼓励提高qpmin的值,那样可能会降低帧的平坦部分的质量。参见:qpmax, ipratioqpmax默认:51说明:qpmin的反面,设置x264可以使用的最大量化器。默认值51是H.264标准中的最大值,质量非常低。默认值51其实相当于没有设置 qpmax。如果你想控制x264输出的最低品质,也许你想要把这个值调低一点(调到30-40最低了),但一般而言不推荐调节这个值。参见:qpmin, pbratio, crf-maxqpstep默认:4说明:设置2帧间量化器最大的可变值。ratetol默认:1.0说明:这个参数有2个可能的含义:1、在1趟bitrate编码时,这个参数控制x264可以偏离给定的平均目标比特率的百分比。可以设置为inf完全关闭码率溢出侦测。最低可以设置为 0.01。较高的值可以让x264更好地处理影片结束部分的复杂场景。对于这个目的而言单位是百分比(1.0意味着允许1%的bitrate偏差)。很多影片(比如说动作打斗片)在最后的片段里十分复杂。1趟编码并不知道哪里是最复杂的片断,往往到最后比特都已经用完了。把rateol设置为inf就能解决这个问题,它允许编码器用类似 crf的方式工作,当然,文件大小会溢出。2、当开启了vbv时(只要使用了任何vbv-开头的选项就会开启),这个选项意味着vbv的强度。更高的值意味着允许更高的在设定的vbv值上下波动。在这个含义时,可以使用任意的度量单位。ipratio默认:1.40说明:设置平均的I帧的量化器相比P帧量化器增值。更高的值意味着更高的I帧质量。参见:pbratiopbratio默认:1.30说明:设置平均的B帧的量化器相比P帧量化器减值。更高的值意味着更低的B帧质量。开启mbtree(默认开启)选项时不可用,mbtree会自适应地计算B帧量化器。参见:ipratiochroma-qp-offset默认:0说明:设置一个用于色度编码(译者按:视频使用YUI编码,人眼对于亮度更敏感)的量化器的偏移值。可以是负值。在开启 psy-rd或 psy-trellis时 x264会自动降低色度的量化参数用于补偿亮度的量化器,意味着色度质量会被降低。它们默认会在chroma-qp-offset的基础上减2。注意:x264在量化器29时会为亮度和色度使用同样的量化器。往后,色度都会使用比亮度还好的量化器,最后,亮度达到q51时,色度的量化器是q39。这个是H.264标准中要求的做法。aq-mode默认:1说明:自适应量化器模式。不使用自适应量化的话,x264趋向于使用较少的bit在缺乏细节的场景里。自适应量化可以在整个视频的宏块里更好地分配比特。它有以下选项:0 完全关闭自适应量化器1 允许自适应量化器在所有视频帧内部分配比特。2 根据前一帧强度决策的自变量化器(实验性的)。参见: aq-strengthaq-strength默认:1.0说明:自适应量化强度。设置自适应量化对于缺乏细节(平坦)的宏块的剥削程度。不允许负值。0.0 2.0之外的值不推荐。参见:aq-modepass默认:无说明:这对2趟编码是一个重要的选项。这个选项控制了x264如何处理 stats指定的文件。它有三个选项。1 建立一个新的stats文件,用于第一趟编码。2 读取stats文件,用于最后一趟编码。3 读取stats文件,而且更新它。stats文件包含了每个输入帧的信息,x264可以读取这些信息来改进输出。大概意思就是先跑一趟编码生成stats文件,然后第二趟编码就可以使用这个文件优化编码结果。视频质量会得到很大的提升,大部分原因是因为可以更好地进行比特分配。参见:stats, bitrate, slow-firstpass X264_statsfilestats默认:x264_2pass.log说明:设置x264读取和写入的stats文件名no-mbtree默认:无说明:关闭基于宏块树的比特控制(macroblock tree ratecontrol)。基于宏块树的比特控制通过持续监控宏块在帧间的运动和相对权重来提升视频质量。它会单独生成一个很大的stats文件。(可能导致兼容性问题)建议值:保持默认 参见:rc-lookaheadqcomp默认:0.60说明:量化器曲线压缩参数。0.0意味着恒定比特率,1.0意味着恒定量化器。如果开启了mbtree,这个选项会影响mbtree的强度(更高的值意味着更弱的mbtree)。建议:保持默认参见:cplxblur, qblurcplxblur默认:20说明:把给定值作为高斯模糊的半径应用到量化曲线上。这意味着分配给每个帧的量化器会被它附近的帧的量化器平均掉,这样会达到限制量化器波动的效果。参见:qcomp, qblurqblur默认:0.5说明:在量化曲线压缩后,把给定值作为高斯模糊的半径应用到量化曲线上。这不是一个很重要的选项。参见:qcomp, cplxblurzones默认:无说明:调节视频的特殊片断。可以用它修改大多数x264选项。一个单独的zone使用,的形式表达。多个zone用/分隔。选项:以下2个选项,每个zone只能设置其中一个,此选项必须是zone列出来的第一个选项:b= 使zone内的bitraye乘上给定的系数。在调整快速和慢速场景时很有用。q= 使用zone内使用给定的量化器。在优化一个帧序列是很有用。其他可用选项:ref=b-bias=scenecut=no-deblockdeblock=:deadzone-intra=deadzone-inter=direct=merange=nr=subme=trellis=(no-)chroma-me(no-)dct-decimate(no-)fast-pskip(no-)mixed-refspsy-rd=:me=no-8x8dctb-pyramid=限制:一个zone的参照帧数量不能超过ref定义的值。如果Scenecut原本是关闭的,无法开启它。me如果原本被设置为me esa/tesa则不能修改。Subme如果原本被设置为0则不能修改。如果me被设置为dia, hex或umh,不能修改为me esa/tesa。例子:0,1000,b=2/1001,2000,q=20,me=3,b-bias=-1000建议值:保持默认qpfile说明:人工改变标准的码率控制方法。给定一个为特殊帧给定了量化器和帧类型的文件。格式是帧序号 帧类型 量化器。例子:0 I 18 IDR (key) I-frame1 P 20 P-frame2 B 22 Referenced B-frame3 i 21 Non-IDR (non-key) I-frame4 b 18 Non-referenced B-frame5 K 16 0)建议:保持默认,或设置为更高,除非对速度十分敏感。subqsubme的别名psy-rd默认:1.0:0.0说明:第1个数字是psy-RDO的强度(subme大于等于6时激活)。第2个数字是Psy-Trellis的强度(subme大于等于1时激活)。注意Trellis的特性仍是实验性的,至少对于动画视频来说,它总是会坏事的。关于psy-rd的更详尽解释可以参见doom9的这篇文章:/showthread.php?t=138293。no-psy默认:无说明:关闭全部为了心理视觉而降低psnr或ssim的优化。此选项同时也会关闭一些不能通过x264命令行设置的内部的心理视觉优化方法。建议:保持默认no-mixed-refs默认:无说明:Mixed refs(混合参照)会以88的切块为参照取代以整个宏块为参照。会增进多帧参照的帧的质量,会有一些时间耗用。此选项将禁用这个特性。建议:保持默认参见:refno-chroma-me默认:无说明:通常运动估计都会同时考虑亮度和色度因素。开启此选项将会忽略色度因素换取一些速度的提升。建议:保持默认no-8x8dct默认:无说明:自适应的88 DCT会在I帧中开启更智能的自适应88的时域变换。开启此选项可以禁用这个特性。(译者按:此选项是将H.264的Profile从High降为Main的重要参数)建议:保持默认trellis默认:1说明:使用网格编码量化以增进编码效率:0 关闭1 仅在宏块最终编码时启用2 所有模式下均启用选项1提供了速度和效率间较好的均衡,选项2大幅降低速度。关于网格编码量化的更详尽解释可以参见:/wiki/Trellis_quantization。建议:保持默认注意:需要开启 cabac选项生效no-fast-pskip默认:无说明:关闭P帧的早期跳过决策。大量的时耗换回非常小的质量提升。建议:保持默认no-dct-decimate默认:无说明:DCT抽样会丢弃看上去“多余”的DCT块。会增加编码效率,通常质量损失可以忽略。此选项关闭此特性。建议:保持默认nr默认:无说明:执行快速去噪。以此值为阈值确定噪音,通过在量化前丢失小细节的方式尝试去除噪音。效果可能不如优秀的外部去造滤镜,但它执行地非常快。建议:保持默认或者设置为100-1000用以去噪。deadzone-inter/intra默认:无说明:设置帧间/帧内的亮度量化器输出为0的区域大小。输出为0的区域可以设置为0-32,这个值设置的是x264毫不尝试保护直接丢弃的精密细节。十分精细的细节既难以发觉,编码代价又昂贵,直接丢弃它们可以避免在这些低回报的部分浪费比特。此选项和Trellis选项是互不相容的。建议:保持默认cqm默认:Flat(没设置)说明:设置自定义的量化矩阵取代内建的内建值。内建值有flast或JVT。建议:保持默认参见:cqmfilecqmfile默认:无说明:使用一个JM格式矩阵文件设置自定义的量化矩阵。会覆盖其他的 cqm*选项们。建议:保持默认参见:cqmcqm4* / cqm 8*默认:无cqm4: 设置所有44块的量化矩阵,以由16个逗号分隔值域为1-255的值组成的列表的形式给出。cqm8: 设置所有88块的量化矩阵,以由64个逗号分隔值域为1-255的值组成的列表的形式给出。cqm4i, cqm4p, cqm8i, cqm8p: 同时设置色度和亮度(i为帧内、p为帧间)矩阵cqm4iy, cqm4ic, cqm4py, cqm4pc: 设置色度或亮度矩阵(y为亮度、c为色度)。这样的参数cqm8也有同样的4个。建议:保持默认视频可用性信息这些参数为解码的程序设置一个可用标记。由于经常被解码软件所忽略,在大多数场景中这些参数都没什么意义,overscan默认:undef说明:如何处理过扫描。过扫描在这里用于只显示图像的一部分。(译者按:过扫描技术本用在阴极射线管显示器中为保持画面完整。)可选:undef 不定义show 显示全部图像。理论上此值应该被解码器重视。crop 视频已经为过扫描显示器做过处理。可以不重视。建议:如果你的设备支持此选项,建议在编码之前对视频进行裁剪然后设置为show。如果不支持就别管此选项了。videoformat默认:undef说明:表明此视频在 编码/数字化 之前是什么格式的。可选:componentpalntscsecammacundef建议:设为原视频的格式,或者设为undef。fullrange默认:off说明:表明亮度和色度级别是否是全范围的(译者按:0-255)。如果设为off,则不会使用全范围(译者按:16-235)。进一步的说明可参见/?p=2015和/wiki/YCbCr。建议:如果视频源是从模拟视频数字化而来的,设为off。否则则设置为on。colorprim默认:undef说明:设置转换到RGB的原色。可选:undefbt709bt470mbt470bgsmpte170msmpte240mfilm进一步的说明可参见/wiki/YCrCb和/wiki/RGB_color_spaces。建议:保持默认,除非你知道你的源用的是哪个值。transfer默认:undef说明:设置光电转换器使用的特性。(设置用于修正的gamma曲线。)可选:undefbt709bt470mbt470bglinearlog100log316smpte170msmpte240m进一步的说明可参见/wiki/Gamma_correction。建议:保持默认,除非你知道你的源用的是哪个值。colormatrix默认:undef说明:设置用于从RGB原色中提取亮度和色度的矩阵系数。可选:undefbt709fccbt470bgsmpte170msmpte24

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论