Как записать аудиофайл в формате .mp3? - PullRequest
8 голосов
/ 02 февраля 2011

Я использую следующие настройки для записи аудио файла в формате .mp3 с помощью AVAudioRecorder.

NSDictionary *recordSettings = [[NSDictionary alloc] initWithObjectsAndKeys:

                                        [NSNumber numberWithFloat: 44100.0],AVSampleRateKey,
                                        [NSNumber numberWithInt: kAudioFormatMPEGLayer3],AVFormatIDKey,
                                        [NSNumber numberWithInt: 1], AVNumberOfChannelsKey,
                                        [NSNumber numberWithInt: AVAudioQualityMax],AVEncoderAudioQualityKey,nil];

Но не умеет записывать с ними. Я много искал для этого, но не смог получить какой-то соответствующий пост. В некоторых сообщениях говорится, что это невозможно. Если это невозможно, то почему так? Пожалуйста, ответьте.

1 Ответ

13 голосов
/ 02 февраля 2011

Проблема kAudioFormatMPEGLayer3, которая не поддерживается AVAudioRecorder.

В качестве альтернативы вы можете использовать kAudioFormatAppleIMA4 для записи.

Наконец, вы можете написать собственную логику кодирования для преобразования kAudioFormatAppleIMA4 в MP3 формат.

Другое поддерживаемое кодирование для целей записи:

kAudioFormatMPEG4AAC   
kAudioFormatAppleLossless  
kAudioFormatAppleIMA4   
kAudioFormatiLBC 
kAudioFormatULaw 
kAudioFormatLinearPCM 

Для получения дополнительной информации вы можете обратиться к этому сообщению SO.

...