IsaacZ 发表于 2010-7-1 00:33:31

16:9视频转成4:3后,上下添加的黑边会占用码率吗?

本帖最后由 IsaacZ 于 2010-7-2 01:27 编辑

IsaacZ一直的观点是黑边不占用码率。而lijianwen兄认为:每个GOP中至少有一个I帧,而I帧是一副完整的图片,图片上是有黑边的,作为图片的一部分,黑边一定是占用码率的。

我之所以说“不占用码率”,是考虑到黑边区域系纯色,从图形算法来说,纯色区域可以用很少的数据来定义。比如下面一幅 600*450 的图片:



面积可算不小,但是体积只有几KB。

换一幅同样大小的电影画面,却用到30KB以上。如图:





下面研究一幅16:9的电影图片:

576*320(16:9)



上下加黑边变成 576*432(4:3)


鼠标靠到图片上,看看体积增加了多少?


4楼有详细测试。

lijianwen 发表于 2010-7-1 00:59:21

碟片的数据流有没有记录黑边,这是关键,如果记录了黑边,1K也是占用体积的。而一段视频中,会有太多的图片,那就不是1K的事情了。

zhylove 发表于 2010-7-1 10:21:51

占用吧,我说不出来理由。。。

IsaacZ 发表于 2010-7-1 11:27:20

碟片的数据流当然会记录黑边,只不过在初始关键帧处记录后,后面就只记录画面差异,因为后面也是黑边,所以等于不记录。总起来说,黑边不会使体积增大太多。下面做个测试:

源文件:真爱奇迹.avi 576x320(16:9),截取时长5分钟。
导入小日本。

因为我们只讨论黑边和码率的关系,跟最终渲染画面大小(像素大小)没有关系,所以我统一用1:1正方形像素。音频不在讨论之内,为避免干扰,只用ES(只视频)来输出。

第一次输出参数:MPEG-2 视频, 720x408, 像素比1:1,29.97 fps, VBR (固定画质70), 最大 4000 kbps,最小2kbps。(实际渲染比例是16:9。标准16:9画面本来应该是720*405,但因小日本只支持8的倍数,故被自动改为720*408)

画面效果如下:



第二次输出参数:MPEG-2 视频, 720x544, 像素比1:1,29.97 fps, VBR (固定画质70), 最大 4000 kbps,最小2kbps(实际渲染比例是4:3。本来标准4:3应该是720*540,但因小日本只支持8的倍数,故被自动改为720*544)

画面效果如下:




体积之比较:

无黑边与带黑边截图体积差别:



无黑边与带黑边视频体积差别:



由此可见,黑边尽管占据了较大的画面面积(1/4),却只占据有限的文件体积。


码率之比较:

我们知道,体积和码率成正比关系,下面我们再看看这两个视频的码率。

用 Bitrate Viewer 查看码率,结果如下:



可见,有黑边的平均码率比无黑边的平均码率只高出一点点,远远小于黑边所占画面面积的比例(1/4)。(最高码率(峰值码率)和最低码率因程序算法不同而有差别,不作讨论。)

结论:黑边不是不占码率,而是占用码率的很小一部分。






lijianwen 发表于 2010-7-1 14:03:19

本帖最后由 lijianwen 于 2010-7-9 17:51 编辑

回复 4# IsaacZ
按照最接近于楼主测试情况的视频编码来看,一张碟大概4个多小时,差别不到100M,16:9压缩成4:3也是可取的。市场上有的杂牌DVD机器,遇到16:9的编码,一律上下拉伸成全屏,16:9转换成4:3,可以有效解决这种影碟机存在的问题,值得参考。


今天闲的无事,把估算过程说一下:
先用会声会影生成16:9纯黑的视频,体积3156M,动态编码,最大6000(由此可见,会声会影的编码很浪费),时长4小时,导入小日本软件:



我们经常用下面这个模板来输出4小时左右的DVD,今天也用它,只输出视频:



得到的结果是389M,纯黑的视频,码率平均分布,389/4=97.25,这里的97.25大约就是黑边占去的体积吧。
这里,上下黑边占去了整个画面四分之一的面积,大家可自行推导。

IsaacZ 发表于 2010-7-2 01:25:46

本帖最后由 IsaacZ 于 2010-7-2 01:50 编辑

回复 5# lijianwen

你说:按照最接近于楼主测试情况的视频编码来看,一张碟大概4个多小时,差别不到100M,16:9压缩成4:3也是可取的。
IsaacZ需要提醒你一句:前面4楼的测试中,720*408 和 720*544 都不是DVD标准分辨率。它们仅仅证实了在1:1像素比的情况下,某视频画面外面加上黑边后,黑边占用码率大小的问题,这种黑边并不等同于实际编码中16:9转成4:3后所带的黑边。

下面仍然通过实例来解释16:9转成4:3的黑边相关问题。

用576*320(16:9)的“真爱奇迹.avi”分别输出为DVD标准分辨率720*576(16:9)和720*576(4:3),得到的两个文件的体积差别如下:



我们看到,4:3带黑边的反而要比不带黑边的16:9体积要小。前面不是说带黑边的比不带黑边的体积略增么?这里怎么矛盾啦?

其实这很正常。表面上看好像是4:3的比16:9的多了点东西(黑边),但实际上,在分辨率一样的情况下,两者所使用的像素数量是一样的。(这时候我们不考虑像素比,只考虑像素数)反而因为画面比4:3的视频把1/4的像素分配给了黑边,造成4:3的视频只占用720*(576*3/4)=720*432个像素来展示画面。而后者因为没有黑边,所有720*576个像素都用来显示画面,因此体积也比前者为大。(720*576)/(720*432)= 4:3,理论上前者的体积应该是后者的3/4。不过,因为我在编码时使用的是VBR(固定画质),属于动态编码,因此,画面复杂程度的不同会导致输出体积有一定的变化,这绝对正常。

结论:在同样分辨率下,因为4:3比16:9画面比少用了1/4的像素来表示画面,所以体积要更小,但画质要更差。



下面描述另外一个方面的影响:像素比和宽高比

先描述一遍渲染过程:

播放器在播放第一个文件720*576(4:3)时,首先调用两个数值,一个是分辨率中的高度数值576(纵向像素数),一个是画面比4/3,再用高度576乘以画面比4/3得到渲染后的宽度值768(只是占用显示器的画面宽度,不等于视频的横向像素数)。这样就得到渲染后的画面大小768*576。但是,因为上下黑边占去1/4,所以实际画面大小是 768*432=331776。

同理,播放器在播放第二个文件720*576(16:9)时,首先依据分辨率中的高度数值576(纵向像素数),乘以画面比16/9,得到渲染后的宽度值1024*576,因为这个画面是没有黑边的,所以实际画面大小就是 1024*576=589824

把两个数据相除:

589824/331776 = 16:9= 1.7778

可见,同分辨率下,带黑边的4:3视频的显示画面远远小于16:9视频。

另外,4:3视频在16:9的电视上播放会有一个大麻烦,就是上下硬黑边撑住上下屏幕边缘,导致左右不能满屏,整个画面四周都是黑边。尽管可以通过放大功能达到满屏,其画面的纵向像素少用1/4也是不争的事实,画面细腻程序定然不及原生16:9视频。

总之,IsaacZ的建议是,当源文件是16:9时,输出时尽量还用16:9。

当然,lijianwen兄提到,16:9视频在4:3老电视上播放可能会出现上下拉伸到满屏的尴尬,这种情况下制作4:3视频也纯属无奈之举。

lijianwen 发表于 2010-7-2 09:48:18

本帖最后由 lijianwen 于 2010-7-9 11:44 编辑

回复 6# IsaacZ
第二种方法:同一个文件,编码后体积相差大,不方便比较黑边对实际观感效果到底有多大程度的影响。比如你家有一台29寸电视机,实际播放碟片,两种编码看到的图像大小是一样的。做压缩碟主要在乎体积,本贴讨论黑边占不占码率也是为节省体积服务,所以,必须编码到同一体积,对比才更有意义。假如编码到相同的体积,播放的时候,4:3上下带黑边的分辨率下降但有效码率上升,实际观感可能相差并不大,黑边到底占多少体积无法确定。我反而觉得楼主的第一种方法比较靠谱。

楼主的第一种方法,有效图像分辨率是相同的,加了很大的黑边,体积增加却不大,这个其实已经说明:在MPEG编码中,黑边还是需要码率来表达的,但因为MPEG算法是压缩算法,对于黑边这种纯色的图像,只需要用极少的码率即可表达,而讨论的就是这个。

我在5楼说的拉伸成全屏,是说的碟机,不是说电视。

IsaacZ 发表于 2010-7-2 23:11:58

本帖最后由 IsaacZ 于 2010-7-4 18:56 编辑

回复 7# lijianwen

你提到“必须编码到同一体积,对比才更有意义”。IsaacZ认为,既然有了第一个像素比1:1的测试,证实了黑边占用码率的比例极小,那么再做其他体积上的测试也没有多大意义,因为黑边对体积的影响太小。这个问题实际上已经结论了。


那么我上一次测试的意义在何处呢?——答案是在清晰度上。简述如下:

在4:3电视上看的话,如果碟机能处理好原生16:9视频,那么与4:3视频的观感确实接近(都带上下黑边,画面位置与占用屏幕面积均相同)。唯一的区别,如我前一帖所述,原生16:9的视频的上下是碟机加的软黑边,不占用视频文件的像素,故画面区域是完整的720*576个像素,而4:3视频上下是硬黑边,占去视频文件的1/4像素数,故画面区域只有720*432个像素。

前一帖我的测试都是基于VBR(固定画质),并为之提供极高标准的最大码率限制(9200kb/s),目的是看在尽可能高效地编码(CQ)的情况下,谁的输出体积大。——谁的大谁的质量就好。原理是:如果不限制编码时的码率,则谁的图片更细腻(分辨率较大),谁占用的码率就大。和前面描述的分辨率差别结合起来,显然16:9视频的画面分辨率高,画面也更细腻,码率占用相应也高,最终输出体积也大。反过来说就是,谁的体积大,谁的画质好。

以上是对我上一次测试的思路的重述。这实际上已经超出顶楼话题范围了。


倘若按你说的,编码到同一体积,就应该用CBR或VBR(平均码率)来编码。那么就有一个平均码率的最优化问题。

设4:3带黑边视频的最佳平均码率值是 A ;16:9视频的最佳平均码率值是 B。(根据前面的计算,理论上A是B的3/4左右)

不难想出:
(1)如果自定义的平均码率小于A,因为距A近,距B远,所以转成4:3的话效率更高。
(2)如果自定义的平均码率居于A、B之间,则相对于4:3黑边视频来说码率冗余,相当于16:9无黑边视频来说,码率稍欠。
(3)如果自定义的平均码率大于B,则相对于两种比例的视频,码率都会冗余。

你说“做压缩碟主要在乎体积”,那么平均码率取值通常会小于A,此时当然是4:3输出为宜,黑边的影响仍然会忽略不计。

成都人 发表于 2010-7-3 01:38:25

IsaacZ在第四楼的分析是比较正确的,结论也应该是正确的。
这个不用质疑,至少我的观点也是如此:“碟片的数据流当然会记录黑边,只不过在初始关键帧处记录后,后面就只记录画面差异,因为后面也是黑边,........黑边不是不占码率,而是占用码率的很小一部分。”
只是我还有一个疑问,这个“碟片的数据流当然会记录黑边,只不过在初始关键帧处记录后,后面就只记录画面差异,”这个处理方式,我仿佛记得好像是跟编码方式不同,有些处理方式不是这样,不知道是不是如此?

IsaacZ 发表于 2010-7-3 17:48:53

本帖最后由 IsaacZ 于 2010-7-3 17:56 编辑

只是我还有一个疑问,这个“碟片的数据流当然会记录黑边,只不过在初始关键帧处记录后,后面就只记录画面差异,”这个处理方式,我仿佛记得好像是跟编码方式不同,有些处理方式不是这样,不知道是不是如此?
成都人 发表于 2010-7-3 01:38 https://www.dianbo.org/images/common/back.gif

你可能想起了 VBR 和 CBR 的区别。前者是动态码率分配,后者是恒定码率分配。前者根据画面复杂程度不同,为不同帧分配不同的码率,后者为所有帧分配同样的码率。

IsaacZ认为,这种差别只是“码率控制模式”的区别而已,不是MPEG算法差别。它们的算法都是一样——后帧参照前帧。因此,就一个帧内部来说,码率还是主要用在了有画面的区域,而黑边区域只用很少的码率去表达。

参考:
[生词] GOP和I、B、P帧
在MPEG文件中什么是GOP?GOP的设定对画质影响大吗?
页: [1] 2 3
查看完整版本: 16:9视频转成4:3后,上下添加的黑边会占用码率吗?