我尝试创建应用程序,在此可以在录制过程中从设备上的不同相机录制视频。例如, 。用户按下前面摄像头的“开始录像”按钮,5秒钟录像后,按下“切换摄像头”按钮,应用程序将视频源从前置摄像头改为后置摄像头,并继续录像。 对于相机交换台我用下面的代码:开关相机后音频/视频不同步
NSError *error;
AVCaptureDeviceInput *newVideoInput;
AVCaptureDevicePosition currentCameraPosition = [[videoInput device] position];
if (currentCameraPosition == AVCaptureDevicePositionBack)
{
currentCameraPosition = AVCaptureDevicePositionFront;
}
else
{
currentCameraPosition = AVCaptureDevicePositionBack;
}
AVCaptureDevice *backFacingCamera = nil;
NSArray *devices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
for (AVCaptureDevice *device in devices)
{
if ([device position] == currentCameraPosition)
{
backFacingCamera = device;
}
}
newVideoInput = [[AVCaptureDeviceInput alloc] initWithDevice:backFacingCamera error:&error];
if (newVideoInput != nil)
{
[_captureSession beginConfiguration];
[_captureSession removeInput:videoInput];
if ([_captureSession canAddInput:newVideoInput])
{
[_captureSession addInput:newVideoInput];
videoInput = newVideoInput;
}
else
{
[_captureSession addInput:videoInput];
}
//captureSession.sessionPreset = oriPreset;
[_captureSession commitConfiguration];
}
_inputCamera = backFacingCamera;
这种器件的应用改变视频SOURSE后,继续写作,但...音频/视频不同步...... 可有人hehp我解决这个问题?
谢谢。
有同样的问题。 – Liron