精華區beta C_Chat 關於我們 聯絡資訊
● 3911 m20 9/08 SmallBeeWayn □ [教學] 影片播放與解碼軟體設定 文章代碼(AID): #1Afbm9KV 作者: SmallBeeWayn (喵喵叫的蜜蜂貓職方法) 看板: C_Chat 標題: [教學] 影片播放與解碼軟體設定 時間: Tue Sep 8 21:28:38 2009 話在前頭========================================================== 在開始安裝前請先看這幾點 1.本教學文是基於功能完整,效能不差,相容性佳為前提去撰寫 盡可能簡化安裝步驟(但是設定超複雜XD),達到最大的支援性以及相容性 對於效能的要求相對次要,但絕對還是遠好於隨便的安裝 2.本教學文試用的作業系統涵蓋從 WinXP到Win7的所有x32 & x64版本 所有提到的軟體都同時有for x32跟for x64的版本 請注意只有x64的播放器才能呼叫x64的Codec, 不能跨位元使用 因為Real x64 for Windows還沒出, 如果常看rmvb影片的請裝x32版 3.安裝前最好把所有舊的Codec全部殺光 技術資訊========================================================== 給專業的安裝者看的, 看不懂不影響 1.目前Real官方沒有for Windows的x64解決方案(因為x64 Codec沒出= =) 新版的ffdshow對於Real的相容性似乎有所提昇, 但是還是沒有跑得很順 目前唯一也最有效的解決方案是暫時不要使用x64的播放器(就算是x64 OS) 這樣對於H.264 Decoder會有一點效能上的影響,但差距其實不大 2.Haali是個很好的來源篩選器, 可惜沒有x64版, 而且對整體影響太小 KMPlayer設定太複雜, 而且功能太多影響整體運作效能 potplayer算是KMPlayer的改良, 不過還是太雜 CoreAVC雖然支援CUDA(nVidia限定)解H.264比ffdshow快, 可是要錢 DXVA解碼失敗率太高, 而且不相容於系統資訊/字幕/同步播放等等... 3.EVR相較於VMR9有幾點好處: a.EVR緩衝在MPC-HC可以開到20, VMR9最多只有4 這代表EVR在高變動流率下更能有效防止掉格 b.EVR支援影像的同步控制, 但VMR9只能讓聲音去追影像 這也能有效防止影音不同步的現象 4.最快的輸出永遠是Overlay(覆蓋合成), 這是因為其犧牲了所有後處理的可能性 直接把影片丟到顯示卡Output Buffer了, 當然效能好上許多 代價是對於 影音同步/字幕/影像後處理/垂直同步/.... 統統都不支援 5.不要在顯示卡之中強制啟用FSAA,對字幕效能影響非常大 垂直同步會讓畫面比較舒服,但是多少會對更新率有影響 檔案下載========================================================== 同時提供x64與x32版本 ffdshow & MPC HomeCinema : http://www.xvidvideo.ru/ MPC-HC 是 Media Player Classic的衍生版本 特色是支援多語系表單, DXVA 跟 狀態OSD ffdshow則是一個影音解碼的整合方案 Real Alternative : http://www.free-codecs.com/download/Real_Alternative.htm Real Decoder的精簡版本 .Net Framework 3.0 http://0rz.tw/PwREt 在軟體選用方面, x64沒什麼選擇,就是MPC-HC + ffdshow x32方面, 除了 ffdshow & MPC-HC是必要的之外 Real Alternative是看Real影片用的 XP的使用者需要安裝.Net 3.0以啟用EVR功能 安裝作業========================================================== MPC-HC有提供安裝版本, 也可以用免安裝版本, 只需要這些檔案: d3dx9_41.dll, mplayerc.exe, mpcresources.tc.dll mpciconlib.dll, MediaInfo.dll 最近mplayerc.exe被更名為MPC-HC.exe了 安裝完先啟動軟體,進行下列設定: View - Language - Chinese (traditional) => 然後就會變中文了 之後進 檢視-設定選項 開始一系列設定 播放程式 : 建議啟用"儲存設定到INI檔" 格式 : 建議選全部的視訊....DVD也可以用MPC-HC撥 播放 : 底下四個開啟設定都要開 輸出 : EVR 自訂呈現 (XP使用者記得先裝好.Net 3.0) RealMedia跟QuickTime都用DirectX 9 繪圖頁用3D, 變更大小看個人喜好(銳利度)設定Bicubic A=0.6~1(PS 2.0) 替代式垂直同步 打勾, EVR 緩衝開到最大 內部篩選器:分離器的部份, 統統都勾起來 解碼器, x64下全部不勾, x32的話只勾RealAudio, RealVideo 音訊切換器:不啟用, 但如果遇到多音源的RMVB就需要啟用 字幕 :延遲0毫秒, 緩衝子畫面20 不要勾[停用動畫],最大材質解析度為桌面, 也不要勾[進位到2的乘方] 萬一電腦跑不動影片才視情況關掉動畫以及降低解析度 設定好之後, 關掉設定, 到 "檢視-繪製器設定" 下還有一些設定 輸出範圍: 丟電視/HDMI用16-255, PC用0-255 呈現: 都不要勾 垂直同步: 勾二三項, 第一項看說明 GPU控制: 勾前兩項, 第三項看說明 說明: 垂直同步是犧牲畫面部份流暢度來提昇畫面整體流暢度 如果討厭看到畫面有橫線冒出來的請開垂直同步 如果希望畫面儘快更新的話, 就不要開 如果電腦夠好強烈建議開啟, 畫面會比較舒服 也就是開啟垂直同步-垂直同步, 精確同步也建議啟用 至於GPU控制-等待刷洗雖然能進一步提昇垂直同步 可是對於效能影響就很大了, 可以不要開 =====以上MPC-HC===== ffdshow安裝先全部用預設安裝 裝完之後,到程式集執行"Video decoder configuration" 先到"Tray, dialog & paths" 把 "Language" 設定為 "Traditional Chinese" 接著開始逐項說明 解碼器:H.264/AVC = ffmpeg-mt WMV系, Raw video, AviSynth不要勾 其他都用livavcodec or libmpeg2 x32如果已經有裝Real Alternative, 可以不要用Real Video部份 x64只能用ffdshow硬上了(不過會有問題就是了) 輸出 :勾選 YV12, YUY2, NV12 顯卡不錯的話可以啟用HW 反交錯 RGB conversion : Input levels 設為Auto 就這樣,可以關閉了 接著到程式集執行"Audio decoder configuration" 先到"Tray, dialog & paths" 把 "Language" 設定為 "Traditional Chinese" 解碼器:除了WMV系,AVIS跟Uncompressed以外都啟用吧 多語切換:啟用 後面的進階功能請依序(項目可上下拖曳) 取樣-低音-合成-音量 取樣, 重新取樣到48000Hz, Resample if sample rate is lower than 48000 低音, 如果你喇叭有重低音則勾選 合成, 設定輸出聲道, 勾選聲音控制跟立體聲擴展 音量, 不要勾標準化, 這個功能只是拿來顯示目前音量而已... 輸出: 正常來說都是只勾16位元整數,除非你音效卡比較好 =====以上, ffdshow設定完畢===== 延伸討論========================================================== MPC-HC 的 OSD可以用快速鍵"Ctrl+J"開啟 Frame rate : 目前瞬間的畫面更新率, 正常應該是24或30 Setting : EVR ~~~ 0-255 -> 輸出為EVR模式, 色域 0-255 如果要輸出給電視應該要用16-235 Refresh rate : 電腦銀幕的更新率, LCD都是60Hz Sync offset 跟 Jitter : 影音之間跟輸出的時間差, 正常應該在0左右 Subtitles : 有字募得時候...Free最好是接近0, Buffered最好是滿的 Buffering : 如果 Buffered 掉太多的話代表解碼速度跟不上影片速度了 DXVA : 有開的話會顯示H.264 bitstream decoder類似的字樣 Mixer output: 有開DXVA通常是NV12, 沒開的話會是YUY2或是YV12 EVR的話似乎一律都是RGB32 右下角的圖:影像(綠色)以及音樂(紅色)跟0準位的時間差, 最好是都在中央上下跳動 ===== 最高難度影片: 17071435 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.180.163 SmallBeeWayn:轉錄至看板 AVEncode 09/08 21:29
w88511:推 不過個人還是習慣用懶人包 09/08 21:32
xtxml:推啊,專業的小蜜蜂 09/08 21:35
Romanesque:超實用!原來MPC HC有新版了 09/08 21:41
ratadune:說明nice 09/08 21:46
sawg:MPC-HC設定推 不過個人還是比較喜歡VMR9的顏色(被打 09/08 21:55
SmallBeeWayn:VMR9/EVR根本於顏色無關.... 09/08 22:01
sawg:有差...我截圖一下 09/08 22:06
web2312:推...另外想請問一下 播放影片要如何達到完全的smooth- 09/08 22:08
web2312:playback? 我試過將螢幕更新率調成影片fps的整數倍會改善 09/08 22:09
web2312:很多,但是對於H264類型的 偶爾還是會小頓一下(不是跑不動 09/08 22:09
web2312:的問題) 09/08 22:09
垂直同步打開, 優先率調高, EVR Buffer開到最大 另外有些是影片自己的問題
sawg:應該是說 RGB32的問題... 09/08 22:10
web2312:樓上那個看起來很像是Y/C伸張的差別... 09/08 22:14
yuanruo:停用 Desktop Compisition打勾 我的WIn7 會回Basic模式@@? 09/08 22:17
改了...我搞錯了, 不要停用才對, 雖然停用能夠提昇效能
sawg:是啊... 我弄看看能不能讓EVR輸出YUY2... 09/08 22:17
SmallBeeWayn:我倒是覺得VMR9的畫面被後處理過了 09/08 22:19
sawg:嘛 我是實際>理論派= = 09/08 22:20
※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (09/08 22:21)
web2312:另外補充一下 ffdshow裡的RGB conversion只在ffdshow被設 09/08 22:25
web2312:定為輸出RGB32的時候起作用...我目前就是用overlay然後 09/08 22:25
web2312:讓ffdshow去吃raw 再用ffdshow輸出RGB32+Y/C伸張 09/08 22:26
web2312:就可以解決用overlay時 顏色灰暗的問題了 還有overlay的 09/08 22:26
web2312:字幕可以用directvobsub掛載沒有問題(不過得開pre-buffer) 09/08 22:27
sawg:看來是COREAVC的問題...VMR9顏色會不同 開其他解碼器相同 09/08 22:28
web2312:阿對了 coreavc的input level如果選auto會有誤判的情況... 09/08 22:28
web2312:一般都是input 跟output都選0-255 09/08 22:29
SmallBeeWayn:web2312的電腦比我強XD, 我ffdshow直接出RGB跑不動 09/08 22:32
web2312:這應該不會耗太多資源吧= =? 是怎麼個跑不動?? 09/08 22:35
SmallBeeWayn:如果是FullHD後面還有字幕的話....會非常的吃記憶體 09/08 22:39
sawg:感謝WEB大 原來是COREAVC誤判 09/08 22:40
sawg:不過誤判比較好看(撞牆 09/08 22:44
web2312:基本上用VMR9或EVR如果沒有在驅動設Y/C伸張 那就要去 09/08 22:45
web2312:shaders開16-235 -> 0-255這個選項... 09/08 22:45
web2312:不然畫面會看起來灰灰的... coreavc本身會自動作伸張 09/08 22:46
web2312:只要input選16-235 output選0-255就可以了... 09/08 22:46
web2312:不過為避免搞亂 我習慣統一在最後階段作設定... 09/08 22:47
web2312:例如:做兩次Y/C伸張之類的事= = 09/08 22:48
SmallBeeWayn:web2312的設定跑得動傳說中的KTKJ True Tears ED嗎? 09/08 22:48
newest:其實拿去跑3D graphing就知道威不威了阿 09/08 22:50
doublezerotc:如果只打算用MPC-HC的話 解碼器部分也是全部取消? 09/08 23:01
SmallBeeWayn:不裝ffdshow的話當然是全部都打勾了, 其實MPC-HC 09/08 23:03
SmallBeeWayn:內建ffdshow大多數的功能 09/08 23:03
※ 編輯: SmallBeeWayn 來自: 122.116.180.163 (09/08 23:49)