三、GOP结构
GOP = group of picture. 在mpeg中一个GOP就是一组时间上连续的画面。mpeg中的画面分为3种:I,P,B。I是内部编码帧,编码方式基本上就是jpeg的格式。P是前向预测帧,编码方式是使用运动检测误差编码,参看A部对运动检测的说明;B是双向内插帧,根据前后I/P帧进行插值运算,对插值误差进行编码。
建议一般不要修改GOP结构,以取得压缩比例和图象质量之间的最好平衡。极端的例子是只用I帧,图象质量会有保证,但码流会很大。
1、输出编辑用的码流:这个选项会把GOP最后的B帧取消。因为B帧是双向内插的,其编码/解码不仅需要以前的I/P, 也需要以后的I/P帧。取消最后的B帧,可以去除GOP之间的依赖性,从而便于编辑。
2、检测场景变化:对于快速变化的场景,强行设置为I帧,以保证画面质量。
3、手工强制设定帧类型:手工设定需要精细编码的画面帧为I帧。结合MVBR码流控制可以全面控制码流分配。
四、量化矩阵
mpeg中的量化是对8x8 YUV 信号图块进行DCT变换之后的系数的量化。通过对高频分量使用比较大的量化阶从而达到减小高频分量的编码空间,达到压缩的目的。代价就是丧失图像细节,边缘模糊等。
1、帧内编码量化矩阵:这是指对I帧使用的帧内编码量化矩阵
2、帧间编码量化矩阵:是指对非I帧的帧间预测误差编码所用的量化矩阵。威龙汉化版中叫外部矩阵。
3、矩阵模版的选择:建议对一般的视频选用mpeg标准,可以看到,其帧间编码矩阵统一为16,这是因为帧间误差已经抵消了低频分量,高频分量丰富,所以和帧内编码矩阵有所不同。对于计算机动画尤其是2维线条为主的动画,建议选用CG模版,,可以看到因为CG本身高频信号丰富,其帧内编码矩阵也统一为32。
另外,有朋友尝试减小量化矩阵的各个数值,老枯认为这样做的意义不大。因为量化矩阵并不是量化的唯一因素,事实上的量化程度要根据码流控制部分的反馈信息而自适应调整。这样,即使量化阶减小,在码率有限的前提下,量化系数还是会加大的。。
4、YUV输出为YCrCb: YCrCb色彩空间分配给Y亮度信号的编码空间更大,如果视频源是YCrCb格式的话,这个选项可以增加画面质量。。不过一般都是采用YUV(CCIR601),如dv,所以不要选择这个选项,否则白白浪费码率。
5、浮点离散余弦变换:整点运算的速度比浮点要快很多,但精度不如浮点。老枯猜测这里的浮点其实只是把DCT变换的系数从8bit增大为16bit的精度,并不需要浮点运算器单元参与变换,否则速度是不可忍耐的。
6、不对静止部分做半像素的运动检测:由于视频源是隔行的,对于精细的静止边缘线条(1个像素宽度)。比如静止字幕会出现一个场中出现,另一个场中不出现的闪动。选中这个选项会消除闪动。不过老枯觉得好像这个和量化矩阵无关。
7、柔化马赛克:没什么好说的。就是在8x8图块的边缘做一些特别处理。能用足够的码率或者码率控制手段解决马赛克最好,因为这里的柔化虽然只对边缘进行低频滤波,毕竟还是会对画面造成影响模糊化。
五、 音频:
这部分大多不需要改动vcd/svcd模版。也没有大的影响。不多讨论。
六、 系统
mpeg的系统是指视频+音频。vcd/svcd/dvd模版中已经设定好。
最后本人补充一下。要是转成Mpeg1来刻VCD的话把GOP改为15。在项目设定。GOP设定里面把GOP的最大帧数设为15。否则用NERO刻盘时会出错的。