我正在尝试在 ubuntu 13.10 上使用 ffmpeg 将 AP3 转换为 MP3?
我安装了ffmpeg,但是我在使用时出现此错误。请告诉我如何修复它?
$ ffmpeg -i CD1_Age_0-3_Baby.ape CD1_Age_0-3_Baby.mp3
ffmpeg version 0.8.9-6:0.8.9-0ubuntu0.13.10.1, Copyright (c) 2000-2013 the Libav developers
built on Nov 9 2013 19:15:22 with gcc 4.8.1
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
Input #0, ape, from 'CD1_Age_0-3_Baby.ape':
Metadata:
Album : MOZART EFFECT I - ENLIGHTMENT
Title : C:\[APE SET] Ī����ЧӦ-�������ǵ����� 4CDS\CDImage01
Genre : Classical
Year : 2002
Comment : Exact Audio Copy
Duration: 01:09:17.75, start: 0.000000, bitrate: 656 kb/s
Stream #0.0: Audio: ape, 44100 Hz, stereo, s16
Output #0, mp3, to 'CD1_Age_0-3_Baby.mp3':
Stream #0.0: Audio: [0][0][0][0] / 0x0000, 44100 Hz, stereo, s16, 200 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Encoder (codec id 86017) not found for output stream #0.0
答案1
首先确保您已经libavcodec-extra-53
安装了用于编码为 mp3 的包。
sudo apt-get install libavcodec-extra-53
尝试使用 ffmpeg 将 .ape 文件转换为 .mp3,您将收到以下消息:
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release.
Please use avconv instead.
这是您在问题中收到的相同错误消息。因此请使用avconv
。avconv 程序由libav 工具来自 Ubuntu 软件中心的软件包。avconv 与 ffmpeg 一样,从终端运行。
此示例对 output.mp3 文件使用 256kbps 比特率,对元数据标签使用 id3v2_version 3。首先使用命令将目录更改cd
为要转换的 input.ape 文件所在的同一目录。然后运行命令:
avconv -i 'input.ape' -id3v2_version 3 -codec:a libmp3lame -b 256k 'output.mp3'
注意:该命令:ffmpeg -i '10 Make Peace.ape' -acodec libmp3lame -b 256k -id3v2_version 3 '10 Make Peace.mp3'
也将使用 ffmpeg 转换为 mp3,但您将收到THIS PROGRAM IS DEPRECATED
错误消息。ffmpeg 包在 Ubuntu 13.10 及更早版本中仍然可用。
在 Ubuntu 14.04 中,Libav 编解码器库(附加编解码器)软件包(libavcodec-extra-53)已更新为 libavcodec-extra-54。在 Ubuntu 14.10 和 15.04 中,Libav 编解码器库(附加编解码器)软件包已更新为 libavcodec-extra-56。
针对 Ubuntu 15.10 及更高版本的更新
在 Ubuntu 15.10 和 16.04 中,Libav 编解码器库(附加编解码器)包已更新为 libavcodec-ffmpeg-extra56。
在 Ubuntu 16.10、17.04、17.10 和 18.04 中,Libav 编解码器库(附加编解码器)包已更新为 libavcodec-extra57。
在 Ubuntu 18.10 和 19.04 中,Libav 编解码器库(附加编解码器)包已更新为 libavcodec-extra58。
答案2
您有六个主要选项可以将文件编码为 MP3 ffmpeg
:
避免误导性的 Libav 混乱这是强制 Ubuntu 用户使用的,只需下载、提取并执行最近的Linux 构建
ffmpeg
。输入~/bin
后重新登录。现在运行时ffmpeg
它将使用这个新版本。这是最简单的选择。关注一步一步指导如何编译真正的
ffmpeg
使用您想要的任何编解码器和功能。ffmpeg
从安装适用于 Trusty PPA 的 Ubuntu 多媒体(适用于 14.04 用户)。安装该
libavcodec-extra-*
包以通过 libmp3lame 在有缺陷avconv
或糟糕的、旧的、假的环境中启用 MP3 编码ffmpeg
。管道传输
lame
并用它来编码:ffmpeg -i input -f wav - | lame - output.mp3
升级 Ubuntu 并使用
ffmpeg
repo 中的软件包。FFmpegffmpeg
的真正功能在 Vivid 15.04 中返回到 Ubuntu。
答案3
使用libav_tools
并libmp3lame
安装在ape文件所在的目录中,在终端中输入:
$ for f in *.ape; do
avconv -i "$f" -id3v2_version 3 -codec:a libmp3lame -ab 320k "${f%.ape}.mp3"
done
这样目录中的所有 ape 文件都转换为 mp3 立体声 320kb,并且 ape 文件中的标签受到尊重。
答案4
下面的脚本将从执行 find 命令的路径开始递归地将所有 wma 文件转换为 mp3。旧的 wma 文件将被删除!!!
脚本:
#!/bin/bash
#Command to call wma2mp3 script
#find . -name "*wma" -exec ~/wma2mp3 {} \;
ffmpeg -sameq -i "$1" "${1%.*}.mp3";
rm -f "$1";