Я разрабатываю iPad-приложение с несколькими AVAudioPlayer и одним AVAudioRecorder. Идея состоит в том, чтобы воспроизвести звук главного AvAudioPlayer, как фоновая музыка, и прикоснуться к различным кнопкам, воспроизводить звук других AVAudioPlayers, чтобы смешиваться с фоновой музыкой. Смешанная музыка будет записана AVAudioRecorder.Игнорировать вход микрофона с AVAudioRecorder и AVAudioSessionCategoryPlayAndRecord
Для этого я реализовал и AVAudioSession с категорией AVAudioSessionCategoryPlayAndRecord создавать и объект AVAudioRecorder с этой настройкой:
NSDictionary *recordSetting = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInt:kAudioFormatAppleIMA4], AVFormatIDKey,
[NSNumber numberWithInt:AVAudioQualityHigh], AVEncoderAudioQualityKey,
[NSNumber numberWithInt:16], AVEncoderBitRateKey,
[NSNumber numberWithInt: 2], AVNumberOfChannelsKey,
[NSNumber numberWithFloat:44100.0], AVSampleRateKey,
nil];
Все работает отлично, но вход микрофона он записывается также, и это не хорошо для меня.
Вопрос: как я могу игнорировать/заменять/исключать вход микрофона в процессе записи?
Я долго искал Google и искал в документации Apple для категорий и режимов AVAudioSession, настроек AVAudioRecorder и ничего не работает для меня.
Я также ищу микрофон без звука, но я читал, что это невозможно на устройствах iOS.
Заранее благодарим за вашу помощь и извините за ошибки, написанные на английском языке.
hmm, AVAudioSessionCategoryPlayAndRecord для, если вы действительно хотите записать с микрофона. Если вы на самом деле просто хотите смешивать различные источники и сохранять результат в файле, вам нечего останавливать. Это не считается записью. – hooleyhoop