2011-02-02 12 views
7

Używam następujących ustawień do nagrywania pliku audio w formacie .mp3 przy użyciu AVAudioRecorder.Jak nagrać plik audio w formacie .mp3?

NSDictionary *recordSettings = [[NSDictionary alloc] initWithObjectsAndKeys: 

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

Ale nie można ich nagrać. Szukałem za dużo, ale nie byłem w stanie uzyskać odpowiedniego posta. Niektóre posty mówią, że nie jest to możliwe. Jeśli nie jest to możliwe, to dlaczego? Proszę odpowiedzieć.

Odpowiedz

12

Problem to kAudioFormatMPEGLayer3, który nie jest obsługiwany przez AVAudioRecorder.

Alternatywnie można użyć kAudioFormatAppleIMA4 do celów nagrywania.

Na koniec możesz napisać własną logikę kodowania, aby przekonwertować format kAudioFormatAppleIMA4 na format MP3.

Drugi obsługiwane kodowanie dla celów nagrywania są

kAudioFormatMPEG4AAC 
kAudioFormatAppleLossless 
kAudioFormatAppleIMA4 
kAudioFormatiLBC 
kAudioFormatULaw 
kAudioFormatLinearPCM 

Więcej informacji można odnosić do this stanowisko SO.

+2

Jakie logiki kodowania muszę napisać do konwersji na pliki .mp3. Mam na myśli, które klasy mogę użyć do tego? – iPhoneDev

+0

Nigdy nie próbuję tego. Więc możesz odnieść się do tego posta http://stackoverflow.com/questions/1005598/looking-for-a-way-to-encode-mp3-on-iphone – raaz

Powiązane problemy