AviSynth(AVS)滤镜参考手册之字幕、色彩转换与截图(第4篇)
AviSynth滤镜安装:解压缩后将虑镜插件dll文件拷贝到安装目录的plugin目录里
八、字幕滤镜
1.VobSub()
Sub字幕:VobSub不但是外挂字幕的好手,内嵌字幕也是一样的强。
将字幕的2个文件test.idx和test.sub放在同一个目录下就可以了。
例:LoadPlugin("VobSub.dll")
VobSub("test")
也可以这样VobSub("e:vob test.idx") 加载影片字幕
2.TextSub()
SSA和ASS字幕:这个也是VobSub自带的,可以内嵌特效字幕。
例:LoadPlugin("TextSub.vdf")
TextSub("h:avsjrvs.ssa") 加载水印文本
例2:LoadPlugin("VSFilter.dll")
TextSub("F:DVDjs60js601.srt") 加载srt字幕
需要调用字幕滤镜LoadPlugin("VSFilter.dll")
九、色彩模式的转换
有些压缩软件不支持某些色彩模式,例如默认情况下Helix不能在YV12环境下工作,需要将DVD的YV12转为YUY2
video=ConvertToYUY2(video)
当然如果你装了Xvid,Helix也是可以在YV12下工作的。
有如下的转换:
- ConvertToRGB32()
- ConvertToRGB24
- ConvertToRGB()
- ConvertToYUY2()
- ConvertToYV12()
简单例子:
AVISOURCE(“xxx.avi”)
ConvertToYUY2()
等价于AVISOURCE(“xxx.avi”,“YUY2”)或者AVISOURCE(“xxx.avi”).ConvertToYUY2()
其他的也类似。
十、截图
没有想到用avs来截图吧,只要用wmp6.4或mpc6468播放一下写好的avs文件,截图就产生了。
directshowsource("C:1.rmvb",fps=23.976).ConvertToRGB24
trim(0,19)
ImageWriter("C:",0,0,"jpg")
这里我们假设的是要截取的rmvb为C:的1.rmvb,要截取的frame(幅)从第1到20共20幅(trim是以0为第一幅) ,保存路径为C:,格式为jpg(支持bmp, dds,jpg/jpe/jpeg, pal, pcx格式)
连续截图
例:Avisource("C:test,avi",false).ConvertToRGB24
trim(0,19)
ImageWriter("C:",0,0,"jpg")
截取特定的frame
例:Avisource("C:test,avi",false).ConvertToRGB24
trim(1920,1920)
ImageWriter("C:",0,0,"jpg")