『漫游』酷论坛>『影音数码技术学习交流』>[原创][DVDRip Crop&SAR ..

[原创][DVDRip Crop&SAR Calculator]

ssnake@2008-12-12 16:25

C++编写,开源,基于GNU分发。(具体啥的我一概不知道,自己写着玩的……)

设计目标:
现在DVDRIP的一个趋势是前期不做变形,而使用Special Aspect Ratio等参数,做Anamorphic,即播放时变形。
针对这一趋势,参考之前可曾记得爱的Aspect Error算法和雷鸣的切变计算器,我写了这个小工具用于计算Anamorphic DVDRIP的SAR、DAR比值,以方便制作。使用方法和雷鸣的cropcalc工具很像。
注意:DVDRip的变形采用可曾记得爱用的AE=0变形法(NTSC 16:9的SAR 96:79),而非一般SAR DVDRip和PSP MP4常见的ITU-R BT.601变形法(NTSC 16:9的SAR 40:33)。(如果有需要的话自己改改源代码很简单嗯)

使用对象:
需要制作SAR不为1:1的DVDRIP的DVDRipper。

用户界面:
Command Line Interface

使用方法:
1. 打开程序
2. 选择DVD的类型(PAL、NTSC、VGA、4:3、16:9、1:1)
3. 输入切边数值,必须是整数,可以是奇数(使用RGB、YUV444色彩空间切割或者AVS的Resizer内部算法切割)
4. 输入目标分辨率(一般应该是720x480或704x480),需要mod 16
5. 输入扫描范围:
e.g. 比如目标分辨率是720x480,Width和Height Searching Range均是1,则会计算704x464、720x464、736x464、704x480、720x480、736x480、704x496、720x496、736x496这9种分辨率。
6. 读取输出值:
其中的SAR用于x264的--sar参数等Special Aspect Ratio Option;DAR用于XviD、MKVMerge等的Display Aspect Ratio Option。
7. 按任意键关闭程序

下载:(内附源代码)
sarcalc.7z
引用

蓝の回忆@2008-12-12 16:44

这类工具也有好就个了..
不如再写个GUI吧
引用

ssnake@2008-12-12 16:46

算SAR值的好像还没见过= =

我自己更喜欢用CLI工具所以没写GUI,要写的话么再抽空吧= =
引用

squallatf@2008-12-12 19:31

我记得雷鸣以前有写过类似的工具
引用

ssnake@2008-12-12 20:17

对,其实就是雷鸣那个工具的mod

雷鸣那个calc是算Resize,我改成算SAR而已= =
引用

roozhou@2008-12-12 23:47

呵呵,我的dshow x264根本不用输入--sar,自动的哦

其实只要记住,crop不影响sar。resize不影响dar,就可以了
引用

ssnake@2008-12-13 00:12

dshow不能用外部IVTC,致命伤哦

crop且resize(凑mod16)后就既影响SAR又影响DAR了= =

我主要就是为了不规则切边(比如切掉上黑边并保留所有有效像素)写这个的。。
引用

roozhou@2008-12-13 01:51

dshow当然可以IVTC,通过ffdshow里的avs挂tfm实现。我自己也正在写了一个,上次那个测试速度speedtest就是给ivtc用的。

crop和resize不是同时完成的。你可以试试ffdshow的crop+resize,可以保持正确的sar。sar/dar的原始信息从解码器获取后应该在各级滤镜间传递下去,crop和resize滤镜应该根据输入的值对其进行修正。
引用

ssnake@2008-12-13 09:49

按你的推荐配置的话,ffdshow拿到的是MPEG Decoder处理过的RAW Stream。DScale Decoder会做Field Matching和IVTC吧,当然也可以在解码器里关掉相关功能就是了……= =

另外你大概没明白我的表述,举个例子吧:
MPEG2Source(".d2v")
Lanczos4Resize(720,480,0,2,0,0)
(现在很多2区DVD都这样嘛,上面2px黑边,左右撑满,比如ef)
这个时候的SAR是难以计算的。而如果走ffdshow切变,如果指定分辨率并锁定比例就会在画面内部加上下黑边;如果指定分辨率但不锁定画面比例又不会输出SAR信息;如果不指定分辨率就会直接输出720x478。所以必须通过计算获得。

P.S.全走DShow是最简单的办法,但未必是最正确的办法^^
引用

roozhou@2008-12-13 14:56

楼上这种情况sar应该是(16/9)/(720/480)/(478/480)吧

谢谢楼上提醒,试了下ffdshow好像resize没改sar,看来需要和开发者讨论一下了。
引用

湿内裤@2009-04-17 17:16

弄了几天还是不太会用……
源是720x480,上面切2,左右各切3:
Lanczos4Resize(720,480,3,2,-3,0)

计算:
Please select the source type:
2 = 16:9 NTSC
Select Source Type: 2

Width crop:6
Height crop:2

Target size
Width:720
Height:480

widthsearchrange = heightsearchrange = 1

然后把算出来的SAR都试了一遍,好像都变形了(就是跟直接播放VOB的比例不一样)

是我哪里做错了吗?
引用

roozhou@2009-04-17 17:33

突然有个问题,既然做anamorphic为什么还要resize
不是mod16又会怎么样呢
引用

湿内裤@2009-04-17 17:57

顺便问个ffdshow Crop的问题
我在Left里填4,其它三个填0,结果左右都给切了,为什么?
引用

roozhou@2009-04-17 20:27

因为ffdshow要求crop结果必须mod 8
引用

湿内裤@2009-04-17 21:13

有办法实现任意切边并保持比例吗?
引用

«12»共2页

| TOP