Robię wideo przechwytujące aplikację na iOS i chcę mieć możliwość nagrywania dźwięku z mikrofonu, pozwalając jednocześnie odtwarzać muzykę w tle. Mogę to wszystko zrobić, ale podkład dźwiękowy przeskakuje (pauza krótko) za każdym razem, gdy widok z kamerą wchodzi i wychodzi na pierwszy plan. Mam izolowane bakcyla do AVCaptureSession addInput
:AVCaptureSession addInput powodujący usterkę w tle audio
AVCaptureSession session = [[AVCaptureSession alloc] init];
session.automaticallyConfiguresApplicationAudioSession = NO;
AVCaptureDevice *audioDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeAudio];
AVCaptureDeviceInput *audioDeviceInput = [AVCaptureDeviceInput deviceInputWithDevice:audioDevice error:nil];
// this line causes the background music to skip
[session addInput:audioDeviceInput];
Jak mogę zapobiec dodając wejście mikrofonowe z wpływających na dźwięk tła?
FYI - w didFinishLaunchingWithOptions
ustawić Kategoria AVAudioSession:
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord
withOptions:AVAudioSessionCategoryOptionMixWithOthers | AVAudioSessionCategoryOptionDefaultToSpeaker
error:nil];