首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将MP3文件转换为Opus文件?

如何将MP3文件转换为Opus文件?
EN

Stack Overflow用户
提问于 2016-07-04 13:10:13
回答 3查看 9K关注 0票数 7

是否有可将MP3文件转换为Opus(https://en.wikipedia.org/wiki/Opus_(audio_format%29)? )的转换器?

你能推荐一个能做到的吗?

到目前为止,我已经尝试过Adobe试镜Xilisoft音频转换器ProWinAVI视频转换器Aimersoft视频转换器Pro。它们都没有用。

EN

回答 3

Stack Overflow用户

发布于 2018-03-07 00:07:00

最简单的选择是这样的命令

代码语言:javascript
运行
复制
ffmpeg -i input.mp3 -c:a libopus output.opus

但是有一些你可以调整的参数,所有的这里都有文档。

例如,我使用以下命令压缩有声读物/播客(由此产生的~32 kbps OPUS文件听起来与192 kbps MP3听起来难以区分):

代码语言:javascript
运行
复制
ffmpeg -i input.mp3 -c:a libopus -b:a 32k -vbr on -compression_level 10 -frame_duration 60 -application voip output.opus
  • -b:a 32k将比特率设置为32 kbps (或在VBR情况下约为35 kbps ),可以合理地使用128 k压缩音乐,给出无损(或320 k MP3)的原始音乐,或使用64k压缩音乐的192 k MP3原件。
  • -vbr on打开可变比特率模式(可能会以使用额外的kbit来提高质量几秒钟)。
  • -compression_level 10命令比压缩速度更有利于质量
  • -frame_duration 60以增加40毫秒的延迟来提高质量
  • -application voip要求尽可能地保存语音清晰度,使用-application audio进行音乐。

您可以以这种方式在bash中转换多个文件集:

代码语言:javascript
运行
复制
for f in *.mp3; do ffmpeg -i "$f" -c:a libopus "${f%.*}.opus"; done
票数 20
EN

Stack Overflow用户

发布于 2021-04-03 10:24:43

递归转换所有子文件夹中的MP3文件并利用所有CPU

注意到:在编码OPUS文件时忽略FFmpeg多线程-thread n参数。

准备工作

使用Opus编解码器安装GNU并行FFmpeg和MP3

代码语言:javascript
运行
复制
sudo apt install -y parallel ffmpeg libmp3lame libopus

用法

递归并使用所有CPU:

  • find -iname "*.mp3" -type f查找整个目录中的所有MP3文件
  • parallel -I% --max-args 1准备parallel使用% char作为文件路径保存的参数
  • -c:a opus设置OPUS为编码器
  • -strict -2使FFmpeg能够与OPUS编码器一起工作
  • -b:a 128K -vbr on设置为128 KB/s (VBR),即足够存储立体声音乐
  • -map_metadata 0标记从MP3复制到OPUS文件
  • -compression_level 10比压缩速度更有利于质量
  • 如果已经存在-y覆盖OPUS文件
  • touch -r % %.opus使用MP3文件的时间而不是新创建的文件
  • rm -vf %删除MP3文件
代码语言:javascript
运行
复制
find -iname "*.mp3" -type f | parallel -I% --max-args 1  \
  "ffmpeg -i % -strict -2 -c:a opus -b:a 128K -vbr on -map_metadata 0 -compression_level 10 -y %.opus;touch -r % %.opus;rm -vf %"

注意:不要将-frame_duration参数用于混合音频目的

票数 6
EN

Stack Overflow用户

发布于 2016-07-04 13:17:37

尝试使用ffmpeg-acodec libopus

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38185598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档