初衷: 最近准备学习一款特效软件,houdini 发现国内的视频质量普遍不高,而且版本也比较旧.国外的视频反而有些口碑很好的 但是由于自己英语水平不高,看英文教学视频时同时要关注发音和鼠标操作有点忙不过来,所以想着不如直接开发一个工具可以把视频直接转至成中文发音.
思路如下 1:视频拆分成语音和视频 2:语音分段,并记录时间 3:语音转文字,调用一些开放平台的接口 4:翻译.英->中 ,用的金山的开放接口 5:文字转语音,调用一些开放平台的接口 6:对应时间调整语音速度 7:新音频与视频合并.
语音转文字和文字转语音: 这个功能其实可以自己做,也有一些开元的库用来参考,但是需要的硬件配置就比较高了,索性直接用了第三方的,试了几个之后决定用百度的,主要是因为不限制数量只限制QPS
需要安装的包: python 不解释 pydub 音频处理 moviepy 视频处理 requests 网络请求
使用方法: 1:把需要转换的视频转成MP4放在和transform.py同级目录下 2:更改transform.py中 第17行 mp4Path 的值 后面改为你自己的文件名 3:python transform.py 4:文件会保存在一个新的以时间节点创建的目录中,save.mp4 就是最终的输出
问题: 1:需要自己申请百度开放平台的账号,并且创建应用 https://console.bce.baidu.com/ai/#/ai/speech/overview/index 创建好后,API_KEY和SECRET_KEY 填写到对应位置 第19,20行 2:一些专业名词依然翻译不准,这取决于语音转文字和翻译这两个大的系统,因为用的是免费的开放接口,所以目前没什么特别好的办法,以后想到办法再说!