一个适合我的频道的视频后期工具箱。
- 4/14/24 根据字幕时间点前后的声音大小来精调字幕时间轴; 增加了arxiv标题查询工具
- 4/13/24 创建了这个仓库
这是一个我的频道流水线上的普通视频,在新的工作流中,它的制作非常容易:
- 在Google Slides上准备所有材料
- 使用OBS录制一整个长的视频,包括忘词口胡等等都不要停
- 使用subs.py调用faster_whisper产生与视频匹配的字幕
- 使用Subtitle Edit编辑产生的字幕,在这一阶段去掉各种不可公开的片段并校对字幕,只需要保留要保留的视频片段对应的字幕即可,必要时调整时间轴
- 以下操作(5-7)在Davinci Resolve中进行,这里只是大致介绍,后面的章节有更详细的使用方法。使用这个插件,根据字幕文件中的时间轴,把视频切片创建成一个Davinci Resolve中的时间轴,同时导出最终视频的字幕。
- 在Davinci Resolve中Normalize时间轴中的音频
- 在Davinci Resolve中使用这个脚本导出成品视频
- 使用Microsoft Powerpoint与特定的模板制作封面
- 编辑
arxiv_info.txt
第一行为要查询的arxiv论文的ID,运行arxiv_info.py,格式化的论文信息会重新输出到arxiv_info.txt
- 手动上传到我的频道,并更新这个文档
- 等待审核结束,添加字幕,添加视频到合集
- 和观众吹一会儿牛,然后摸了
更改第10行'video_path': 'D:\\Video2024'
为存放视频的目录,代码会扫描目录下所有没有相应srt
字幕文件的mkv
视频,然后尝试生成字幕。
- 复制
Comp
目录中的所有内容到你的Davinci Resolve的插件目录,比如我的是C:\ProgramData\Blackmagic Design\DaVinci Resolve\Fusion\Scripts\Comp
- 然后你就可以在菜单中找到这两个脚本/插件,选中即可启动
- 使用Build Timeline from Subtitle Plugin根据字幕导入切好的视频,方法见图
- 记得Normalize时间轴中的音频
- 使用export_to_final后会自动创建渲染任务(默认YouTube - 1080P预设),自己点一下渲染即可
- 第一次使用时直接运行,会自动创建
arxiv_info.txt
这个文件 - 在
arxiv_info.txt
的第一行输入包含arxiv论文ID的文本(比如论文的摘要链接、论文pdf链接等等) - 再次运行
arxiv_info.py
会自动用查到的信息覆盖arxiv_info.txt
如题,这个是在让Davinci Resolve使用外部脚本的时候需要设置的环境变量,但外部脚本一直拿不到resolve,就算了,放在这里也许谁能用得到。
虽然我现在也没觉得新工作流节约的时间能比准备这个新工作流花费的时间要多,但是写轮子总是快乐的(x
在Davinci的插件开发中大量参考了项目自带的示例(C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Workflow Integrations\Examples
和C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting\Examples
),
以及这个文档(其实你本地也有一份在C:\ProgramData\Blackmagic Design\DaVinci Resolve\Support\Developer\Scripting\README.txt
),和这个UI文档。插件的UI虽然没有官方文档,但是据说操作逻辑和Qt是相似的。
- 能不能自动normalize音频啊