明明是你做错,何必装作很难过。
终于有了一台属于自己的MP4播放器赶紧拷上电影歌曲图片来细细把玩一番这台播放器最难能可贵的就是支持外挂字幕如果在旅途中用它来看电影消磨时间可真是一件美事咦为什么播放电影时没有字幕显示?检查了一下字幕文件与电影文件同名且在同一个文件夹下可为什么不行呢?翻出说明书一查发现它原来只支持Srt格式的字幕文件但笔者拷的却是Sub格式的字幕难怪不能显示看来要享受这高科技还颇费周折啊乖乖地转换字幕吧把Sub格式转换成Srt格式
小知识Sub格式的字幕其实是一组排好序的图片按照事先设定的时间依次出现在屏幕上它一般由Sub文件和Idx文件两个文件组成其中Sub文件为字幕的镜像文件作为字幕元素的图片就是存放在这个文件里的Idx文件为索引文件也就是时间标签它来决定每个字幕元素出现的时间这两个文件互相协作最终形成完整的字幕呈现给用户而Srt格式的字幕则是一个纯文本文件中包含了时间标签和对应的字幕
将Sub格式的字幕转换为Srt字幕需要SubOCR这个软件的支持从OCR的字样看SubOCR似乎与文本识别技术有关系的确如此它的用途就是把组成字幕的图片识别成文字最后结合Idx文件中的时间标签把字幕保存为Srt格式的纯文本字幕
启动SubOCR在软件界面中点击打开按钮选择《大卫魔术》的Sub字幕文件这时软件的界面没有任何变化但字幕已经加载了接着点击Command/OCR subtitel(命令/识别字幕)弹出一个设置对话框(如图1)这个对话框的作用是在正式识别字幕前测试当前字幕的识别率字幕图片由背景色字幕色字幕边框色组成(边框色是为了让字幕看起来更美观并不是必需的元素)识别字幕就要利用这些颜色要让软件准确地识别出字幕必须告诉软件正确的字幕颜色图1所示的背景色为黑色字幕色为白色所以用鼠标点击一下字幕上的白色这里一定要点准否则就告诉了软件错误的颜色而不能识别字幕点击白色后在下方的Subtitle Color(字幕颜色)中就会显示被点击的颜色在这里可以查看是否选准了字幕的颜色由于这里用的是繁体中文字幕所以还要在Choose OCR Engine(选择识别引擎)中选择Traditional Chinese(繁体中文)选项下面点击Try OCR(识别测试)吧字幕很顺利地就被显示在Try OCR按钮的旁边了一字不差为了保险起见还需要多选择几句字幕来测试点击Current(当前字幕)旁边的箭头选择不同的字幕再点击Try OCR如果都能准确识别说明设置已经合适了按下OK(确定)后软件就开始对整个Sub字幕文件进行逐行扫描并将识别后的文字显示在软件界面中(如图2)文本识别功能不可能做到每次都是100%的准确率如果某一句字幕识别得不够准确可以选中该句再在下面的文本框中对文字进行修改被修改过的字幕所在行会以一个笑脸表情标明(如图3)最后点击工具栏上的保存按钮把Srt字幕保存起来吧
图1
图2
图3
提示这里有个技巧针对繁体中文字幕一定要选择Traditional Chinese选项如果错选了Simplified Chinese(简体中文)的话会识别出很多乱码而对简体中文字幕而言就可以选择Simplified Chinese了
既然SubOCR这么强索性多转几部片子的字幕吧再打开《将计就计》的字幕按部就班地进行下去可这次似乎没那么顺利了在Try OCR这一步总是不能识别出任何文字如果强行按下OK的话只能得到一堆不知所云的乱码笔者静下心来思考为什么两次识别的结果会差那么远呢?仔细观察字幕图片发现《大卫魔术》字幕的白色文字很纤细而背景又是黑色形成强烈的反差(如图1)这就有利于提高识别率再看《将计就计》它的背景色和字幕色竟然都是白色难怪软件识别不出了(如图4)找到原因就好办了于是请出了字幕插件VobSub用它来给字幕一点颜色瞧瞧
图4
从本期配刊光盘上安装好VobSub后点击开始/所有程序/VobSub/VobSub Configure在弹出窗口中点击Open(打开)按钮打开《将计就计》的字幕文件(*.Sub或*.Idx均可)然后选中Custom colors(自定义颜色)激活下面的颜色设置选项这里有4个色块从左到右依次表示字幕的背景色字幕色字幕边框色1字幕边框色2其中前两种颜色是必须的(如图5)刚才提到了强烈的颜色反差有利于提高识别率所以这里点击前两个色块并分别选择深蓝色和白色作为字幕的背景色和字幕色(如图6)字幕边框色本身为黑色暂时不管它点击OK保存设置现在再用SubOCR打开字幕测试识别率看看效果是不是好多了已经能够正确地识别出字幕了剩下的就不用多说了吧
图5
图6
笔者在以后的转换过程中遇到了各种不同类型的字幕使用SubOCR都很简单主要技巧集中在VobSub上针对不同类型的字幕要设置不同的颜色下面笔者就把总结的一些经验拿出来与各位分享
如果字幕的字体比较纤细可以把字幕边框色和字幕色设为一样并设置一个反差较大的背景色这样有利于减少颜色数量把问题简单化软件也容易识别但如果这样设置后由于边框的作用使整个字体看起来很粗甚至粗到就是一片色反而会降低识别率这种情况下就要为字幕设置合适的边框色了主要目的是为了让文字和背景看起来层次更分明提高识别率有时候还会遇到这种情况明明看起来反差很大的颜色但就是不能正确识别其实可以换一种颜色试一下问题就迎刃而解了不必在一棵树上吊死笔者在多次转换字幕时发现繁体中文引擎的兼容性要比简体中文好得多它可以准确地识别简体繁体中文和英文字幕建议大家在转换字幕时选择繁体中文引擎
其实把Sub格式的字幕转换为Srt字幕的用途还不止用在MP4播放器上有时候刻录光盘就差那么几MB的空间来放SUB字幕转成SRT后只会占用几十KB的空间问题一下就解决了仔细观察还能发现它们更多的用途