Вопрос

I am using a AVAudioRecorder instance to record with the setting for AVFormatIDKey set to kAudioFormatMPEG4AAC. It records the audio in AAC format but a .caf audio container packages the audio file. (I can see the caff header in the recorder file). How do I record so that the caff container is not there but in pure m4a format so that I can use the files across platforms.

Это было полезно?

Решение

Found the answer. There is a weird way the AVAudioRecorder works.

The format in which the AVAudioRecorder will save your file depends on the URL/string you specify for the file you save. It depends on the extension of the file name you are saving.

If you don't specify any extension or one that the recorder can't understand then it will add the Core Audio container. So, basically see to that the extension and the AVFormatIDKey match. Like for aac use format use .aac extension with kAudioFormatMPEG4AAC as the AVFormatIDKey

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top