AVAudioPlayer не будет воспроизводить аудиофайл после AVAudioRecorder - PullRequest
0 голосов
/ 15 февраля 2010

Я создаю аудиофайл .caf с помощью AVAudioRecorder, и если я пытаюсь воспроизвести его с помощью AVAudioPlay, на iPhone не появляется звук (если воспроизведение в симуляторе работает нормально). Если я закрою свое приложение и снова открою файл, все будет в порядке. Кроме того, я не могу отрегулировать громкость телефона после записи, если я не закрою и снова не открою приложение. Есть идеи?

Ответы [ 2 ]

4 голосов
/ 02 декабря 2010

Столкнулся с той же проблемой. Решил проблему, установив категорию AVAudioSession в режим AVAudioSessionCategoryPlayback. Это мой рабочий код:

AVAudioSession *audioSession = [AVAudioSession sharedInstance];
audioSession.delegate = self;
[audioSession setCategory:AVAudioSessionCategoryPlayback error:NULL];
[audioSession setActive: YES error: nil];

Также убедитесь, что аудиозапись была успешно завершена с помощью:

   -(void) audioRecorderDidFinishRecording:(AVAudioRecorder *)recorder successfully:(BOOL)flag
{
    NSLog(@"Recording success:%@",flag ? @"YES" : @"NO");
}

И убедитесь, что вы добавили <AVAudioSessionDelegate,AVAudioRecorderDelegate,AVAudioPlayerDelegate>

в объявлении вашего интерфейса.

0 голосов
/ 03 мая 2010

У меня такая же проблема с файлом aac. Я использовал ima4 до этого работал отлично! Я думаю, разница в том, что aac - это аппаратное обеспечение, а программное обеспечение ima4 декодируется. Вы пытались повторно инициализировать проигрыватель, когда файл позади был перезаписан? Это сработало для меня!

Markus

...