I am using the following settings for recording audio file in .mp3 format using AVAudioRecorder.
NSDictionary *recordSettings = [[NSDictionary alloc] initWithObjectsAndKeys:
[NSNumber numberWithFloat: 44100.0],AVSampleRateKey,
[NSNumber numberWithInt: kAudioFormatMPEGLayer3],AVFormatIDKey,
[NSNumber numberWithInt: 1], AVNumberOfChannelsKey,
[NSNumber numberWithInt: AVAudioQualityMax],AVEncoderAudioQualityKey,nil];
But not able to record with these. I searched a lot for this but wasn't able to get some relevant post. Some posts say that it is not possible.If its not possible then why so? Please answer.
The Problem is kAudioFormatMPEGLayer3
which is not supported by AVAudioRecorder
.
Alternatively you can use kAudioFormatAppleIMA4
for your recording purpose.
Finally you can write your own encoding logic to convert kAudioFormatAppleIMA4
in to MP3
Format.
The other supported encoding for Recording purpose are
kAudioFormatMPEG4AAC
kAudioFormatAppleLossless
kAudioFormatAppleIMA4
kAudioFormatiLBC
kAudioFormatULaw
kAudioFormatLinearPCM
For more info you can refer to this post of SO.