搜索 社区服务 统计排行 帮助
  • 21010阅读
  • 29回复

[转贴]《教學》99% 用 TMPGEnc 將 AVI 轉 SVCD,VCD 的人必犯的嚴重錯誤設定!!!

楼层直达
级别: 元老
注册时间:
2001-11-21
在线时间:
0小时
发帖:
3767
《教學》99% 用 TMPGEnc 將 AVI 轉 SVCD,VCD 的人必犯的嚴重錯誤設定!
(PS:因為是繁體的 所以上傳.txt附件可以轉成簡體)
(PS:這是SNIC大大作品 感謝kadisusolo 告知 thx thx thx )
==========================================================================
*要轉貼請說明出處和作者*
*最近發現很多人轉貼教學都不說出處和作者*
*就算忘了也該要說一下是轉貼的*
*之前幾篇教學被偷了好幾次很難過*
*我認為這是很糟糕的行為*
===========================================================================

一般人往往沒注意 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 Basic YCbCr not CCIR601),這樣 TMPGEnc 壓縮時便會做 Y/C 壓縮,壓出來的顏色、對比才會正確。

但 AVI 轉檔的時候就要相反,因為 AVI 本身資料壓縮為 16~235,如果沒有要對畫面做修改,則不必做 Y/C 伸張,但是壓縮的時候必需要勾選進階設定-->量子化行列(Quantize matrix)底下的 "Basic YCbCr ?出力"(Out YUV data as Basic YCbCr not CCIR601),這樣 TMPGEnc 壓縮時便不會做 Y/C 壓縮,壓出來的顏色、對比才會正確。若要對畫面做修改,必須使用 Descale CCIR601 這個濾鏡,把 Luminous, Chroma 兩個選項都推到 255(也就是做 Y/C 伸張),然後才做其他的編輯動作。Descale CCIR601 的順位要排第一位。然後壓縮時直接壓縮("Basic YCbCr ?出力"此時就不用勾了)便可以得到正確的結果。

OK...以上算是小小的結論..Y/C 伸張及壓縮是非常重要的觀念!可以決定你轉出來的東西顏色鮮不鮮豔!

如果你看得懂我以上所說的...那你不是老早就注意到...不然就是雖然你設定錯誤但你也知道該怎麼修正了...

可是如果你看不懂...表示你就是那 99% 設定錯誤的人且不知如何修正...那請仔細看以下的詳細的解說...
以下為一位前輩的文章,因為寫的很淺很清楚了,沒任何概念的人都會懂!
所以特別收錄:
(我知道很長,但請耐心看完,絕對對你有幫助!)
引用
Originally posted by Silky

DVD/VCD/DV 等使用的 MPEG/MJPEG 壓縮,記錄的 YCbCr 格式,是遵循 ITU-RBT.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 YUV 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 的人很多,所以特此寫一篇教學,希望各位讀者看過以後別再犯此錯誤!
级别: 新手上路
注册时间:
2002-06-02
在线时间:
0小时
发帖:
116
只看该作者 1楼 发表于: 2003-04-18
感謝分享,這篇對我來說很實用,最近常在轉VCD^^
另外教學的作者應該是「snic」大大,看過其他是他做的教學裡也會出現這段話「*要轉貼請說明出處和作者*最近發現很多人轉貼教學都不說出處和作者*就算忘了也該要說一下是轉貼的*之前幾篇教學被偷了好幾次很難過*我認為這是很糟糕的行為*」
级别: 侠客
注册时间:
2003-02-26
在线时间:
0小时
发帖:
334
只看该作者 2楼 发表于: 2003-05-02
Re: [转贴]《教學》99% 用 TMPGEnc 將 AVI 轉 SVCD,VCD 的人必犯的嚴重錯誤設定!!!
引用
最初由 WINGX 发布
所以結論就是我一開始所說的,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 程式主畫面右下角"設定"按鈕)-->進階]這個頁面下你有變動到的話,建議一定要加此濾鏡!原因上面已經說了!

對各位真的很抱歉...

根據我最近的實驗結果

AVI 轉檔的時候,不要勾選進階設定-->量子化行列(Quantize matrix)底下的 "Basic YCbCr ?出力"(Out YUV data as Basic YCbCr not CCIR601),這樣 TMPGEnc 壓出來的顏色、對比才是跟原來的相同的。

上述的東西蠻理論的...沒想到當我多次實驗後才發現現實跟理論有所差距

某位大大說過:
理論歸理論,實際上做起來可能會有很大的差异。而且理論也不一定 100% 正确,像我就覺得 GKnot 亂調整出來的 stats 比較好,但是理論上 GKnot 調整 XviD 的 stats 檔,結果並不正确 ^^;又譬如說 MP3 的壓縮工具 Lame 最新的開發測試版提供了几個參數讓使用者調整,開發人員根据理論建議的參數設定,實際上測出來音質反而較差,這也是一個理論與實際不符合的例子。
其中可能的原因有:
1. 理論有錯
2. 我們對理論的理解有錯
3. 實際情況遠比理論復雜,我們對理論應用于實際情形的認識不夠
所以小弟以上所說的只是提供給大家做為參考,大致上了解是怎麼一回事就好,

當然這些原理确實很復雜,不容易理解,所以 Doom9 上討論了老半天也沒講對。我自己本來也不懂,后來是因為看了 Silky 兄的文章,我才明白其中的來龍去脈。如果有錯,也是我的理解有誤,和 Silky 兄無關

所以真的很抱歉@@...

P.S.
不過意外發現 TMPEGnc 裡 Descale CCIR601 這個濾鏡"明亮"不變,"色度"推到底,"這樣轉出來的mpeg顏色會更鮮豔漂亮...^^"
级别: 骑士
注册时间:
2002-06-02
在线时间:
0小时
发帖:
1032
只看该作者 3楼 发表于: 2003-05-13
繁啊 我就是用默认的模板再 读取 UNLOCK 降低画面 声音 码流
这样1155K +160K一张CD能装3集SVCD 比VCD多

级别: 骑士
注册时间:
2002-08-15
在线时间:
0小时
发帖:
1458
只看该作者 4楼 发表于: 2003-06-10
有點混淆了
版主轉貼的文章
原作者說理論跟現實不同
不跟從轉帖的方法做才是正確
但我嘗試以轉帖文章裡的方法進行設定
對比度的確有進步(跟用nero進行avi轉vcd相比)
究竟(Out YUV data as Basic YCbCr not CCIR601)的選項要勾起還是不需要勾起?_?

漫遊漫游
级别: *
注册时间:
*
在线时间:
小时
发帖:
*
只看该作者 5楼 发表于: 2003-06-13
谢谢
级别: *
注册时间:
*
在线时间:
小时
发帖:
*
只看该作者 6楼 发表于: 2003-06-20
看不懂啊
级别: 新手上路
注册时间:
2003-03-26
在线时间:
0小时
发帖:
126
只看该作者 7楼 发表于: 2003-06-20
看不懂

级别: 骑士
注册时间:
2002-06-11
在线时间:
0小时
发帖:
805
只看该作者 8楼 发表于: 2003-06-22
好厉害呀。。。
色彩比原来的都好,我是两个都打钩,色彩设定按照上面的来做了,量子化行列(Quantize matrix)底下的也打了钩。似乎后面这个打不打都不会影响多少。
下次打算试试 “明亮”不变,“色度”推到底的,再来报告

Kino_No_Tabi


旅行者,旅行者你。。。能走到那里去呢?

级别: 新手上路
注册时间:
2003-06-16
在线时间:
0小时
发帖:
82
只看该作者 9楼 发表于: 2003-06-24
意识看懂了 WINGX还真是能找好东西放上来帖呀

帖外话: 能不能介绍些关于视频技术的论坛给我。


挂掉一个40G硬盘(疼心中)````我的动画呀`!
另:用ED共享的教训
1。————请限定连接数
2。————请配备UPS
3。----------请保证电压稳定
级别: 新手上路
注册时间:
2003-05-31
在线时间:
0小时
发帖:
22
只看该作者 10楼 发表于: 2003-06-30
看了后 会来一定实验

不过复件 我每有下来
有什么用吗?

THE KING OF FIGHTERTS
级别: 工作组
注册时间:
2001-11-21
在线时间:
0小时
发帖:
795
只看该作者 11楼 发表于: 2003-07-14
Descale CCIR601 和YC伸张两个滤镜都很好用的 就是处理AVI的话 速度忒慢了 T___T
级别: 新手上路
注册时间:
2001-11-21
在线时间:
0小时
发帖:
209
只看该作者 12楼 发表于: 2003-07-18
哇...看完覺得功力倍增丫..感謝教導囉!!
级别: 新手上路
注册时间:
2002-05-15
在线时间:
0小时
发帖:
128
只看该作者 13楼 发表于: 2003-07-29
终于看懂了,又懂了一些东西,谢谢
级别: 侠客
注册时间:
2003-05-13
在线时间:
0小时
发帖:
499
只看该作者 14楼 发表于: 2003-07-29
汗……终于看完了,了解了,楼主辛苦

快速回复

限150 字节
上一个 下一个