DGIndex中文用戶手冊

出自NMM Doc
於 2010年11月3日 (三) 17:31 由 VempX討論 | 貢獻 所做的修訂
跳至導覽 跳至搜尋

DGIndex是什麼

DGIndex是DGMPGDec工具包的一個組件,它主要用來創建MPEG視頻流的索引文件,這個文件包含了每一幀的位置和一些其他附加信息。這個索引文件,或者叫做工程文件,可以用AVISynth通過加載DGDecode濾鏡來將其載入以提供幀精確服務。DGIndex可以解碼大部分的MPEG1/2流,包括基本流、節目流、VOB、VCD、SVCD、PVA和傳輸流。並且包含了視頻分離(m1v/m2v),音頻分離(ac3,dts,aac,mpa,lpcm),最優化的iDCT,亮度濾鏡,裁剪濾鏡等附加功能。
DGIndex基於Chia-chen Kuo的DVD2AVI 1.77.3並進行了改進。
改進之後被命名為DGIndex以避免名稱上的衝突,並且能顯示出功能上的區別以及確實的表示它屬於neuron2的DGMPCDec組件包。Neuron2會通過後面的開發人員名單來展示DGIndex的起源。
你可以在這個地址找到最新的編譯版和原始碼 http://neuron2.net/dgmpgdec/dgmpgdec.html
DGIndex是一個基於GPLv2條款的免費軟體,在使用本軟體或代碼前你必須同意這個條款,詳細內容請查看條款章節。
本文檔是DGIndex的參考手冊,查閱此文檔可以獲取快速指南、常見問題以及DGIndex典型使用方法的指導。

文件菜單 [File Menu]

打開 [Open]

使用本選項可以打開一個或多個源文件。如果你要打開多個的文件,則它們將會按照文件列表內顯示的順序連接起來。多路處理或幀服務將會生成一個包含源文件的單獨輸出流。當你要打開多個文件的時候,所有的文件必須是同樣的類型。比如,你不能同時打開MPEG1和MPEG2文件,不能同時打開節目流和傳送流等等。
點擊文件/打開之後可以做以下兩件事:
  1. 如果還沒有打開任何文件將會看到打開對話框。你可以通過按住SHIFT或CTRL鍵來選擇多個文件。單擊打開返回文件列表對話框。
  2. 如果有一個或多個文件已經被打開,則會出現文件列表對話框。
你還可以通過拖拽文件到DGIndex的窗口上來打開它。這將會打開文件列表對話框列出拖拽中所包含的文件。
當使用文件列表對話框打開了新文件之後,會對這些文件進行排序(使用一個智能的排序算法)並列出。少見的情況下它給出排列順序並不是你所需要的,不過這可以通過列表編輯按鈕來進行修正。以下是在列表管理中可以用到的按鈕:
  • 添加 [Add] - 打開文件選擇對話框
  • 提高 [Up] - 將選定文件的位置向上提高一級
  • 降低 [Down] - 將選定文件的位置向下降低一級
  • 刪除 [Del] - 將選定文件從列表中刪除
  • 全部刪除 [Del All] - 刪除列表中的所有文件
當你對列表中的排序滿意之後,點擊"OK"按鈕,DGIndex則會把列表中的文件按照順序連接起來並載入。
有時由於剪切或編輯,視頻流開始的幾幀或許無法正確解碼(因為他們的參考幀丟失了)。如果你的文件列表中的第一個文件出現了這樣的情況,那麼需要用第一個可以正確解碼的幀的拷貝來替換這幾個壞幀。

關閉 [Close]

這個選項用來關閉所有已經打開的文件。

載入工程 [Load Project]

使用這個選項載入已經存在的DGIndex(d2v)工程文件。
當一個工程文件載入後,DGIndex將會按照正確的順序打開工程中的文件並按照工程文件還原以下設置:
  • IDCT算法
  • 場操作
  • YUV -> RGB 範圍
  • 亮度濾鏡
  • 剪切
  • 時間軸選取點
例如音頻等一些沒有在上面列出的選項將不會被還原。它們將會保持在載入工程文件之前的狀態。

保存工程 [Save Project]

這個選項用來創建一個DGIndex工程文件(d2v file),這個工程文件可以通過DGDecode(或者DGVfapi)來給視頻提供幀服務。
DGIndex所創建的這個工程文件包含源文件的路徑、視頻設定以及MPEG索引信息。如果想了解更多關於d2v文件結構的信息,請參考附錄A。
當保存工程文件時,它會遵循時間軸上的選取點,意思就是,需要被提供幀服務的視頻以及分離出來的音頻將僅僅包含時間軸上選取點範圍內的輸入數據。
生成工程文件大概需要幾分鐘,這取決於工程文件的體積以及你計算機的性能。
記住一旦工程文件創建完成,不要去更改源文件的路徑和名字。如果你必須要對源文件改名或者移動它,那麼你需要重新生成你的工程文件,或者編輯d2v文件開頭部分關於路徑的內容。

關於Honor Pulldown Flag、Ignore Pulldown Flags和Force Film

MPEG2視頻提供了RFF旗標,在播放過程中可以使任意幀的一個嘗自動重複。這個被重複的場不存在於MPEG2視頻流中,而是在解碼視頻流的過程中通過複製得來的。這個機能通常用於將膠片速率(Film rate,即23.976fps)的影片在NTSC速率(NTSC rate,即29.970fps)的設備上播放,其過程稱為3:2 Pulldown

然而事實上,經常會遇到使用不同方式(pattern)進行pulldown的情況。比如,將25fps的PAL轉換至29.970的NTSC幀速。

理解原理,並為此選項的設置找到合適的參數而做些練習,是很必要的。在這裡我們只能說明操作方法並給出一些大致的指導。在現在已有的文章中有更多進一步的說明。 Field Operation選項允許用戶指定如何處理pulldown(RFF)旗標。

Honor Pulldown Flags(遵循旗標)

在旗標存在的情況下將會遵循旗標,該重複的場會被重複。這就意味著你得到的結果將會與在最終顯示設備上獲得的結果相同(譯註:Final Display Device,最終顯示設備,這裡作者應該是指電視或其他顯示設備,而不是電腦)。所以,如果你有一個經過3:2 Pulldown的視頻,你會得到標準的3幀無交錯幀(Progressive)與2幀交錯幀(Interlaced)為一組循環出現的結果。如果你的視頻屬於PAL或者MPEG1,那麼就不會重複場,因為PAL和MPEG1視頻中不含有旗標。幀率與源幀率相同。

Ignore Pulldown Flags(忽視旗標)

旗標會被忽視。這個選項將會允許用戶得到沒有重複場的源MPEG圖像。然而,因為重複場本來應該顯示(而沒有被顯示),所以最終得到的幀率(fps)將會與源幀率不同,這種情況甚至會發生在整個片子當中。如果源的pulldown做的不規範,忽視旗標可能會造成嚴重的聲像不同步。這個選項通常只有有經驗的用戶才會使用,他們通常使用這個選項來判斷片源的特徵。儘管這個選項將會忽略旗標,但是旗標仍然會被記錄在D2V文件當中。 Force Film(強制使用膠片速率)——這個選項是為編碼為23.976 fps的內容經過pulldown顯示為29.970 fps而準備的。這個選項將會將來源恢復為23.976 fps並且保持全片聲像同步。這個選項通過忽視旗標並插入/刪除幀來保持穩定、同步的輸出流。不要將本選項用於非3:2 Pulldown來源,並且千萬不要用於PAL或者MPEG1。

Force Film(強制IVTC)

Field Operations是使用DGIndex過程中需要了解得最重要的選項。大多數人需要首先使用Honor Pulldown Flags進行預覽。如果來源不是PAL或MPEG1,並且信息(Information)窗口的Video Type一欄顯示Film 95%或更高,那麼這個來源便可以作為3:2 Pulldown型來處理,生成D2V工程文件的時候,就可以選擇Force Film。 如果Film百分比低於95%或Video Type顯示了一個NTSC百分比,那麼生成D2V工程文件的時候就應該設定為Honor Pulldown Flags。如果結果是混合的(因為來源是交錯,混合型交錯/3:2,場混合,等等),你可以在AVS腳本中加入Deinterlace或IVTC濾鏡。

如果Film百分比比較低,但是仍占大多數,你可以試試Forced Film,並且看看結果如何。你也許會偶爾遇到一些交錯幀,這種情況下可以用FieldDeinterlace(full=false)來處理。如果結果令人滿意,那就恭喜你。如果不好,還有很多其他更加高級的方法來處理混合型、硬膠捲過帶(hard-telecine)、場混合和其他奇形怪狀的來源。更加高階的的處理方式幾乎全部要求使用Honor Pulldown Flags來保存工程文件。

注意事項

當對Film百分比進行測試的時候,最好測試整個來源。因為片頭和片尾的類型有時候會與正片不同。

幾乎在全部情況下,如果你知道來源並不是大部分由3:2 Pulldown NTSC構成,並且想要選擇Honor Pulldown Flags,之後根據需要進行後續的處理。請牢記一點,如果來源中不包含旗標,那麼也就根本無從「遵循」,所以這個選項將會直接將源內容輸出。

Ignore Pulldown Flags選項只用於想要了解MPEG源內容、類型的高階用戶。

注意,Honor Pulldown Flags之前被稱作「None」,Ignore Pulldown Flags之前被稱作「Raw Encoded Frames」。

參考文獻

http://forum.doom9.org/showthread.php?t=96870