如何使用ffmpeg将ape转换为mp3?

如何使用ffmpeg将ape转换为mp3?

我正在尝试在 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 并使用ffmpegrepo 中的软件包。FFmpegffmpeg的真正功能在 Vivid 15.04 中返回到 Ubuntu。

答案3

使用libav_toolslibmp3lame安装在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";

相关内容