引用
最初由 roozhou 发布
这个想法我也考虑过,但有很多问题
1)其他平台滤镜向avisynth移植一般都不难(少数vfr的除外),但avisynth滤镜移植到其他平台很难,毕竟C++ -> C非常困难,而且avisynth本身接口复杂,其他平台不一定有相应功能。
2)脚本用起来很不方便,而ffdshow,dscaler,avidemux这样的界面更友好且便于批量。
3)各位大大被avs洗脑严重,按帧trim很麻烦而且可读性极差实现困难,改成按时间trim可读性大增,并可以省掉index的时间。毕竟没有哪个播放器是按帧数seek的,也没有哪种封装格式是按帧数设定index的。
1) 若是限定colorspace在yv12,然后将源代码C&P过来的话,是否有可能将常用功能都移植过来?是否有可能加入中间层以执行C++代码?
2) 脚本也可反复使用,linux下不是cli就是conf。cli一次性调用,conf可长期使用。avs的脚本方式本身就是一个很好的参照。首先文本是可控的,肉眼便能看到详细参数;其次文本也可以进行include这样的局部参数导入。例如可以分别存放多个x264的参数profile,仅需指定bitrate或qp即可自动以psp或者ipod模式压制,等等。仅仅是引入一个x264psp_prof或者x264ipod_prof。如果是ffdshow的话,首先平台相关,其次你一遍压片一遍放片,放片时突发奇想改了个参数,回头一看你压的片里也顺着你参数压了,这多惨
3) 按帧数控制我认为是更好的方法。帧数是整数,时间是小数,还受到fps、浮点数精度等的问题。第6帧就是第6帧而没有二义性。若是拿出个0:00:06.22704这种时间戳,就很容易让人发狂了。当然了,若是同时提供2种输入能力的话,就更好了。
还有什么问题我一会儿到doom9去发帖讨论好了。