Ich möchte eine große Sammlung von WAV-Dateien mit der Einstellung „iTunes Plus“ in iTunes in AAC konvertieren. iTunes beschreibt diese Einstellung wie folgt:
128 kbps (mono) / 256 kbps (stereo), 44,100 kHz, VBR, optimiert für MMX/SSE2.
Ich möchte diesen Importvorgang automatisieren.
Das afconvert
Befehlszeilentool kann zwischen Audiodateiformaten konvertieren. Ich habe ein paar Einstellungen ausprobiert und die nächste, die ich bekommen konnte, ist:
afconvert -v -d aac -b 256000 -f m4af -q 127 -s 2 --soundcheck-generate input.wav output.m4a
Also: Seien Sie ausführlich ( -v
), verwenden Sie das AAC-Datenformat ( -d aac
), codieren Sie mit 256 kbps ( -b 256000
), speichern Sie im Apple MPEG-4-Audiodateiformat ( -f m4af
), verwenden Sie die höchste Qualität ( -q 127
), verwenden Sie VBR-eingeschränkt ( -s 2
) und fügen Sie SoundCheck hinzu Daten in die Datei.
Ich habe auch eine m4a
Datei mit der iTunes Plus-Einstellung erstellt.
Die m4a
von erstellte Datei hat afconvert
ungefähr die gleiche Größe wie die iTunes-Datei; nur 65536 Bytes kleiner.
Mit dem afinfo
Tool habe ich die von iTunes generierte Datei mit der von afconvert
. Es gibt zwei Unterschiede in der afinfo
Ausgabe:
audio data file offset
131072, die eine afconvert
65536. Dies erklärt den Unterschied in der DateigrößeIrgendwie hat die von iTunes generierte Datei andere sound check
Werte als die von konvertierte afconvert
:
iTunes-Datei:
sc ave perceived power coeff 343 407
sc max perceived power coeff 6873 8940
sc peak amplitude msec 154389 194861
sc max perceived power msec 194025 194025
sc peak amplitude 31129 30928
afconvert
Datei:
sc ave perceived power coeff 341 388
sc max perceived power coeff 6087 4157
sc peak amplitude msec 212509 152323
sc max perceived power msec 215481 185017
sc peak amplitude 31024 29857
Vor allem die sc peak amplitude msec
und sc max perceived power msec
Werte weichen stark voneinander ab. Dies sind genau die gleichen Eingabedateien. Was könnte diesen Unterschied verursachen?
Gibt es eine Möglichkeit, Ergebnisse noch näher an der Einstellung „iTunes Plus“ zu erhalten?
Ich hatte genau die gleiche Besessenheit und erstellte schließlich einen FLAC-to-iTunes-Importer, der FLAC-Dateien in WAV dekodiert und sie mit dem iTunes-eigenen Encoder in iTunes importiert: https://github.com/cbguder/FLAC2iTunes
Es sollte einfach genug sein, FLAC2iTunes so zu modifizieren, dass es die direkte WAV-Eingabe unterstützt.
Was die Soundcheck-Werte betrifft, so habe ich iTunes, XLD und afconvert verglichen, indem ich WAV-Dateien in AAC codiert und sie wieder in WAV decodiert und die decodierten Audiodaten verglichen habe. Ich habe auch die afinfo-Ausgaben für die codierten Dateien verglichen. Während die Soundcheck-Werte für jede Datei unterschiedlich sind, sind die dekodierten WAVs genau gleich, so dass selbst wenn Sie XLD oder afconvert verwenden, die Chancen stehen, dass die resultierenden Dateien genau gleich klingen.
Für afconvert habe ich die von Apple im Handbuch „ Mastered for iTunes “ vorgeschlagenen Parameter mit einer CAF-Zwischendatei verwendet:
afconvert source.wav intermediate.caf -d 0 -f caff --soundcheck-generate
afconvert intermediate.caf -d aac -f m4af -u pgcm 2 --soundcheck-read -b 256000 -q 127 -s 2 final.m4a
Auf den neuesten Versionen von afconvert
:
afconvert intermediate.caf -d aac -f m4af -ue pgcm 2 --soundcheck-read -b 256000 -q 127 -s 2 final.m4a
Für XLD habe ich diese Einstellungen verwendet:
Format: MPEG-4 AAC
Mode: VBR (Constrained)
Encoder Quality: Max
Sample Rate: Auto
Target bitrate: 256 kbps
Add gapless information for iTunes: checked
Write accurate bitrate information: checked
Sie können das „Mastering For iTunes“-Droplet verwenden, das auf der Apple-Website verfügbar ist.
http://www.apple.com/itunes/mastered-for-itunes/
Ich musste das Skript ändern, um es auf Yosemite/El Capitan auszuführen, aber es ist ziemlich trivial:
if systemVersion is less than "10.10" then
Jetzt können Sie Ihre FLAC- oder WAV-Dateien einfach per Drag & Drop auf das Droplet ziehen, und es wird eine CAFF-Zwischendatei erstellt, gefolgt von der iTunes Plus AAC-Datei.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Für diejenigen, die daran interessiert sind, sieht es so aus, als ob die afconvert-Subroutinen die folgenden Befehle verwenden (beachten Sie, dass diese aus dem Kontext des Codes gezogen werden und nicht so ausgeführt werden, wie sie sind):
WAV/FLAC zu CAFF:
afconvert -d LEF32@44100 -f caff --soundcheck-generate --src-complexity bats -r 127
afconvert -d 0 -f caff --soundcheck-generate
CAFF zu AAC
afconvert -d aac -f m4af -u pgcm 2 --soundcheck-read -b 256000 -q 127 -s 2
rdvdijk
sound check
Werte unterschiedlich sind und was sie tatsächlich bedeuten. Ich akzeptiere Ihre Antwort. (Und: Ich habe tatsächlich auch viele FLAC-Dateien ;-))TabsNotSpaces
-u pgcm 2
für caf > m4a nicht mehr hinzufügen: führt zu einem Fehler:Couldn't set audio converter property ('prop')
. Gibt es eine neue Einstellung oder neue Dokumentation? Die Apple-Dokumentation empfiehlt es immer noch: images.apple.com/ca/itunes/mastered-for-itunes/docs/…