字幕延时

        最近迷上了ubuntu(linux), 就为了看超酷的3D效果,把电脑重装系统了,以前是在虚拟机下装的ubuntu,但开不起效果! 装完后玩了3D效果一会后想看电影,不久前下了一个月才下玩的高清《霸王别姬》正好拿出来看看,结果发现字幕是英文的,不习惯,于是下了个中文字幕,发现字幕快了2秒钟左右,我在Movie Play播放器里找了好久也没找到调节字幕的,于是打开字幕文件看看能不能有其他办法,结果真发现办法了,特记录如下!

 

一、字幕文件分析(*.srt)

 

字幕每句话的格式是三行,

1.序号

2.开始时刻 --> 结束时刻

2.内容

 

于是我认为调节时间即可,比如要延时1秒,也即1000毫秒,那将字幕文件钟所有的时间都增加1000毫秒即可

如:00:00:45,978 延时1秒,变为00:00:46,978

 

二、修改文件步骤

1. 将文件读入一个字符串中,

2.获取字符串钟的时间

   找到“ --> ",前后各读取12个字符

3.修改字符串中的所有时间

  a.将字符串格式的时间转换为长整型的毫秒数格式

  b.毫秒数格式的长整型加上要延时的毫秒数

  c.将长整型格式转换为字符串格式

4.再将修改后的字符串写入文件

 

三、修改好字幕文件后再拖进播放器里即可,有时候还得重启播放器!

 

好的,不废话了,上代码!

linux(ubuntu)下GCC编译测试通过!

要急着看电影,没有做一些出错或越界处理,望读者包涵!

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值