DVD PullDown 详解
3:2/2:2 Pull down模式基于逐行掃描技術上進行的,針對以電影膠片為最初拍攝素材媒介的NTSC視頻軟件的一種視頻信號再生技術。大部分的DVD電影和其他以視頻信號媒體記載的電影的播放都是先經過膠片影像到視頻信號的轉換。原來的使用電影膠片拍攝的過程中拍攝速度是24幀/秒。在電影院播放時按每格放2次的原理實現48幀/秒的速率,這就是實現2:2Pull Down對應模式。另外,由于液晶電視常規的屏幕刷新頻率為60Hz,播放DVD的時候按照第一格分兩場,第二格分三場,第三格分兩場,第四格分三場的順序轉換成60場(30幀)/秒的長度,但由于采用的是隔行掃描技術,這60場都是不完整的262.5線的圖像,而且每第2、3個幀都會出現圖像重疊混淆的情況,使圖像的細節模糊甚至丟失。并且最終的圖像實際清晰度只有262.5線。在采用3:2 Pull Down逐行掃描技術時,變換后產生的每一個場都是完整的帶有483掃描線的圖像,而且每播放的是60場與圖像幀一樣的完整圖像,沒有任何細節被丟失或模糊化,全程的圖像清晰度均為483線。?
模擬電視時代的3:2/2:2 Pulldown技術
要想弄清楚24P的問題,我們還要從模擬電視時代說起。電影每秒鐘由24幀圖像組成,在放映的時候,經過技術處理,一般顯示為48Hz或72Hz,因此我們能夠看到動作連貫的畫面。
在模擬電視時代,電視里看到的電影則有所不同。在美國、日本以及我國的臺灣省,電視是NTSC制式的,每秒鐘掃描頻率是60Hz,而在我國,電視節目是PAL制式的,每秒鐘的掃描頻率為50Hz。這兩種標準,都是隔行掃描的。電影要在電視上播出,需經過一番比較復雜的技術處理。
以NTSC節目為例,電影的24幅圖像,要分配成NTSC電視節目的60幅圖像,電影的第一幅圖像,分配到電視節目的1-3幅圖像中,電影的第二幅圖像,分為為電視節目的4、5幅圖像,依此類推,電影的圖像,按3幅-2幅-3幅-2幅的順序交替分配到電視節目的60幅圖像當中。這就是我們常說的3:2 Pulldown技術。
?
對于PAL節目,處理比較簡單,電影的每幅圖像,在電視節目播出時,重復顯示一次,24幅電影圖像,在電視機上以每秒鐘48幅圖像顯示出來,這種技術就成為2:2 Pulldown技術。由于PAL電視節目掃描頻率為50Hz,因此PAL制電視播放的電影,播放速度要比真正電影膠片快4%,伴音的音高略高,但是普通觀眾難以察覺。
???? DVD時代的逐行掃描技術
上面提及的3:2/2:2 Pulldown技術,其實我們忽視了一個環節,電影轉換成電視節目后,還有一個處理為隔行信號的問題,也就是說,模擬電視時代,我們在電視中看到的電影節目,都是經過處理過的隔行掃描信號。進入DVD時代,這種情況發生了改變,逐行掃描技術出現了。
DVD時代出現逐行掃描
DVD屬于10年前的技術,從DVD本身信號的記錄來看,屬于數字技術,但是從DVD和電視機的連接看,最初都是AV復合、S端子或色差連接,仍屬于模擬技術范疇。帶有HDMI接口的DVD,也是近年來才出現的,而且不算很普及,只有少數高檔DVD機才具有。
支持逐行掃描帶HDMI接口的DVD機
隨著逐行掃描DVD的出現,也出現了逐行掃描電視機,這種電視機在接收逐行掃描的電視信號時,以NTSC信號為例,先要將60Hz的隔行電視信號,還原為電影原始的24幅完整圖像,再按3:2 Pulldown的方法,分配成60幅逐行掃描圖像顯示出來。
DVD方面,最初的DVD也是用上述的方法處理逐行掃描信號的。而實際上,DVD光盤上記錄的電影信號,可以認為都是24P的。早期的DVD無法直接對24P信號直接處理,還要經過一系列的數模/模數轉換,或者24P-60i-24P-60P的繁瑣過程。后期的DVD,隨著芯片技術的發展,逐行掃描DVD可以做到24P-60P的最簡潔處理。
數字高清時代 24P電影時代早該到來了
高清電影本身可以認為都是1920×1080/24P的。進入高清時代后,和模擬時代最大的不同還由兩個方面,一方面,電視機已經進入全高清時代,具有1920×1080的物理分辨率,也就是常說的Full HD或1080P電視,另一方面,HDMI接口已經普及,信號傳輸已經實現全數字化,進入了真正的數字時代。
最初的HDMI只能輸出或輸入1080/50i/60i信號,從技術角度講,只要電視機的電路足夠好,其效果和1080P是一樣的。再進一步的發展,HDMI已經能夠輸出和接收1080P信號了,其頻率包括50和60Hz。
但是我們知道,電影原始圖像只有24P,無論輸出為50P還是60P,都要經過3:2/2:2 Pulldown技術。如果高清播放器材比如藍光播放機的電路不夠好,即使輸出1080P信號,可能不如電路水平高的1080i信號效果好。如果高清播放設備方面直接輸出電影的24P信號,平板電視直接接收24P信號后由電視機的電路處理并顯示出來,或許更好。
?
松下藍光DVD播放機DMP-BD30,支持24P信號輸出
24P信號輸出,首先出現在藍光播放機和HD DVD播放機上,目前已經成為藍光播放機的基本功能。采用8634以上級別芯片的高清播放機,也支持24P輸出,隨后24P電視也應運而生。
?
支持24P電影模式播放的液晶電視和等離子電視
對于高清播放設備,輸出24P信號實際對技術的要求更簡單,省略了很多環節。對于平板電視而言,和1080i信號比,也省略很多電路,24P電影模式播放將成為近期中高端平板電視的新看點。除了松下近期發布這幾款平板電視新品外,已經確認具有24P電影模式播放功能的液晶電視還有索尼的W380A系列和V440A系列;LG的50Y系列;飛利浦的7403系列和5403系列。
當然,還有很多品牌和型號目前還不能確定是否具有24P電影模式播放功能,我們希望各廠商能夠為我們提供相關信息,PConline數字家電頻道會以最快速度通報給廣大網友。
?
?
?
?
首先要看interlace的信號是怎么得來的,一種是真正的interlace的信號,像一般的電視信號,在錄制的時候就是interlace的,這種信號是不可能完全deinterlace的,也就是說不可能得到完整的progressive的信號,因為丟失的信息是不可能完全重建的。另一種是,film-based的TC得來的信號,用3:2pulldown/IVTC就可以完全重建progressive的信號。
接下來澄清一個問題:deinterlace 指的是什么?如果是指把interlace的信號還原成progressive的信號,那么在對待電影的片源來說就應包括IVTC/3:2pulldown,或者說3:2pulldown是一種deinterlace。一般來說,如何把interlace的信號轉化成progressive的信號呢,有以下基本方法:
line doubling: 每一行都重復一遍,損失一半的垂直分辨率
bob,interpolate:插值的方法。沒有信號的行用相鄰的兩行插值得到。適用于一般的電視信號,比如,用電視卡在計算機上看電視。
weave:把兩禎疊加后輸出(一禎的奇數行和下一禎的偶數行疊成完整的一禎,并沒有對每一禎進行處理,其實等與do-nothing,即什么也沒做。適用于基于電影的DVD,前提用3:2pulldown/IVTC去掉加入的禎。
針對真正的interlaced的信號還有更高級的方法如:
Motion Adaptiveness:運動圖像用bob,靜止圖像用weave。
Motion Compensation:在weave用得多,bob用得少的情況下,估計物體的移動,構造每一禎。這個比較復雜,也比較高級,一兩句說不清楚。
orbitlee提到的各種算法大多是基本算法的演變。
所以,對于film-based 的經TC得來的DVD mpeg2 來說,deinterlace不是問題,DVD有專門的標示用來做3:2pulldown,然后把對應禎疊加得到progressive 24fps的信號,按比例輸出到60、72、85hz的顯示器上。這其中還有winDVD借用的philips的技術:Trimension? DNM (Digital Natural Motion) ,充分利用刷新頻率,將24禎再變換成60禎(不是簡單的重復)而是構造新的禎。
對于HDTV,即便是電影,我也不知道是TC的還是真正的interlaced的(一直找不到有關電視臺播出的HDTV電影的資料,這是非常關鍵的一點,直接關系到deinterlace),如果是TC的那么按照DVD一樣處理就行了,有區別的地方是HDTV是流媒體,是否能像DVD那樣找出對應禎進行3:2pulldown(我記得以前看到過有關文章)。如果是truly interlaced,比如,各大電視臺的黃金時間節目如CSI(1080i)等,即錄制的時候就是1080i的,那么,deinterlace的算法就很重要了,在沒有好的算法之前,一般來講會用bob,畫質可能會不如720p。在decoder設置上,truly interlaced 電視信號是不宜用weave的。對于720p的信號,decoder是不應該去處理的,不存在選用bob或weave的問題。這其實還牽扯到另一個問題,1080i和720p哪個更清晰的問題。我個人認為,TC的1080i的信號經過IVTC和deinterlace肯定比720p的要好,不存在什么每禎540線的問題;而對于實時轉播的電視信號來說,則1080i靜態占優,720p動態占優。
綜上所述,我不認為討論基于電影(film-based)的用TC生成的NTSC信號的deinterlace有任何意義,任何一種decoder都應該能勝任,至少對DVD來講。我們沒有必要去告訴decoder用weave或bob,decoder應有算法自動識別的,除非對于HDTV的mpeg2不適用。不同的是其他性能,比如它們的容錯性,即在信號有損失的情況下如何進行這個過程,或者在沒有標示的情況下找對應禎的能力。從實驗角度來說,如果是人工生成的標準信號,應該是沒有區別的。對于truely interlaced的NTSC信號,我們也沒啥可做的,用bob就好了。反過來說,如果你用weave出現拉絲,那說明你的片源是trully interlace的,或者,可能是ivtc做得不好,沒有去掉TC加入的禎,那么decoder就不支持代標示的HDTV的IVTC,也就是說HDTV的IVTC要靠decoder自己去判斷哪些是人為加入的禎。
另外,僅作參考,根據avsforum的fans的經驗和鑒別,Dscaler5和最新的nvidia的decoder對于DVD的mpeg2效果最好。對于后期處理,希望大家能好好利用ffdshow。還是那句話,顯示設備是大家因該考慮和投資的主要考慮對象,對于沒有好的顯示設備來說,HDTV的意義并不很大,尤其是花很長時間下載,就更不劃算了,好好優化DVD是正經,比如,如何把720x480的信號最優化地upscale到1280x720的顯示設備上。等到大家都有好的顯示設備時,hd-DVD也應該批量化了,到時候花錢買D版就是了。我不太清楚HDTV在現有的軟硬件基礎上有什么可優化的,請懂得人另開版面討論,相信會有意思的多。還有就是有個會員提到的買櫝還珠的問題,內容比形式更重要
?
?
IVTC
?
幀=Frame / 場=Field / fps=Frame Per Second / Film=電影膠片
電影原本是 24fps 的,在膠卷過帶(Telecine)的時候,NTSC 制會經過 3:2 pulldown 轉為 30fps。?
也就是原本 1 2 3 4 四個 Frame,拆成 1o 1e 2o 2e 3o 3e 4o 4e,每個 Frame 拆成奇數掃瞄線組成的奇數圖場(Odd Field)和偶數掃瞄線組成的偶數圖場(Even Field)。重新組合如下(以 Odd Field First 的順序)
????1o 1e - 2o 2e - 2o 3e - 3o 4e - 4o 4e?
????[ A ] - [ B ] - [ C ] - [ D ] - [ E ]?
每兩個 Field 再重新組合成一個 Frame,就變成 [A][C][D][E] 五張 Frame。這樣由原本的 4 張變成 5 張,4*6 = 24 => 5*6 = 30,就能從 24fps 轉為 30fps。
在電視上看,電視因為是交錯顯示,所以看不到交錯線。但是在計算機上看,計算機屏幕是循序顯示,所以中間的 2o 3e -3o 4e 這兩張 Frame 中的 Field 分別來自不同的 Frame,一起顯示的話就會看到交錯的現象。
????DVD 壓縮的時候,母帶是膠卷過帶(Telecine)后的 30fps,但是我們知道,其實原本的影片是 24fps 的,這 30fps 其實是從 24fps 轉出來的,中間有不必要重復的 Field。這些重復的 Field 會造成交錯,使得每 5 個 Frame 中就有 2 個 Frame 交錯(名言:每五張爛兩張),這些交錯的畫面要壓縮不但浪費空間,而且交錯畫面又難壓縮,會使得壓縮的效果很差。
????所以先進的 DVD 壓縮制程,在壓縮時都會使用 IVTC(inverse telecine,反膠卷過帶),將 30fps 轉回 24fps,這樣壓縮的畫面張數由 30fps 減少為 24fps,少了 20%,等于 Bitrate 增加 20%,而且畫面無交錯容易壓縮,所以壓出來的畫質會好很多。
但是 IVTC 檢出不一定能做到 100%,遇到無法檢出、判斷的部分,Encoder 還是會以原本的 30fps 來壓縮。所以我們會看到有些 DVD,是 Film(24fps)和 NTSC(30fps)混合的 DVD,又叫做 Hybird(混合)的 DVD,這個意思就是說,這張 DVD 內的畫面,是 24fps 無交錯,和 30fps 有交錯兩種型態互相混合的。
????通常 RC1 八大電影公司出的 DVD IVTC 率都很高,幾乎都高達 99% 以上,但是其它的公司出的 DVD 就不一定有這么高的比例。IVTC 100% 的 DVD 代表這張 DVD 內完全以 24fps 壓縮,那么在 30fps/60 field/s NTSC 制的電視機上要播放時,要怎么播放呢?這些 DVD 在壓縮的時候,Encoder 會寫入一個 Flag(旗標)的信息,叫做 Repeat First Field,簡寫為 RFF。根據這個 RFF,DVD 機播放的時候,就會知道哪些 Field 要重復輸出,利用重復輸出這些 Field,DVD 機就會再播放的時候,做上面提過的 3:2 pulldown 的動作,在播放的同時,將 24fps 轉為 30fps 輸出,這樣就能在電視上正常收看了。
PAL 制則不一樣,膠卷過帶時是采用 2:2 pulldown,也就是仍然輸出原本無交錯的 Frame,但始將播放速度加快 4%,聲音也一起加快 4%,提升為 25fps,所以理論上來說,PAL 很好處理,因為畫面根本無交錯,所以直接壓縮即可。不過我在這里看到有朋友提到,PAL 的 DVD 還是有些是交錯的,這點我就不明白是為什么了,可能是制作過程上有問題吧。(譬如說用 DV 去拍的影片,DV 大部分是交錯式拍攝,張張都交錯,是補不回來的)
????DVD2AVI 的 Force Film,所作的處理,和 TMPGEnc 的 IVTC 不一樣。TMPGEnc 的 IVTC 是跑一遍分析畫面的信息,計算每一張畫面的「奇數掃瞄線和偶數掃瞄線的差異」和「動態」這兩個信息,藉由這些數據,推測出原本的 24fps 的順序,將畫面反轉回原本的 24fps。因為需要分析、計算這些數據,所以跑第一遍的時候花的時間要比較久。而 DVD2AVI 則完全不一樣,DVD2AVI 是根據上面提到的 RFF 這個旗標的信息,將重復的 Field 刪除掉,直接原封不動的輸出 DVD 內原本儲存的 24fps 的 Frame。因為只是做這樣的判斷,所以速度很快,存 .d2v 檔時一下子就存好了。所如果這部 DVD 在壓縮時的 IVTC 率很高,Film 的比例高達 95% 以上,內部原本就是儲存 24fps 的形式,這樣才可勾選「Force Film」這個選項。如果該 DVD 的 IVTC 率很低,內部大部分是 30fps 的形式,選「Force Film」輸出,你會得到亂七八糟的結果。所以在使用「Force Film」這個選項之前,必須先用 Preview 預覽一次,讓 DVD2AVI 跑一小段試試看,這部 DVD 的 IVTC 率究竟有多高,如果 Film 的比例很低,那么就不可以使用 Force Film 輸出。
????另外如果是 PAL 制的 DVD,更不可以開 Force Film,否則 DVD2AVI 會每五張砍掉一張,原本 25fps 會變成 20fps,畫面會錯得離譜。PAL 的畫面就是原本電影無交錯的畫面,不需要做 IVTC,如果你的 PAL DVD 有怪異的交錯,那么我猜測它的訊源一定是非""正規""的訊源(例如 DV),才會發生這種現象。遇到這種情況你應該作的是 Deinterlace,而不是 IVTC。
DVD2AVI 的 Force Film 和 TMPGEnc 的 IVTC,兩者的作法和使用的時機都不同,使用者要自己判斷該用哪一種方法。如果有人拿 Film 率很低的片子用「Force Film」輸出,得到慘不忍睹的結果,然后怪 DVD2AVI 的 "IVTC" 爛,那真是冤枉了 DVD2AVI 的作者。這些觀念在作者的網頁上都講得很清楚。
節錄當中的一段:?
Forced FILM is based on RFF detection and frame decimation/duplication.?
NTSC or PAL + Forced FILM ON -> garbage?
FILM + Forced FILM ON -> synchronous 23.976 fps flawless FILM (equals to IVTC)
作者說,Force Film 是根據 RFF 旗標偵測和刪除重復的 Frame。?
NTSC(30fps)或者是 PAL 的訊源,如果開了 Force Film,得到的東西會是 garbage,垃圾。?
????Film 的訊源開 Force Film,才會是同步的 23.976fps,無錯誤的 Film 影像(equals to IVTC,等于做 IVTC)
如果片源是翻錄的DVD,MPEG2碼流中沒有 RFF 旗標以供還原為Film ,用DeInterlace也只是模糊物體的邊緣部分,是否有完美的辦法呢??
????DVD中的信息將在電視上顯示,因此其記錄的方式是基于場的。不過正規制作的Film->DVD會在原本23.976的MPEG2視頻碼流中加入一些flags(標志),以標志特殊場的方式制定某些場按特定順序重復,以使23.976fps的Film以60場/秒的方式顯示出來。
而以DVD2AVI為代表的IVTC軟件,就是利用這種加入在MPEG2碼流中的flags快速的還原60場的MPEG2為23.976fps的原始Film信息。?
????但是模擬翻錄DVD,顯然將會丟失這些以0/1方式記錄在DVD光盤中MPEG2碼流中的flags標志。所以在用DVD2AVI這類軟件打開模擬翻錄的D版DVD中的MPEG2碼流時,不會識別為Film,并判斷此片不需要IVTC!
????但是實際上這樣的D版DVD是否還需要IVTC呢?——進入正題了?
????由剛才對于DVD制作過程的描述,我們可以發現,播放一張正版DVD(就拿剛才假設歷時為1/6秒的Film->DVD為例),其出現在Video-OUT模擬視頻線(任以一種)的場應該是以類似這樣的順序排列的:A1 A2 B1 B2 B1 C2 C1 D2 D1 D2
????那么即使是模擬翻錄,錄制下來的視頻信號也是以:A1 A2 B1 B2 B1 C2 C1 D2 D1 D2 的順序存在的,而其與源DVD的區別是:
????1。以29.976fps記錄?
????2。沒有MPEG2碼流中flags以供還原為Film?
????3。起點有可能出錯,例如變為 A2 B1 B2 B1 C2 C1 D2 D1 D2?
????4。由于播放機與錄機之間的時基誤差(電源、晶振)可能會lost或rapeat的錯誤,例如:A1 A2 B1 B1 B1 C2 C1 D2 D1 D2
????但是,不論有什么場的差距,模擬翻錄DVD不會自己生出新的畫面,所有畫面仍然是源于最初的film中的A B C D。也正因為如此,IVTC將模擬翻錄的DVD還原為23.976的Film仍然是可能的,其方法就是使用Tmpgenc。
????Tmpgenc不是利用MPEG2中的flags來做IVTC,而是交錯比較各幀和場后,經過比較、判斷場與場之間的差距(拉絲-Flick),判斷決定還原那些特定的場。因此使用Tmpg,即使MPEG2中沒有flags,或者???flags錯誤,只要來源是Film,就可以很好的還原其為23.976的畫面。
????好處:29.976的畫面中仍會有交錯的場出現,例如 B1 C2 。如果是大運動畫面,B1 C2這一幀就會出現拉絲、橫紋。如果制作時使用DeInterlace(Blend),則會模糊物體的邊緣部分,顯然會不如源Film的畫面清晰亮麗。
????可能的問題1:模擬翻錄時的實際過程比較復雜,但基于場序的傳輸是基本。如果在模擬翻錄時,曾經用一些畫面優化設備(例如運動補償,也就是模擬的DeInterlace)變動過畫面,那么使用IVTC也難以還原出清晰亮麗的Film畫面
????可能的問題2:用Tmpgenc打開模擬翻錄的DVD時,無論FieldOrder選擇A或B,用DeInterlace(even-odd)來觀察到“倒退的幀”,出現會變少(目前觀察到的案例不多)。
????關于“倒退的幀”。為什么會出現倒退的幀呢?如前所述,一張Film->DVD的MPEG2應該以正陽的順序記錄場:A1 A2 B1 B2 B1 C2 C1 D2 D1 D2
如果假設FieldOrder=A時為:A1 A2 B1 B2 B1 C2 C1 D2 D1 D2?
DeInterlace(even-odd)時順序出現:A1 A1 | A2 A2 | B1 B1 | B2 B2 | B1 B1 | C2 C2 | C1 C1 | D2 D2 | D1 D1 | D2 D2
那么FieldOrder=B時則為:A2 A1 B2 B1 C2 B1 D2 C1 D2 D1?
DeInterlace(even-odd)時順序出現的是:A2 A2 | A1 A1 | B2 B2 | B1 B1 | C2 C2 | B1 B1 | D2 D2 | C1 C1 | D2 D2 | D1 D1 —— 因此有了“倒退的幀”
總結
以上是生活随笔為你收集整理的DVD PullDown 详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【ZCMU1434】糖果迷阵
- 下一篇: 迷阵突围——Dijkstra求次短路