美文网首页
REAPER自动化字幕生成脚本

REAPER自动化字幕生成脚本

作者: 啦哆咪 | 来源:发表于2021-01-14 10:23 被阅读0次

需求细分

1. 文本准备

2. 时间段打点

3. 输入给item

4. 根据item文本自动添加带特定字符的效果器

item的选择

取二者优点,采用empty item作为文本输入,生成midi item承载字幕FX。

实现步骤

播放中打点

即在播放中马上确定empty item的起始、结束与长度。采用这两个action组合:

实际效果:

批量输入字幕

采用python自带库tkinter,强制要求一行对应一个item。麻烦的地方在于检测Text Widget的更改来生成行数的提示,网上有不少类似实现可以参考,使用Change和Modify来检测无区别。

实际效果:

生成字幕轨道

刚开始想采用生成的轨道为“子轨道”,实现方式为:

1. 记录选中轨以外轨道的层级信息

2. 删除选中轨中的子轨道

3. 生成子轨道

4. 还原选中轨以外轨道的层级信息

如此步骤是因为REAPER一旦把轨道变成父轨道,在父轨道下方的轨道自动会成为子轨道。

后来放弃上述方案,因为某些情况下,多个子轨道使用GetMediaTrackInfo_Value方法获取的最后一个子轨道depth不正确。在经过轨道移动等操作后又正常,疑似是bug。

可能直接获取chunk的方式会获得正常的层级数,我没有测试

最终使用的是直接生成一条字幕轨,并根据指定轨道名字删除本来已存在的字幕轨。

实际效果:

脚本地址

测试环境:

- Python 3.9.1

- REAPER 6.19

- sws 2.12

脚本gist地址:https://gist.github.com/wastee/b3184227e51b3efc8c45a4a6daa0e683

视频演示:https://www.bilibili.com/video/BV1Sz4y1U7qr/

扩展畅想

- 导入导出srt文件(已有类似脚本)

- 对audio item做语音识别


REAPER自动化字幕生成脚本

相关文章

网友评论

      本文标题:REAPER自动化字幕生成脚本

      本文链接:https://www.haomeiwen.com/subject/vinmaktx.html