论文部分内容阅读
由于工作时经常要输入不少人名,现在取名时选用异体字的很多,像我这样用纯拼音输入法的经常挠头。某次在杂志摊上不经意间见到一本杂志目录上有一篇《不认识的汉字如何打出来》。再翻封面《电脑爱好者》。买了回去细读,相当受启发。
这个寒假你准备了些什么呢?学习同时,别忘了支持我们的挑战栏目哦!
题目1:
找个QQ聊天机器人
这次我们的挑战任务是要给QQ找个聊天机器人,在和MM聊天的时候,难免会出现突然有事临时离开座位的情况,时间长了MM可就火大了!这时候用QQ聊天机器人,根据她说话的内容进行不同的回复。
要求:能支持最新版QQ。
题目2:
日期格式大转换
年底总是有一堆报表要弄的,现在有一堆的TXT文档,如何将其中的所有类似于20070406样式的日期改为2007-04-06呢?
要求:如果现在的文档除了TXT,还有DOC和XLS,你会实现吗?如果是将所有的2007.04.06转换为2007-04-06,或是将所有的2007-04-06转换为2007.04.06呢?
这是2007年第23期出的题目,其难点就在有些视频会有字幕组的广告,导致整体偏差,再一种就是字幕与视频的不同步问题。下面就是针对这两个问题的解决方案。
对付字幕,我有两个杀手锏:SubConvertor(下载地址:http://work.newhua.com/cfan/200802/subconvertorHH.rar,快车代码:CF0802WJTZ01)和Sub Station Alpha 4.08(下载地址:http://work.newhua.com/cfan/200802/SSAinstall.exe,快车代码:CF0802WJTZ02)。文本型字幕文件常见的有两种,其文件扩展名分别为SRT和SSA。要改变整个字幕的时间轴,就必须选用SubConvertor把SRT转换为SSA,再用Sub Station Alpha修改SSA格式,最后再重新转回就可以了(见图1)。
实例一:整体偏差
对于整个字幕和电影的帧率(frame rate即速率,也就是我们常说的帧)相同,时间上整体偏差,比如片头时相差一分钟,片尾时还是一分钟,那么很好解决。
记下字幕文件的第一段开始时间,再播放电影文件,记下其对应字幕第一段的真实时间。
启动Sub Station Alpha,打开刚转换得到的SSA文件,点击“Timing→Shift Times...”(时间调整→改变时间)菜单项(见图2),打开“Shift Times”窗口(见图3)。
在“Time to shift events by”(时间改变事件)框中输入需要提前或者延迟的时间(最后两位零为毫秒单位),然后根据需要选择下方的选项:
Shift Forwards 字幕延迟
Shift Backwards 字幕提前
Shift all from current row 从当前选择的字幕行开始改变
Shift selected rows only 只改变当前选择的字幕行
Start and End times 同时改变字幕开始和结束的时间
Shift Start times only 只改变字幕开始的时间
Shift End times only 只改变字幕结束的时间
对于我们上面说提到的视频前插有1分钟广告的例子,这里只要在“Time to shift events by”中输入“0:01:00.00”,并选择“Shift Forwards”就可以了。
定义好之后点击“OK”即可调整字幕的时间,选择菜单中的“File→Save”(文件→保存)项,将调整后的字幕保存。再用软件SubConvertor转换回SRT字幕就完成了。
实例二:电影和字幕不同步问题
电影开始时和字幕是正常的,同步的。可是发现随着时间的推移,字幕和电影的误差越来越大,结果导致电影和字幕的第一句同步而最后一句相差多达几分钟。这是因为两者的帧率不一致所导致的。也就是说这个误差是逐渐累积产生的,速率不同,把字幕的整体延迟或提前无法解决问题。
①算出字幕和电影文件的相对帧率
许多杂志和网上介绍常见规范的帧率只有25帧和23.976帧两种,但现在网上下载的电影文件,都是各个制作组自行压制而成。我从上百部电影字幕的调整实践中得到的信息是:帧率数值确在一定范围内,但是并不一定是这两个数值之一。调整的关键是算出它们的相对帧率。
计算方法为:算出字幕文件第一句和最后一句话的时间差,比如说为00:46:50,610。转换成秒,即2810.61秒,再算出视频中与字幕相对应的第一句与最后一句话的时间差(反复听并加以记录),假设为00:44:29:35转换成秒,为2669.35秒。这样做的好处是排除片头长度不同的干扰,以保证求得相对帧率的准确度。接着用字幕的时间差除以实际电影文件的时间差,其比值就是其相对帧率,即目前错误的字幕文件相对于电影文件所求得的帧率比值。
②调整字幕
求得相对帧率后,启动Sub Station Alpha,点击菜单中的“Timing→Timer Speed/Ramp Time...”(时间调整→计时器速度/切断时间)项(见图4)。
在“Timer Speed”中输入刚才求得的相对帧率,务必精确到小数点后四位,本例为105.2919%。最后,单击“Apply speed to entire script”(应用调整到所有字幕)按钮(见图5)。
这样就能使字幕帧率调整至电影文件的播放帧率了。调整好字幕帧率后,一般来说相比于电影整体提前或滞后几秒,再按照实例一的步骤使之时间同步,转换成SRT字幕,就可以了。
针对题目中的情况,可以分别把双碟版字幕的时间轴调整好,再用记事本粘贴到一起,即可整合成单碟版字幕了。反过来,如果电影文件是多碟的,而字幕文件是单碟的,可以用记事本把单碟字幕文件切割成多碟字幕,再一一对应电影文件调整即可。
这个寒假你准备了些什么呢?学习同时,别忘了支持我们的挑战栏目哦!
题目1:
找个QQ聊天机器人
这次我们的挑战任务是要给QQ找个聊天机器人,在和MM聊天的时候,难免会出现突然有事临时离开座位的情况,时间长了MM可就火大了!这时候用QQ聊天机器人,根据她说话的内容进行不同的回复。
要求:能支持最新版QQ。
题目2:
日期格式大转换
年底总是有一堆报表要弄的,现在有一堆的TXT文档,如何将其中的所有类似于20070406样式的日期改为2007-04-06呢?
要求:如果现在的文档除了TXT,还有DOC和XLS,你会实现吗?如果是将所有的2007.04.06转换为2007-04-06,或是将所有的2007-04-06转换为2007.04.06呢?
这是2007年第23期出的题目,其难点就在有些视频会有字幕组的广告,导致整体偏差,再一种就是字幕与视频的不同步问题。下面就是针对这两个问题的解决方案。
对付字幕,我有两个杀手锏:SubConvertor(下载地址:http://work.newhua.com/cfan/200802/subconvertorHH.rar,快车代码:CF0802WJTZ01)和Sub Station Alpha 4.08(下载地址:http://work.newhua.com/cfan/200802/SSAinstall.exe,快车代码:CF0802WJTZ02)。文本型字幕文件常见的有两种,其文件扩展名分别为SRT和SSA。要改变整个字幕的时间轴,就必须选用SubConvertor把SRT转换为SSA,再用Sub Station Alpha修改SSA格式,最后再重新转回就可以了(见图1)。
实例一:整体偏差
对于整个字幕和电影的帧率(frame rate即速率,也就是我们常说的帧)相同,时间上整体偏差,比如片头时相差一分钟,片尾时还是一分钟,那么很好解决。
记下字幕文件的第一段开始时间,再播放电影文件,记下其对应字幕第一段的真实时间。
启动Sub Station Alpha,打开刚转换得到的SSA文件,点击“Timing→Shift Times...”(时间调整→改变时间)菜单项(见图2),打开“Shift Times”窗口(见图3)。
在“Time to shift events by”(时间改变事件)框中输入需要提前或者延迟的时间(最后两位零为毫秒单位),然后根据需要选择下方的选项:
Shift Forwards 字幕延迟
Shift Backwards 字幕提前
Shift all from current row 从当前选择的字幕行开始改变
Shift selected rows only 只改变当前选择的字幕行
Start and End times 同时改变字幕开始和结束的时间
Shift Start times only 只改变字幕开始的时间
Shift End times only 只改变字幕结束的时间
对于我们上面说提到的视频前插有1分钟广告的例子,这里只要在“Time to shift events by”中输入“0:01:00.00”,并选择“Shift Forwards”就可以了。
定义好之后点击“OK”即可调整字幕的时间,选择菜单中的“File→Save”(文件→保存)项,将调整后的字幕保存。再用软件SubConvertor转换回SRT字幕就完成了。
实例二:电影和字幕不同步问题
电影开始时和字幕是正常的,同步的。可是发现随着时间的推移,字幕和电影的误差越来越大,结果导致电影和字幕的第一句同步而最后一句相差多达几分钟。这是因为两者的帧率不一致所导致的。也就是说这个误差是逐渐累积产生的,速率不同,把字幕的整体延迟或提前无法解决问题。
①算出字幕和电影文件的相对帧率
许多杂志和网上介绍常见规范的帧率只有25帧和23.976帧两种,但现在网上下载的电影文件,都是各个制作组自行压制而成。我从上百部电影字幕的调整实践中得到的信息是:帧率数值确在一定范围内,但是并不一定是这两个数值之一。调整的关键是算出它们的相对帧率。
计算方法为:算出字幕文件第一句和最后一句话的时间差,比如说为00:46:50,610。转换成秒,即2810.61秒,再算出视频中与字幕相对应的第一句与最后一句话的时间差(反复听并加以记录),假设为00:44:29:35转换成秒,为2669.35秒。这样做的好处是排除片头长度不同的干扰,以保证求得相对帧率的准确度。接着用字幕的时间差除以实际电影文件的时间差,其比值就是其相对帧率,即目前错误的字幕文件相对于电影文件所求得的帧率比值。
②调整字幕
求得相对帧率后,启动Sub Station Alpha,点击菜单中的“Timing→Timer Speed/Ramp Time...”(时间调整→计时器速度/切断时间)项(见图4)。
在“Timer Speed”中输入刚才求得的相对帧率,务必精确到小数点后四位,本例为105.2919%。最后,单击“Apply speed to entire script”(应用调整到所有字幕)按钮(见图5)。
这样就能使字幕帧率调整至电影文件的播放帧率了。调整好字幕帧率后,一般来说相比于电影整体提前或滞后几秒,再按照实例一的步骤使之时间同步,转换成SRT字幕,就可以了。
针对题目中的情况,可以分别把双碟版字幕的时间轴调整好,再用记事本粘贴到一起,即可整合成单碟版字幕了。反过来,如果电影文件是多碟的,而字幕文件是单碟的,可以用记事本把单碟字幕文件切割成多碟字幕,再一一对应电影文件调整即可。