В моем приложении пользователь воспроизводит звук, нажимая кнопку. Есть несколько кнопок, которыми можно пользоваться одновременно. Звуки воспроизводятся с использованием экземпляров AVAudioPlayer. Я хочу записать вывод этих экземпляров с помощью AVAudioRecorder. Я все это настроил, файл создается и записывается, но когда я его воспроизводю, он не воспроизводит никакого звука. Это просто файл без звука, равный длине записи. Кто-нибудь знает, есть ли параметр, который мне не хватает в AVAudioPlayer или AVAudioRecorder? Спасибо
Запись вывода AVAudioPlayer с помощью AVAudioRecorder
Ответы (4)
Невозможно записать выходные данные AVAudioPlayer как входные данные для AVAudioRecorder для записи. Вы можете использовать аудиобуфер для хранения воспроизводимых файлов и сохранения их в файл.
Наверное, было бы легче помочь, если бы мы увидели ваш код.
Вы также должны проверить следующую ссылку, чтобы узнать, правильно ли вы настроили AVAudioRecorder: Как записать звук на iPhone с помощью AVAudioRecorder?
Хотя эта ссылка показывает, как настроить запись с микрофона, она может быть вам полезна.
Столкнулся с той же проблемой. Решил проблему, установив категорию AVAudioSession в режим AVAudioSessionCategoryPlayback. Это мой рабочий код:
AVAudioSession *audioSession = [AVAudioSession sharedInstance];
audioSession.delegate = self;
[audioSession setCategory:AVAudioSessionCategoryPlayback error:nil];
[audioSession setActive: YES error: nil];
Также убедитесь, что аудиозапись успешно завершена, выполнив:
-(void) audioRecorderDidFinishRecording:(AVAudioRecorder *)recorder successfully:(BOOL)flag
{
NSLog(@"Recording success:%@",flag ? @"YES" : @"NO");
}
И убедитесь, что вы добавили <AVAudioSessionDelegate,AVAudioRecorderDelegate,AVAudioPlayerDelegate>
в объявлении вашего интерфейса.
Надеюсь, это поможет, по крайней мере, поискать что-нибудь еще.
У меня такая же проблема, я пытаюсь записать микс разных звуков, воспроизводимых в разное время, при воспроизведении основного трека, я обнаружил, что AVAudioRecorder записывает только с микрофона, поэтому он будет работать.
Я обнаружил, что мне еще нужно прочитать документ и протестировать его, это Audio Converter Services, я думаю, что это может сработать, но я только что прочитал несколько строк.
Еще раз извините, но вы неправильно смотрите, надеюсь, мой ответ поможет