iPhoneのフロントカメラからビデオを録画し、その間にオーディオファイルを同時に再生する必要があるiPhoneアプリを開発しています。ビデオの録画には AVCamCaptureManager を使用しました。次のように、バックグラウンドでdispatch_queueを使用してビデオを録画しています:
// ------ This will start recording in Background --------
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
[self startRecordingInBackground];
});
オーディオファイルが再生されるまでは正常に動作します。
// ----- Playing Audio File ---------
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Start_b4_counting_down" ofType:@"mp3" inDirectory:Nil];
NSLog(@"filePath %@", filePath);
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: filePath];
self.theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:NULL];
self.theAudio.volume = 10.0;
self.theAudio.delegate = self;
[self.theAudio prepareToPlay];
[self.theAudio play];
オーディオ ファイルが再生されるとすぐにビデオ録画が停止し、再開されません。