看板 AVEncode 關於我們 聯絡資訊
※ 引述《maxtrf750901 (000)》之銘言: : 將電視卡錄下的 MPEG-2 : 作剪輯並要轉檔(Megui) : *********************************************************************** : LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\VSFilter.dll") : DirectShowSource("E:\vol.1.mpg",fps=29.97,convertfps=true) : ConvertToYV12() : Trim(2162,2500)+Trim(41792,42077)+Trim(58847,59132) //影片要的片段 : lanczosresize(720,480) : Amplifydb(3) : ResampleAudio(48000) : *********************************************************************** : 稍微做了一個測試 有幾個問題 : 1.轉出來後影片會一橫一橫的 是否交錯的問題? : 若要整片都交錯處理 該如何加入語法? 一般 NTSC 影片原始就是 29.97 fps, 所以 MeGUI 附的 AVS Script Creator 應該會建議你用 yadif, 根據偵測出來的 Field Order 是 top 或 bottom, 你需要給 yadif 不同的參數, order=1 是 top, order=0 是 bottom: Load_Stdcall_Plugin("C:\Program Files\megui\tools\yadif\yadif.dll") Yadif(order=1) IT 是非常舊的 de-interlace filter, 高速來回移動的物體常常會變成固定的幾條橫線而物體本身變得接近透明, 七八年前以 XviD 為主流的年代 IT 很常被使用, 大都是拿來對經過 3:2 pull down 處理過的動畫做 IVTC, 因為大部分動畫是一秒畫 24 張, 但為了配合 NTSC 電視的規格把它補成 29.97 張, IVTC 的用途主要就是把它轉回去, 當年只是做 de-interlace 的話 decomb 效果比 IT 好很多, 現在 yadif 算是主流, IVTC 的話在現代用 TIVTC 其實效果就不差了, 有的影片是那種 progressive + interlaced 混合的, 會有人用 TIVTC + TDeint 去處理, 其實這個 TIVTC 參數有下對也能處理的不錯, 不然真的 TIVTC + TDeint 開下去會慢到死。 : 2.轉出來(我都是用 Media Player Classic(x64版本)看影片) : 拉動下面時間軸 聲音正常 但畫面有時會卡住 : 要再拉一次或2次才會再跳 沒說很順 這是因為有剪輯的關系嗎? : 3.錄起來的影片原本解析度就是 720*480 : 但是經過轉檔後 我也是用 720*480 : 但2個影片用全螢幕後 轉檔後的影片感覺上下加了黑邊 有點扁到 : 而原本的影片是直接放大全螢幕 (我的螢幕應該是4:3) : 這是轉檔後就直接固定了嗎? 4:3 的影片標準解析度應該是 640x480, 錄成 720x480 是為了符合 NTSC 的規格, 播放器在播放的時候還是會把它 resize 成 640x480, 我建議你先仔細觀察電視卡錄出來的畫面左右是否有留一點邊, Leadtek 的 WinFast PVR2 錄出來的通常左右會各留 8 像素的黑邊, 你可以直接切掉它變成 704x480 再 resize 成 640x480, 畫面跟內容物的比例就能完全不失真。 早期 DVD 也是會幫你多留左右各 8 像素的黑邊, 後來乾脆直接多取一些像素塞進去, 這左右 8 個像素在真正的 TV 上也是不會放出來的, 所以可以放心切掉; NTSC 的 PAR 是 1 : 1.1 (其實應該是 72/79 這種比例,但現階段可先忽略), 橫軸的取樣間隔較短所以會取到比較多的點 (1.1 倍), 因此原本應該是寬 640 的畫面會被取樣成 704, 704 又因為要符合 NTSC 的 720 所以會補 16 像素的黑邊 (現代可能是直接多取點), 你要把這個動作反向操作回去, 就是要先把 720x480 切成 704x480, 再把它 resize 成 640x480: Crop(8,0,704,480) Lanczos4Resize(640,480) 最後封裝的容器如果支援 DAR 參數設定的話, 就把它設成 4:3, 不過播放器看到 640x480 應該是都會自動判定成 4:3 才對。 如果你不先切, 縱使你在 4:3 的螢幕上播放出來畫面還是滿的, 你還是可能會察覺到物體有點變形, 不管你原始錄下的影片有沒有黑邊 (電視錄影不是拍攝無法多取樣,照理說該有黑邊), 畫面都會有點小小的變形, 如果你對影片裡的人或物相當熟悉 (平日看實物看得很慣), 這種差異要察覺其實沒有想像中的難, 704 + (16 點黑邊或額外取的像素) --> 640 跟 704 --> 640 向中間擠壓的程度還是略有不同的, 所以直接壓成 720x480 或從 720x480 -> 640x480 其實都是錯的, 但還是看過不少人這樣壓。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.115.84 ※ 編輯: tinlans 來自: 118.160.115.84 (01/03 07:18)
tonyhsie:正解的確是704->640 而不是720->640或720砍黑邊->640 01/03 09:52
tonyhsie:重點是720左右共砍16點 砍的是黑邊還是實際的像素 看情形 01/03 09:53
tonyhsie:另一種作法是 720x480 -> 640x352 這樣比例也是對的 01/03 09:54
starsky1978:左右各有 8,肯定要裁成 704x480 再 Resize。 01/03 10:10
starsky1978:沒的話就直接 Resize 成 4:3 比例。左右各 8 點,對畫 01/03 10:11
starsky1978:面比例影響不大。電腦播放 DVD 左右的黑邊還是保留。 01/03 10:13
starsky1978:第三行的 640x352 的畫面比例變形很嚴重。 01/03 10:16
starsky1978:DVD 影片要在電視播放,不是左右加入各 8 的黑邊就能 01/03 10:23
starsky1978:防止畫面被截掉。 01/03 10:25
tonyhsie:720x480->640x352是16:9的影片用的 不是4:3用 01/03 12:55
tonyhsie:另外裁704並不是因為左右各有8 是因為AR比是1:1.1的關係 01/03 12:56
tonyhsie:筆誤 是PAR (Pixel Aspect Ratio) 不是AR 01/03 12:57
tinlans:現在 720 左右沒黑邊主要是避免邊緣處理的問題故意多取的 01/03 13:41
tinlans:,在真正的 TV 上也顯示不出來,砍了其實沒損失,那部份本 01/03 13:41
tinlans:來就不屬於「作品」的一部份。 01/03 13:42
tinlans:16:9 = 1.777...,比較少誤差的做法是弄成 704x396, 01/03 13:44
tinlans:不過有些狀況下會考慮 encoder 需要 16 倍數的高,會再補 01/03 13:46
tinlans:上下各 2 像素到 400,但不是一定要,看你 encoder 選的演 01/03 13:46
tinlans:算法有沒有需要是 16 的倍數而定。 01/03 13:47
tinlans:如果真的要是 16 倍數,也是有人 resize 成 768x432。 01/03 13:59
starsky1978:直接壓成 720x480,看 DAR 要設 4:3 或 16:9 即可。 01/03 15:21
yohko:我是完全無視多出來的黑邊,直接re成720*480 01/03 15:34
yohko:然後在設SAR為16:9 or 4:3 01/03 15:34
yohko:不過最近都是處理BD....直接RE成1920*1080就搞定了 XDXD 01/03 15:34
starsky1978:640x480(4:3)畫面做成 DVD,你把它 Crop 成 704x480 01/03 15:50
starsky1978:再 Resize 成 640x480,畫面會跟原本不一樣。 01/03 15:51
starsky1978:重複做個幾次,人物會變胖。 01/03 15:52
starsky1978:如果是 Resize 成 704x480 再補成 720x480 另當別論 01/03 16:00
tonyhsie:有點倒果為因 切704正是為求正確比例 也不用重覆作 01/03 18:17
tonyhsie:這個老問題七八年前就討論到翻了 http://0rz.tw/1e4WL 01/03 18:18
tonyhsie:704的原理就是這篇提到的PAR 1:1.1 or 72/79的關係 01/03 18:24
tinlans:其實大部分轉檔的人手邊都有原始 DVD 了所以不用擔心轉回 01/04 03:50
tinlans:DVD 的問題吧,如果真的要就 resize 回 704 再補黑邊。 01/04 03:50
tinlans:要翻當年的討論串有兩件事要小心,第一就是後來有位為了保 01/04 03:59
tinlans:留畫面邊緣而提出的另一種補黑邊 -> resize -> crop 的做 01/04 04:01
tinlans:法是錯的,還是會砍到邊而且會變形;再來就是為了精確追求 01/04 04:01
tinlans:72/79 弄出長或寬是奇數點的狀況,這樣必須轉到 RGB32 的 01/04 04:02
tinlans:色空間下操作才行,但也要留意色空間轉換對畫面其實很傷。 01/04 04:03
tinlans:當年我每樣都拿來玩,玩到最後還是先切 704 再 resize 成 01/04 04:04
tinlans:640 會是最簡單失真最少的。 01/04 04:04
tinlans:不過說到 BD,現在也是有在吵 1440x1072 跟 1080 的,4:3 01/04 04:21
starsky1978:tonyhsie 你那連結我以前有看過。主要還是要自己實驗 01/04 08:35
starsky1978:電腦播放 DVD,不會裁成 704x480 再 Resize。 01/04 08:38
starsky1978:LCD TV + DVD-PLAYER 或 媒體播放機,四邊都裁。 01/04 08:41
starsky1978:所有很多 DVD 有些都有做安全區域。 01/04 08:42
starsky1978:先算出實際畫面的比例,Crop 再 Resize 成正確比例。 01/04 08:51
starsky1978:先 Resize 成正確比例,再 Crop 黑邊。所留下畫面比例 01/04 08:53
starsky1978:正確,這樣也OK。AviSynth 語法先後的問題調換,常常 01/04 08:55
starsky1978:結果一樣。這種問題我自己有時候覺得很疑問。 01/04 08:57
starsky1978:我是用 VirtualDub 做 150% 預覽 avs,按 F2 重新載入 01/04 09:02
starsky1978:這樣不同語法的變化,看得很清楚。應該不是殘留在 RAM 01/04 09:04
starsky1978:的畫面。有心得歡迎多多討論。 01/04 09:05
starsky1978:DVD 沒有依照 PAR 10:11 來製作,也是要裁成 704x480? 01/04 09:17
starsky1978:現在的 LCD-TV 有沒有 PAR 的問題? 01/04 09:22
yohko:BD4:3相對1080P少很多.....就我目前接觸到的,幾乎都是1080 01/04 14:11
silky7:電腦上的軟體Player不會先裁成704x480再resize 01/04 23:33
silky7:但是這樣的作法是錯的 只是一般人不會注意 01/04 23:33
silky7:如果你是看很熟悉的人物畫面 你就會注意到人臉變長了 01/04 23:33
silky7:對於人臉很敏感的影片 例如偶像明星的影片 臉很重要 01/04 23:34
silky7:這一點點的變形就會帶給人的感受很大的差異 01/04 23:34
silky7:所以我都是載入ffdshow的filter 對播放的影片作裁切 01/04 23:34
silky7:和放大的處理 另外編輯avs有一個很好用的軟體AvsP 01/04 23:34
silky7:可以同時載入多個avs 切換分頁就可以比對不同script 01/04 23:34
silky7:之間的差異 推薦給大家用用看 01/04 23:35
tonyhsie:WMP, PowerDVD, WinDVD 印象中都不會裁成704再播...但它 01/06 18:15
tonyhsie:們是錯的....事實上Doom9也有文章討論10/11 72/79問題 01/06 18:16
tonyhsie:不過年代已久 目前我找不到那篇詳細的原文講解了... 01/06 18:17
tonyhsie:btw, silky7是PCDVD的silky大嗎? 01/06 18:18
silky7:不是喔.... PCDVD好像沒有silky?..... 01/07 00:39