为什么我们要说自己的言语,为什么我们要着自己的装束?要问这是为什么,只因为我们的名字叫苗族。// Wef let jangl beb yat haik beb shuab lol? Wef let jangl beb yat hnangd beb rangf zhongl? Zhit wef zhangd nax dol lab zhit, Zhos wef beb lob nbet hot uat Hmongb. // Vim li cas peb yuav hais peb suab lus? Vim li cas peb yuav hnav peb zam tsoos? Tsis vim tsav niaj tus dab tsi, Tsuas vim peb lub npe hu ua Hmoob.

[转帖]小曰本压缩VCD、SVCD必看

上一篇 / 下一篇  2007-05-31 23:19:15

用 TMPGEnc 将 AVI 转 SVCD,VCD 的人必犯的严重错误设定! 一般人往往没注意 Y/C 伸张的问题,导致转出来的纯白 (235,235,235) 在计算机 屏幕上看起来就不是纯白,纯黑 (16,16,16) 在计算机屏幕上看起来也不会是纯黑 。

因此在计算机上看,会觉得颜色变淡,好像照上了一层白纱,所以会觉得对比不足(最亮和最暗的差距缩小),不如原始档看起来漂亮。 通常转 DVD 在 DVD2AVI 汇出 d2v 的时候都会做好 Y/C 伸张(YUV->RGB 设在 PC Scale),所以再交给 TMPEGnc 时压缩设定中不能勾选进阶设定-->量子化行列( Quantize matrix)底下的"Basic YCbCr ?出力"(Out YUV data as asic not CCIR601),这样 TMPGEnc 压缩时便会做 Y/C 压缩,压出来的颜色、对比才 会正确。 但 AVI 转档的时候就要相反,因为 AVI 本身数据压缩为 16~235,如果没有要对 画面做修改,则不必做 Y/C 伸张,但是压缩的时候必需要勾选进阶设定-->量子化行列(Quantize matrix)底下的 "Basic YCbCr ?出力"(Out YUV data Basic YCbCr not CCIR601),这样 TMPGEnc 压缩时便不会做 Y/C 压缩,压出来的颜色、对比才会正确。若要对画面做修改,必须使用 Descale CCIR601 这个滤镜,把 Luminous, Chroma 两个选项都推到 255(也就是做 Y/C 伸张),然后才做其它的编辑动作。Descale CCIR601 的顺位要排第一位。然后压缩时直接压缩( "Basic YCbCr ?出力"此时就不用勾了)便可以得到正确的结果。

OK...以上算是小小的结论.. Y/C 伸张及压缩是非常重要的观念! 可以决定你转出来的东西颜色鲜不鲜艳! 如果你看得懂我以上所说的... 那你不是老早就注意到... 不然就是虽然你设定错误但你也知道该怎么修正了... 可是如果你看不懂... 表示你就是那 99% 设定错误的人且不知如何修正... 那请仔细看以下的详细的解说... 以下为一位前辈的文章,因为写的很浅很清楚了,没任何概念的人都会懂! 所以特别收录: (我知道很长,但请耐心看完,绝对对你有帮助!)

DVD/VCD/DV 等使用的 MPEG/MJPEG 压缩,记录的 YCbCr 格式,是遵循 ITU-R BT.601 的建议,其数据范围(动态范围)为 Y(亮度)16~235,C(色度)以 128 为中心代表无色,范围 16~240。做处理和显示的时候,YCbCr 要转为 RGB, 其范围为 16~235。但是计算机屏幕上,纯白的点,其 RGB 值为 (255,255,255), 纯黑的点,其 RGB 为 (0,0,0)。所以 MPEG/MJPEG 所记录的纯白 (235,235,235) 在计算机屏幕上看起来就不是纯白,纯黑 (16,16,16) 在计算机屏幕上看起来也不会 是纯黑。因此 DV 录下来的东西,拿到计算机上看,会觉得颜色变淡,好像照上了 一层白纱。同时因为数据范围(动态范围)缩小为 16~235,而不是全范围(Full Scale)0~255,所以会觉得对比不足(最亮和最暗的差距缩小),不如在电视上看漂亮。 所以在计算机上看、编辑 DV AVI,必需要先做 Y/C 伸张,也就是将 Y/C 的动态由原来的 16~235 扩展到 0~255,然后转为 RGB 0~255,这样在计算机屏幕上看到的 颜色才会是正确的。以此为基准作颜色校正、各种滤镜处理,出来的结果才会是 正确的。经过 Y/C 伸张以后,然后才作各种的编辑。

最后要压成 DVD/VCD/DV 的时候,因为仍然是存成 MPEG/MJPEG 格式,数据范围还是 16~235,所以已经做过Y/C 伸张的影像在压缩之前,必须先做 Y/C 压缩,把目前 RGB 0~255 的资料压 缩为 16~235,然后转为 YCbCr 16~235,这样才会正确。不然超过的资料在转为 YCbCr 16~235 的时候会被削掉(clipping),对比、颜色会完全错误。 如果没有编辑、修改画面的必要,只是要将 DV AVI 直接做成 DVD/VCD,则可以不必做 Y/C 伸张,直接压缩为 DVD/VCD。此时数据没有做过 Y/C 伸张,所以压 缩的时候,不可以再做一次 Y/C 压缩然后压 MPEG,否则做好的 DVD/VCD 即使在电视上播放,对比、颜色也会是错的。

总结: 原始数据以 MPEG/MJPEG 储存,为 Y/C 压缩过的数据,修改编辑时需先做 Y/C 伸张之后再修改。若做过 Y/C 伸张,压缩时需做 Y/C 压缩,出来的画面才是正 确的。若没做过 Y/C 伸张,压缩时不可以做 Y/C 压缩,出来的画面才是正确的 以 TMPGEnc 这个压缩软件为例,压缩时预设是接收 0~255 的 RGB 数据,先做Y/C 压缩,然后才压 MPEG。所以如果是 YCbCr 16~235 的数据要对画面做修改, 必须使用 Descale CCIR601 这个滤镜(CCIR601 就是 ITU-R BT.601,CCIR 是 ITU 以前的名字),把 Luminous, Chroma 两个选项都推到 255(也就是做 Y/C 伸张),然后才做其它的编辑动作。Descale CCIR601 的顺位要排第一位。然后压缩时直接压缩便可以得到正确的结果。 如果没有要对画面做修改,则不必做 Y/C 伸张,但是压缩的时候必需要勾选进阶 设定--> 量子化行列(Quantize matrix)底下的"Basic YCbCr ?出力"(Out data as Basic YCbCr not CCIR601),这样 TMPGEnc 压缩时便不会做 Y/C 压缩,压出来的颜色、对比才会正确 总结: 如果原始数据是 YCbCr 16~235 有做 Y/C 伸张的话,压缩时直接压缩就好,不能 勾选 "Basic YCbCr ?出力"。没有做 Y/C 伸张的话,压缩时必须勾选 "Basic YCbCr ?出力"。 第二个问题,压缩软件压缩时,是否会先做 Y/C 压缩? 如 MS MPEG-4 Codec,DivX Codec,XviD Codec 这几个 Codec 都是假设收到的 数据是 0~255,会先做 Y/C 压缩的动作。那么其它 Codec 和压缩软件呢?这个 也必须要做实验确认才能确定。 唯有解压缩和压缩的转换式能正确搭配(做过 Y/C 伸张压缩时就必须做 Y/C 压 缩,没做 Y/C 伸张压缩时就不可以做 Y/C 压缩)最后压出来的成品才会是正确 的。

以上或许有人看得雾煞煞... 那我稍微再做个简单的说明(至少字比较少)... Y/C 伸张是将数据范围(动态范围)扩展 Y/C 压缩是将数据范围(动态范围)缩小 DVD/VCD/AVI 所纪录的数据范围(动态范围)都是 16~235(纯白 235 纯黑 16) 电视上显示的数据范围(动态范围)是 16~235(纯白 235 纯黑 16) 而计算机屏幕上显示的数据范围(动态范围)是 0~255(纯白 255 纯黑 0) 但 TMPEGnc 预设接收的数据范围(动态范围)也是 0~255(纯白 255 纯黑 0) 当压缩时为恢复 DVD/VCD/AVI 的数据范围预设会做 Y/C 压缩(0~255-->16~235) 所以当 TMPEGnc 读取到 DVD/VCD/AVI 的数据时会以为数据范围也是 0~255 结果压缩时照预设也做了一次 Y/C 压缩(16~235-->小于 16~235)... 导致数据范围小于 DVD/VCD/AVI 规定的 16~235 由于电视上显示的数据范围是 16~235 因此你在电视上看会觉得颜色变淡,好像照上了一层白纱 因为所记录的纯白(小于 235)看起来不是纯白(255) 纯黑(大于 0)看起来也不是纯黑(0) 同时因为数据范围(动态范围)小于 16~235 所以会觉得对比不足(最亮和最暗的差距缩小) 同样的道理 在计算机屏幕上观看 DVD/VCD/AVI 时 为恢复计算机屏幕的数据范围,显示卡和软件预设会做 Y/C 伸张(16~235-->0~255) 根据上述状况,若观看用 TMPEGnc 压出资料范围小于 16~235 的 DVD/VCD/AVI 此时显示卡和软件预设会做的 Y/C 伸张将导致[小于 16~235]-->[不足 0~255] 一样会产生对比不足(最亮和最暗的差距缩小)的情形!

所以结论就是我一开始所说的,AVI 转档的时候,因为 AVI 本身数据压缩为 16~ 235,如果没有要对画面做修改,则不必做 Y/C 伸张,但是压缩的时候必需要勾 选进阶设定-->量子化行列(Quantize matrix)底下的 "Basic YCbCr ?出力"(Out YUV data as Basic YCbCr not CCIR601),这样 TMPGEnc 压缩时便不会做Y/C 压缩,压出来的颜色、对比才会正确。 最后我相信有人会问 TMPEGnc 里 Descale CCIR601 这个滤镜在哪里? 设定(TMPEGnc 程序主画面右下角"设定"按钮)-->进阶-->自订色彩修正(该页面下方的滤镜中)点两下进入-->新增-->模式选 Descale CCIR601-->"明亮"跟"色度" 都推到底(255)-->"启动滤镜"打勾-->按"确定" 另外何时需要用的此滤镜呢? 基本上只要你读取 TMPEGnc 的各项模板后,在[设定(TMPEGnc 程序主画面右下角 "设定"按钮)-->进阶]这个页面下你有变动到的话,建议一定要加此滤镜!原因上 面已经说了!


后记: 其实笔者也是后来才知道 Y/C 压缩与伸张观念对转档的严重性,经实验结果发现 真的效果差非常多,我也知道玩 AVI 转 SVCD/VCD 的人很多,所以特此写一篇教学,希望各位读者看过以后别再犯此错误!


TAG:

引用 删除 飞兔   /   2008-01-24 00:28:02
maguan132的个人空间 引用 删除 maguan132   /   2007-06-07 18:14:15
我都看不懂!!
苗族风 ZAM ZUAG HMOOB 引用 删除 苗族风   /   2007-06-01 00:03:02
我也难得看完啊,哈哈哈.............
随风来去 引用 删除 随风漂泊   /   2007-05-31 23:46:08
太专业啦,看的我头疼。
 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2008-08-22  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 734003
  • 日志数: 1091
  • 图片数: 34
  • 影音数: 41
  • 书签数: 33
  • 建立时间: 2006-12-02
  • 更新时间: 2008-08-16

RSS订阅

Open Toolbar