本文的安装和使用环境是在mac os系统上,为什么这么艰难呢?因为我爱mac深沉不想换windows,更因为我对我的windows机器没有信心...
autosub是我使用生成音频和视频字幕的基本生成工具,链接如下:
agermanidis/autosub
github.com
但是哪有那么简单就能安装使用的!如果你以为两行代码输在终端里面你就想的太简单了[1]...
1.安装autosub
2.那就开刀python
3.重新安装pip
4.还有大坑在ffmpeg
5.安装xcode就够了吧?
6.这下能安装gcc了吧?
7.这下能装ffmpeg了吧?
8.命令如下
9.什么还不行?
10.天真的网络
1.安装autosub
安装autosub并不难,使用
pip install autosub
但是你是不是发现装完之后使用
autosub -h
显示没有command...好吧,那是你可能有很多问题,一个个来耐心哦。
再用
sudo pip uninstall autosub
sudo pip install autosub
这种直接用sudo来清理干净之后再安装的方式也许可以解决问题,但是最终还是不能这么简单的,因为整个python后续版本不对,即使这么安装也还是用不了...
2.那就开刀python
虽然2020年1月python2.7就停止维护了,你是不是发现自己是因为有python3所以还是不能用...同样无语但是还是得重新开刀python啊,因为我们亲爱的autosub只能在2.7的环境下面运行,所以如果已经安装Anaconda3.7版本的可以直接在mac里面搜索到文件夹位置全部移回废纸篓就好。
系统的python回到了2.7的默认情况
python
那么是不是这样就够了?
不是...因为你会发现python一旦在安装Anaconda后被集成,那么你删除之后连pip也没有了...
3.重新安装pip
是不是发现不会安装pip了?那就对了!
因为pip作为能够直接在终端运行的命令,本身需要用系统的brew安装但是存在确受python影响...
brew install pip
是不是发现brew又得自动更新了...但是不要紧,可以等待一下,因为网不断就没事。
4.还有大坑在ffmpeg
是不是也装了pip在自己的内容里面,是不是觉得还是不错的?
错了,因为本来人家还让安装ffmpeg这个多包安装...试图
brew install ffmpeg
实际上是失败的,因为你并不知道这个包里面其实还用了一堆内容,别google了,那些环境什么的根本不是问题,都已经是系统最为底端的位置了,你怎么可以继续呢?
你还需要让的还有就是从头安装的是xcode,因为你安装了ffmpeg之后根本没有编译器...
5.安装xcode就够了吧?
肯定不是,你没有编译器和编译工具有什么关系?其实你缺少的是gcc也就是c和c++的编译器,这两者你还对从头安装。
brew install gcc
哈哈哈!你上当了!
你要知道的是你得从头看这些东西,比如说gcc,你以为他是个编译器直接就装了,其实xcode根本就没给你提供这个东西,你还得点开页面:
Git is not working after macOS Mojave Update (xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools)?
stackoverflow.com
不点开的话也不要紧,其实就是
xcode-select --install
蹦出来让你安装,一路同意,完毕后关闭终端重新打开
6.这下能安装gcc了吧?
不能!
因为你还是需要知道的是,你自己的网络上面可能会出现问题,你还需要k学s网可能渡过。
然后你需要的是等待终于能装完了。
7.这下能装ffmpeg了吧?
不能!
因为你也不知道你现在的网是内是外,也不能确定自己的包一定能装上,但是你可以尝试和等待了。
当你最终装完...是的,终于可以用autosub了!
8.命令如下
autosub -S en -D en 2.mp3
我就是这样整理了我的音频,别忘了这个是自动调用googleAPI的,所以...
终于...
终于发现有多少坑要踩,希望大家不再踩坑...
9.什么还不行?
你以为这样就能出字幕了,打开一看,是0kb...
其实还要关注的是这个问题是由于你的音频不是mono也就是说不是单声道[2],所以你还得把mp3等格式专门转成单声道。
Convert audio and video to MP3?
audio.online-convert.com
在change audio channels里面选择mono。
转换完之后会自动下载,这时候你得到的文件比原来还要小不少,这很好,为什么?看后面。
10.天真的网络
因为这个要掉谷歌的包,所以你要用到的是自己的网络能够连接谷歌的服务,所以最终你需要稳定的网络不然中间断掉就很差了[3]。
现在你可能要多试几次,因为中间会出现Connection broken,那么你就要理解的是自己必须查新再运行一遍命令,没问题的,因为你可以实现的...