Tworzę kopie zapasowe dysków CD do formatu FLAC, a następnie transkoduję do plików AAC (.m4a) w celu przeniesienia na mój telefon z Androidem i iPhone'a żony. Używałem XLD na Macu i robi to świetną robotę, ale wolałbym nie ukraść jej Maca, aby to zrobić i móc to zrobić na własnym pudełku Debiana. Następujące prace:
avconv -i "inputfile.flac" -acodec aac -strict experimental "outputfile.m4a" -map_metadata "inputfile.flac":"outputfile.m4a"
Ale poniższe nie (dobrze robi, ale ignoruje 320 dla jakości dźwięku i wyników takich samych jak powyżej):
avconv -i "inputfile.flac" -acodec aac -aq 320 -strict experimental "outputfile.m4a" -map_metadata "inputfile.flac":"outputfile.m4a"
Znalazłem inne polecenia online, takie jak „ffmpeg”, ale najwyraźniej większość lub wszystkie z nich są amortyzowane na rzecz powyższej metody avconv. Każda pomoc byłaby bardzo mile widziana! Mógłbym żyć z 320 Kbps, jeśli nie prawda VBR, ale LC VBR co najmniej 320 byłby najlepszy.
audio
conversion
flac
statyczny
źródło
źródło
Odpowiedzi:
Po pierwsze,
-aq
ustawia zmienną przepływność w oparciu o jakość - myślę, że szukasz-ab
(zauważ, że jestem użytkownikiem ffmpeg, więc moja wiedza na temat składni avconv jest ograniczona - nie mam pojęcia, jak daleko się posunęła) widelec).Niezależnie od tego wbudowany koder AAC avconv / ffmpeg jest dość zły.
fdk_aac
Jedynym naprawdę dobrym koderem AAC dla avconv / ffmpeg jest libfdk_aac - ale licencja na to jest niezgodna z GPL, więc aby uzyskać do niego dostęp, musisz skompilować własny (jest to przewodnik kompilacji ffmpeg, ponieważ ja nie nie znam jednego dla avconv - przewodnik po Ubuntu powinien być odpowiedni dla Debiana, ponieważ nie sądzę, że jest tam coś specyficznego dla Ubuntu).
Gdy go zdobędziesz, postępuj zgodnie z przewodnikiem kodowania AAC ; Zdecydowanie polecam wypróbowanie
-vbr
opcji fdk_aac - ustawienie 3 brzmi dla mnie przezroczysto we wszystkich plikach, które próbowałem, jeśli chcesz placebo o wyższej przepływności lub jesteś inżynierem dźwięku, możesz spróbować ustawienia 5Nie ma
-map_metadata
takiej potrzeby , ponieważ ffmpeg automatycznie przesyła metadane (i jestem pewien, że avconv też).Dla stałej szybkości transmisji 320 kbit / s (poważnie, nie jest to tego warte, AAC osiąga przezroczystość dźwięku w porównaniu do oryginalnego audio CD przy około stałym 128 kbit / s):
neroAacEnc
Koder AAC Nero należy traktować na równi z fdk_aac i qaac (Quicktime AAC). Różni ludzie będą opiniować, która z nich jest lepsza, ale zauważysz różnice tylko przy bardzo niskich przepływnościach i wszyscy zgadzają się, że wszyscy są bardzo wysokiej jakości.
neroAacEnc
jest dostępny na stronie internetowej Nero . Rozpakuj go i umieść gdzieś w $ PATH.Niestety
neroAacEnc
może przyjmować tylko dźwięk WAV jako wejście; możesz obejść ten problem, używając avconv lub ffmpeg jako dekodera:Niestety spowoduje to usunięcie metadanych; aby to przenieść, użyj avprobe / ffprobe (with
-show_format
), aby wyodrębnić i neroAacTag, aby wstawić. Skrypt bash prawdopodobnie byłby w porządku.Zobacz stronę HydrogenAudio na neroAacEnc : z pamięci
-q
ustawienie 0,4 brzmiało dla mnie świetnie. Można kierować przepływność z-br
(ponownie, myślę, że to byłby sposób overkill):EDYCJA: oto skrypt do konwersji plików audio do m4a za pomocą neroAacEnc, a następnie oznaczenia za pomocą ffprobe i neroAacTag (wymaga, aby wszystkie znajdowały się w katalogu w $ PATH). Może przyjmować wiele plików wejściowych, więc jeśli zapiszesz jako
convert-to-m4a
, możesz przekonwertować każdy plik FLAC w katalogu za pomocąNie ogranicza się tylko do plików FLAC; będzie działał każdy format audio, który może zdekodować twój ffmpeg / avconv. Możesz zmienić ffprobe i ffmpeg na avprobe i avconv:
źródło
brew install ffmpeg --with-fdk-aac
. możesz uzyskać listę opcji za pomocąbrew info ffmpeg
. Ale dobry pomysł, aby nie ukraść Maca twojej żony :)Sugeruję użycie FFmpeg do konwersji z FLAC na AAC. FFmpeg można łatwo zainstalować na komputerze Mac OS X z funkcją brew:
Następnie uruchom następującą komendę, aby przekonwertować wszystkie pliki FLAC w bieżącym katalogu na AAC:
I przekonwertować je na MP3:
źródło
for i in *flac;do of="${i/.flac/.m4a}"; ffmpeg -i "${i}" -vn -acodec aac -b:a 320k -f mp4 -y "${of}";done
To jest mój skrypt owijający ffmpeg do konwersji dowolnego obsługiwanego formatu audio na AAC (za pomocą kodera libfdk-aac, który jest zalecanym koderem aac przez wiki wiki ffmpeg).
Komunikat pomocy w wierszu poleceń:
źródło
Dodatkowa odpowiedź (do odpowiedzi evilsoup)
Poradzić sobie
find
„-print0
+xarg
”-0
)$1
zsh -c
argumentu pozycyjnego--FILE
ustawionego przezxarg
s-I
)Jednowarstwowa
źródło