Jak korzystać z ffmpeg do konwersji ape na mp3?


10

Próbuję użyć ffmpeg na Ubuntu 13.10 do konwersji AP3 na MP3?

Zainstalowałem ffmpeg , ale pojawia się ten błąd, gdy go używam. Powiedz mi, jak mogę to naprawić?

$ 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

Odpowiedzi:


9

Najpierw upewnij się, że masz libavcodec-extra-53pakiet do kodowania do formatu mp3.

sudo apt-get install libavcodec-extra-53  

Spróbuj przekonwertować plik .ape na .mp3 za pomocą ffmpeg, a otrzymasz następujący komunikat:

*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release.   
Please use avconv instead.

To ten sam komunikat o błędzie, który otrzymałeś w swoim pytaniu. Więc użyj avconvzamiast tego. Program avconv jest dostarczany przez pakiet libav-tools z Centrum oprogramowania Ubuntu. avconv, podobnie jak ffmpeg, jest uruchamiany z terminala.

W tym przykładzie bitrate 256 kb / s dla pliku output.mp3 i id3v2_version 3 dla znaczników metadanych. Najpierw zmień katalog za pomocą cdpolecenia na ten sam katalog, w którym znajduje się konwertowany plik input.ape. Następnie uruchom polecenie:

avconv -i 'input.ape' -id3v2_version 3 -codec:a libmp3lame -b 256k 'output.mp3'

Uwaga: Polecenie: ffmpeg -i '10 Make Peace.ape' -acodec libmp3lame -b 256k -id3v2_version 3 '10 Make Peace.mp3'wykona również konwersję do formatu mp3 przy użyciu ffmpeg, ale pojawi się THIS PROGRAM IS DEPRECATEDkomunikat o błędzie. Pakiet ffmpeg jest nadal dostępny w Ubuntu 13.10 i wcześniejszych wersjach.

W Ubuntu 14.04 pakiet biblioteki kodeków Libav (dodatkowe kodeki) (libavcodec-extra-53) został zaktualizowany do libavcodec-extra-54. W Ubuntu 14.10 i 15.04 pakiet biblioteki kodeków Libav (dodatkowe kodeki) został zaktualizowany do libavcodec-extra-56.

Aktualizacje dla Ubuntu 15.10 i nowszych

W Ubuntu 15.10 i 16.04 pakiet biblioteki kodeków Libav (dodatkowe kodeki) został zaktualizowany do libavcodec-ffmpeg-extra56.

W Ubuntu 16.10, 17.04, 17.10 i 18.04 pakiet biblioteki kodeków Libav (dodatkowe kodeki) został zaktualizowany do libavcodec-extra57.

W Ubuntu 18.10 i 19.04 pakiet biblioteki kodeków Libav (dodatkowe kodeki) został zaktualizowany do libavcodec-extra58.


2
Zauważ, że komunikat „przestarzałe” odnosi się ffmpegz Libav (rozwidlenie FFmpeg), a nie ffmpegz FFmpeg.
— llogan

1
Nie komunikat o błędzie jest na dole: Encoder (codec id 86017) not found for output stream #0.0. Uruchomienie tego samego programu z inną nazwą nie naprawia żadnego prawdziwego problemu, po prostu tłumi fagoterię Libav, ale -codec:a libmp3lamemoże być naprawą tego problemu.
— LiveWireBT

5

Masz sześć głównych opcji kodowania do formatu MP3 za pomocą ffmpeg:

  • Unikaj wprowadzającego w błąd bałaganu, który został wymuszony na użytkownikach Ubuntu, i po prostu pobierz, rozpakuj i uruchom najnowszą wersję Linuxffmpeg . Włóż to, ~/bina następnie zaloguj się ponownie. Teraz po uruchomieniu ffmpegużyje tej nowej wersji. To najłatwiejsza opcja .

  • Postępuj zgodnie z instrukcjami krok po kroku, aby skompilować rzeczywistyffmpeg kodek z dowolnymi kodekami i funkcjami.

  • Zainstaluj ffmpegz Ubuntu Multimedia for Trusty PPA (dla użytkowników 14.04).

  • Zainstaluj libavcodec-extra-*pakiet, aby włączyć kodowanie MP3 przez libmp3lame w buggy avconvlub gównianym, starym, fałszywym ffmpeg.

  • Potokuj lamei używaj go do kodowania:ffmpeg -i input -f wav - | lame - output.mp3

  • Zaktualizuj system Ubuntu i użyj ffmpegpakietu z repozytorium. Real ffmpegz FFmpeg powrócił do Ubuntu w Vivid 15.04.


2
Z mojego doświadczenia wynika, że ​​większość problemów z konwersją wideo rozwiązuje się, instalując prawdziwy ffmpeg. Używam kompilacji statycznych --- bez instalacji, bez kłopotów, bez kompresji i startu --- podanych w linku w tej odpowiedzi od co najmniej dwóch lat (czasem aktualizowania) i nie miałem żadnego problemu.
— Rmano

1

Oto kolejny skrypt, który może pomóc ludziom. Musisz go skopiować do folderu głównego plików małp, które chcesz przekonwertować.

#!/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

1

Z libav_toolsi libmp3lamezainstalowany w katalogu, w którym znajdują się pliki ape wpisać w terminalu:

$ for f in *.ape; do
      avconv -i "$f" -id3v2_version 3 -codec:a libmp3lame -ab 320k "${f%.ape}.mp3"
done

Dzięki temu wszystkie pliki małp w katalogu są konwertowane na mp3 stereo 320kb, a znaczniki w plikach małp są przestrzegane.


1
Sprawdź swój blok kodu. To nie ma sensu (przynajmniej dla mnie).
— Cbhihe

Blok kodu ma idealny sens. Instrukcja for uniemożliwia terminalowi wykonanie polecenia po naciśnięciu klawisza Enter. Gotowe kończy pętlę, podczas gdy dwie linie pośrodku znajdują się wewnątrz pętli.
— Zzzach ...

@Zzzach ...: dziękuję bardzo. Pfeww! Nareszcie, wiem, bash! ;-) Poważniej, spójrz na formatowanie tego bloku kodu przed edycją ...
— Cbhihe,

0

Poniższy skrypt konwertuje rekurencyjnie wszystkie pliki wma na mp3, zaczynając od ścieżki, w której wykonywane jest polecenie find. Stare pliki wma zostaną usunięte !!!

Scenariusz:

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

ffmpeg -sameq -i "$1" "${1%.*}.mp3";
rm -f "$1";

Witamy w AskUbuntu! Czy możesz edytować swój post, aby skrypt był łatwiejszy do odczytania. (Użyj> lub 4 spacji przed każdą linią)
— No Time
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.