Sto utilizzando un'istanza di AVAudioRecorder per registrare con l'impostazione per AVFormatIDKey
impostata su kAudioFormatMPEG4AAC
. Registra l'audio in formato AAC ma un contenitore audio .caf
impacchetta il file audio. (Posso vedere l'intestazione del caff nel file del registratore). Come faccio a registrare in modo che il contenitore caff non sia lì ma in puro formato m4a in modo che io possa usare i file attraverso le piattaforme.Come registrare utilizzando AVAudioRecorder senza il contenitore .caf?
5
A
risposta
12
Trovato la risposta. Esiste un modo strano in cui funziona AVAudioRecorder.
Il formato in cui AVAudioRecorder salverà il file dipende dall'URL/stringa specificata per il file salvato. Dipende dall'estensione del nome del file che stai salvando.
Se non si specifica alcuna estensione o una che il registratore non può capire, aggiungerà il contenitore Core Audio. Quindi, basti vedere che l'estensione e la corrispondenza AVFormatIDKey
. Come per aac
formato uso utilizzare .aac
di estensione con kAudioFormatMPEG4AAC
come AVFormatIDKey
correlati: https://stackoverflow.com/questions/28796064/avaudiorecorder-initwithurl-file-type-documentation –