除 ogg, vorbis 之外的另一个开源免费无专利的音频格式,即 opus。
根据观察这格式也是 ogg 封装(ogg是容器格式,vorbis才是编码,常说的ogg格式实际上指的是vorbis编码格式),各方的支持度其实相当不错。
据大佬说比较优秀,特别是码率较低的时候,ogg会出噪音,而 opus 不会,而且编码速度极快。那么在游戏开发和语音通话等方面应该有上佳表现。
于是顺手写了一个自动转换器,编码器和脚本放在同一目录执行脚本,然后向 input 目录丢 ".wav", ".aiff", ".flac", ".ogg" 这几种格式的文件,会自动转换成同名的 opus 编码文件输出在 output 目录。
-----
autoconv
自动音频转换工具
要求
Python 3.4+
依赖库 watchdog
pip3 install watchdog
python3 autoconv.py
预设用法
http://www.opus-codec.org/downloads/
下载 opus-tools
,并将 opusenc.exe
丢在 autoconv.py
同目录
将音频文件(".wav", ".aiff", ".flac", ".ogg")放在 input 目录下或 input 的子目录
autoconv 会自动调用编码器将文件转换保存至 output 目录的对应路径。
子目录 48 96 192 384 500 代表 5 档不同的码率。
input 根目录的码率是192
举例:放入 input/music.wav
,稍后将得到 output/music.opus
自定义
编辑 config.json 填写参数
在 types 中定义不同的子项,自动对应到 input/{配置名} 这一目录
{
"global": {
"encoder": "opusenc.exe",
"input_dir": "input",
"output_dir": "output",
"watch_ext": [".wav", ".aiff", ".flac", ".ogg"],
"output_ext": ".opus"
},
"types": {
"48": {
"--bitrate": "48",
"--vbr": ""
},
"96": {
"--bitrate": "96",
"--vbr": ""
},
"192": {
"--bitrate": "192",
"--vbr": ""
},
"384": {
"--bitrate": "384",
"--vbr": ""
},
"500": {
"--bitrate": "500",
"--vbr": ""
},
"": {
"--bitrate": "192",
"--vbr": ""
}
}
}
看着改就行。
from https://github.com/fy0/autoconv
No comments:
Post a Comment