Quali sono le impostazioni di afconvert per l'impostazione della codifica AAC di iTunes Plus?

8

La sfida

Mi piacerebbe convertire una vasta collezione di file WAV in AAC usando l'impostazione "iTunes Plus" in iTunes. iTunes descrive questa impostazione come:

128 kbps (mono) / 256 kbps (stereo), 44.100 kHz, VBR, optimized for MMX/SSE2.

Vorrei automatizzare questo processo di importazione.

Prova ed errore

Lo strumento da riga di comando afconvert può convertire tra i formati di file audio. Ho provato alcune impostazioni e il più vicino possibile è:

afconvert -v -d aac -b 256000 -f m4af -q 127 -s 2 --soundcheck-generate input.wav output.m4a

Quindi: be verbose ( -v ), usa il formato dati AAC ( -d aac ), codifica a 256 kbps ( -b 256000 ), archivia nel formato file Apple MPEG-4 Audio ( -f m4af ), usa la massima qualità ( -q 127 ), usa VBR vincolato ( -s 2 ) e aggiungi dati SoundCheck al file.

Ho anche creato un file m4a utilizzando l'impostazione iTunes Plus.

Il file m4a creato da afconvert ha all'incirca le stesse dimensioni del file iTunes; solo 65536 byte più piccoli.

Risultati

Utilizzando lo strumento afinfo , ho confrontato il file generato da iTunes con il file generato da afconvert . Esistono due differenze nell'output afinfo :

  1. Il file generato da iTunes ha una audio data file offset di 131072, quella di afconvert 65536. Questo spiega la differenza nelle dimensioni del file
  2. In qualche modo il file generato da iTunes ha diversi valori di sound check rispetto a quello convertito da afconvert :

    • file 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 file:

      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
      

    Soprattutto i valori di sc peak amplitude msec e sc max perceived power msec differiscono parecchio. Questi sono esattamente gli stessi file di input, cosa potrebbe causare questa differenza?

Domanda

C'è un modo per ottenere risultati ancora più vicini all'impostazione "iTunes Plus"?

    
posta rdvdijk 19.03.2012 - 20:43
fonte

2 risposte

6

Ho avuto esattamente la stessa ossessione e ho finito per creare un importatore FLAC-to-iTunes che decodifica i file FLAC in WAV e li importa in iTunes usando il codificatore di iTunes: link

Dovrebbe essere abbastanza facile modificare FLAC2iTunes per supportare l'input WAV diretto.

Per quanto riguarda i valori del soundcheck, ho confrontato iTunes, XLD e afconvert codificando i file WAV in AAC e decodificandoli in WAV e confrontando i dati audio decodificati. Ho anche confrontato le uscite afinfo per i file codificati. Mentre i valori di souncheck sono diversi per ogni file, i WAV decodificati sono esattamente gli stessi, quindi anche se usi XLD o afconvert, è probabile che i file risultanti suonino esattamente allo stesso modo.

Per afconvert, ho utilizzato i parametri suggeriti da Apple nella guida " Mastered per iTunes " , con un file CAF intermedio:

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

Per XLD, ho usato queste impostazioni:

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
    
risposta data 03.05.2012 - 06:10
fonte
3

È possibile utilizzare il droplet "Mastering per iTunes" disponibile sul sito Web di Apple.

link

Ho dovuto modificare lo script per l'esecuzione su Yosemite / El Capitan, ma è abbastanza banale:

  • Mostra il contenuto del pacchetto dell'app in Finder (Applicazioni / Utility / Master per Droplet iTunes).
  • Vai a Contenuto / Risorse / Script
  • Apri main.scpt
  • Aggiorna la versione del sistema confronta le linee in "10.10" (ci sono due righe che richiedono questa modifica):

    if systemVersion is less than "10.10" then

  • Salva main.scpt

Ora puoi semplicemente trascinare e rilasciare i tuoi file FLAC o WAV sul droplet e creerà un file CAFF intermedio seguito dal file AAC di iTunes Plus.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Per chi fosse interessato, sembra che le subroutine di afconvert utilizzino i seguenti comandi (nota che sono estratti dal contesto del codice e non verranno eseguiti così com'è):

  • WAV / FLAC a CAFF:

    • se sampleRate è maggiore di "44100":

    afconvert -d LEF32@44100 -f caff --soundcheck-generate --src-complexity bats -r 127

    • altro

    afconvert -d 0 -f caff --soundcheck-generate

  • CAFF in AAC

    afconvert -d aac -f m4af -u pgcm 2 --soundcheck-read -b 256000 -q 127 -s 2

risposta data 10.01.2017 - 20:20
fonte

Leggi altre domande sui tag