Wyzwanie
Chciałbym przekonwertować dużą kolekcję plików WAV do AAC przy użyciu ustawienia „iTunes Plus” w iTunes. iTunes opisuje to ustawienie jako:
128 kb / s (mono) / 256 kb / s (stereo), 44,100 kHz, VBR, zoptymalizowany dla MMX / SSE2.
Chciałbym zautomatyzować ten proces importowania.
Próba i błąd
Narzędzie afconvert
wiersza polecenia może konwertować między formatami plików audio. Wypróbowałem kilka ustawień i najbliższe, jakie mogłem uzyskać, to:
afconvert -v -d aac -b 256000 -f m4af -q 127 -s 2 --soundcheck-generate input.wav output.m4a
Więc: bądź verbose ( -v
), użyj formatu danych AAC ( -d aac
), koduj z prędkością 256 kb / s ( -b 256000
), przechowuj w formacie plików MP3 MPEG-4 Audio Apple ( -f m4af
), używaj najwyższej jakości ( -q 127
), używaj ograniczenia VBR ( -s 2
) i dodaj SoundCheck dane do pliku.
Utworzyłem również m4a
plik przy użyciu ustawienia iTunes Plus.
m4a
Plik stworzony przez afconvert
to o tym samym rozmiarze co plik iTunes; tylko 65536 bajtów mniejszych.
Wyniki
Za pomocą tego afinfo
narzędzia porównałem plik wygenerowany przez iTunes z plikiem wygenerowanym przez afconvert
. Istnieją dwie różnice w danych afinfo
wyjściowych:
- Plik wygenerowany przez iTunes ma
audio data file offset
131072, ten przezafconvert
65536. To wyjaśnia różnicę w rozmiarze pliku Jakoś plik wygenerowany przez iTunes ma inne
sound check
wartości niż ten przekonwertowany przezafconvert
:plik iTunes:
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
plik: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
Zwłaszcza wartości
sc peak amplitude msec
isc max perceived power msec
bardzo się różnią. Są to dokładnie te same pliki wejściowe, co może spowodować tę różnicę?
Pytanie
Czy istnieje sposób na zbliżenie wyników do ustawienia „iTunes Plus”?
sound check
wartości byłyby inne i co one właściwie oznaczają. Przyjmuję twoją odpowiedź. (I: Właściwie mam też dużo plików FLAC ;-))Możesz użyć kropli „Mastering For iTunes” dostępnej na stronie Apple.
http://www.apple.com/itunes/mastered-for-itunes/
Musiałem zmodyfikować skrypt, aby działał na Yosemite / El Capitan, ale jest to dość trywialne:
Teraz możesz po prostu przeciągnąć i upuścić pliki FLAC lub WAV na kroplę, aby utworzyć pośredni plik CAFF, a następnie plik AAC iTunes Plus.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Dla zainteresowanych wygląda na to, że podprogramy afconvert używają następujących poleceń (zwróć uwagę, że są one wyciągnięte z kontekstu kodu i nie będą działać tak, jak są):
WAV / FLAC do CAFF:
CAFF do AAC
źródło