当前位置: 主页 > 处理视频 > 视频字幕制作 > 字幕不能播放?AviSynth帮你忙

字幕不能播放?AviSynth帮你忙

2008-12-03   网易 / 点击: 标签:AviSynth
  

  现在网络下载的影视频剧集,很多都是外挂字幕。我们在播放时,需要通过字幕软件来调用字幕文件。很多人在为视频文件加挂字幕时,采用了通过DirectShow+VobSub 自动调用avi文件和同目录下的同名文件的方法。不过,坦白地说,这样的调用方法不但效率低速度慢,而且并不能保证在所有的系统或者任何情况下都能稳定。那么有没有更好的办法?这里有一个答案:AviSynth。

  AviSynth 是一件非常奇怪的事物。既可以说它十分难,也可以说他非常简单。不会用的人对她摸不着头脑,用过她的人则对她爱不释手。到底AviSynth十个什么样的东西?我们就拿avi挂字幕编辑的问题,来见识一下5秒钟完成为Avi原文件贴上字幕的功能吧。

  AviSynth是一种脚本化的视频处理工具。与常见的Win32程序不同,她完全没有GUI或者Consol界面,所有的操作全部取决于你用notepad的时候,键入的寥寥几个参数。其特点是效率高,速度快,接口和源代码开放,稳定。

  首先,可以点这里下载安装AviSynth。现在2.5.2中还包括一个ffvfw包,可以让你的系统把avs(AviSynth脚本文件)当成普通的视频文件打开甚至播放。

  接着,可以到这里下载安装VSFliter,并确认将包中VSFliter.dll复制到 %Windir%\System32 目录下,并运行了 regsvr32 VSFilter.dll 进行注册。

  现在用Notepad建立一个空白的文本文件,并将之命名为 xxx.avs。

  接下来在这个文本文件中键入这样3行文字:

  -------------------

  AVISource("C:\Video\BDTH-YFdrG.avi")

  LoadPlugin("VSFilter.dll")

  VobSub("C:\Video\BDTH-YFdrG.idx")

  -------------------

  现在随便你用什么软件,Tmpgenc、CCE或者是VD来打开这个avs文件,你都可以看 vobdub 已经准确地出现在视频文件之中。

  当然,用文本字幕时,语句需要些许变化:

  -------------------

  AVISource("C:\Video\BDTH-YFdrG.avi")

  LoadPlugin("VSFilter.dll")

  TextSub("C:\Video\BDTH-YFdrG.srt")

  -------------------

  现在,文本字幕也会出现在视频图像中了。

  那么,这简单的三行文字代表什么?第一行 AVISource() 命令软件将右侧括号中的文件当作avi标准文件来打开编辑;第二行 LoadPlugin 命令,要求AviSynth在处理时调入括号中的插件,本例中打开了VSFilter.dll插件,就可以令AviSynth支持vobsub字幕;第三行 VobSub() 或者 TextSub() 命令,则是Vobsub插件自定义的命令,可以将括号中的字幕文件加入视频汇总流,最终输出到任何打开avs文件视频编辑软件上。

  神奇的 AviSynth 就是这样的简单。不过目前调入字幕时还没有使用到VobSUB()或者TextSub()命令中的高级部分,所有字幕的显示设定将依赖于Vobsub的默认设置。语种选择取决于idx文件中的 langidx: 指数。您也可以通过rundll32 VSFilter,DirectVobSub 可进入设定面板。

    顶一下
    (0)
    0%
    踩一下
    (0)
    0%
    精彩推荐