Как использовать ffmpeg для преобразования ape в mp3?

10

Я пытаюсь использовать ffmpeg на ubuntu 13.10 для преобразования 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
    
задан michael 14.11.2013 в 00:09
источник

5 ответов

8

Сначала убедитесь, что у вас установлен пакет libavcodec-extra-53 для кодировки в mp3.

sudo apt-get install libavcodec-extra-53  

Попробуйте преобразовать файл .ape в .mp3 с помощью ffmpeg, и вы получите следующее сообщение:

*** 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-tools из программного обеспечения Ubuntu Software Center. avconv, например ffmpeg, запускается с терминала.

В этом примере используется битрейт 256 кбит / с для файла output.mp3 и 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' также выполняет преобразование в mp3 с помощью ffmpeg, но вы получите сообщение об ошибке THIS PROGRAM IS DEPRECATED . Пакет ffmpeg по-прежнему доступен в версиях Ubuntu 13.10 и более ранних версиях.

В Ubuntu 14.04 пакет libavcodec-extra-53 библиотеки Libav codec (дополнительные кодеки) был обновлен до libavcodec-extra-54. В Ubuntu 14.10 и 15.04 пакет Libav codec library (дополнительных кодеков) был обновлен до libavcodec-extra-56.

Обновления для Ubuntu 15.10-18.04

В Ubuntu 15.10 и 16.04 пакет Libav codec library (дополнительных кодеков) был обновлен до libavcodec-ffmpeg-extra56.

В Ubuntu 16.10, 17.04, 17.10 и 18.04 пакет Libav codec library (дополнительных кодеков) был обновлен до libavcodec-extra57.

    
ответ дан karel 14.11.2013 в 01:02
5

У вас есть шесть основных опций для кодирования в MP3 с помощью ffmpeg :

  • Избегайте вводящего в заблуждение беспорядка Libav , который был принудительно запущен пользователями Ubuntu, и просто загружать, извлекать и выполнять недавняя сборка Linux ffmpeg . Поместите его в ~/bin , а затем повторно войдите в систему. Теперь, когда вы запустите ffmpeg , он будет использовать эту новую сборку. Это самый простой вариант .

  • Следуйте пошаговое руководство по компиляции реального ffmpeg с любыми кодеками и функции, которые вы хотите.

  • Установите ffmpeg из Ubuntu Multimedia для Trusty PPA (за 14.04 пользователей).

  • Установите пакет libavcodec-extra-* , чтобы включить кодирование MP3 через libmp3lame в багги avconv или дрянной, старый, поддельный ffmpeg .

  • Труба в lame и использовать ее для кодирования: ffmpeg -i input -f wav - | lame - output.mp3

  • Обновите Ubuntu и используйте пакет ffmpeg из репо. Реальный ffmpeg от FFmpeg вернулся к Ubuntu в Vivid 15.04.

ответ дан LordNeckbeard 14.11.2013 в 20:21
1

Вот еще один скрипт, который может помочь людям. Вам нужно будет скопировать его в корневую папку файлов ape, которые вы хотите преобразовать.

#!/bin/bash

set -e

# Script Name:  convert_ape2mp3.sh
#
# Description:  The script will recursively find all *.ape files
#   and then convert them to mp3 files.
#   This script has been tested on Ubuntu 14.04 
#   
# Dependencies: (you will need to install the following library prior
#                to running this script.)
#     sudo apt-get install libav-tools
# avconv -i '01_Tori Amos_Beauty Queen - Horses.ape' -id3v2_version 3 -codec:a libmp3lame -b 320k '01_Tori Amos_Beauty Queen - Horses.mp3'

# Optional:  After conversion is complete if you want you can 
#   remove all the ape files.
#   find . -type f -name "*.ape" 
#   find . -type f -name "*.ape" -exec rm {} \;

find . -name "*.ape" -print0 | while IFS= read -r -d '' FILE; do
    echo "### Converting $FILE..."
    echo avconv -i "$FILE" -id3v2_version 3 -codec:a libmp3lame -b 320k "${FILE%.*}.mp3";
    avconv -i "$FILE" -id3v2_version 3 -codec:a libmp3lame -b 320k "${FILE%.*}.mp3";

done
    
ответ дан Michael Kreeger 11.04.2015 в 19:39
1

С 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.

    
ответ дан David G 18.10.2015 в 19:26
0

Сценарий ниже преобразует все wma-файлы в mp3 рекурсивно, начиная с пути, в котором выполняется команда find. Старые файлы wma будут удалены !!!

Сценарий:

#!/bin/bash
#Command to call wma2mp3 script
#find . -name "*wma" -exec ~/wma2mp3 {} \;

ffmpeg -sameq -i "" "${1%.*}.mp3";
rm -f "";
    
ответ дан user306622 17.07.2014 в 23:02