AVCaptureVideoPreviewLayer
을 사용하여 라이브 비디오를 전달하고 실시간으로 openGL
쉐이더를 적용합니다. 전면 카메라 사용에 대한 비디오는 쉐이더를 적용하기 전에 I는 미 미러를하고자 미러링된다. AVCaptureVideoPreviewLayer 전면 카메라가 OpenGL 셰이더로 전달되기 전에 픽셀 버퍼를 뒤집습니다.
사람이 도와 줄 수
?추가 : 전면 카메라로 전환을위한 코드 : 이미 미리 층이있는 경우
-(void)showFrontCamera{
NSLog(@"inside showFrontCamera");
[captureSession removeInput:videoInput];
// Grab the front-facing camera
AVCaptureDevice *backFacingCamera = nil;
NSArray *devices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];
for (AVCaptureDevice *device in devices) {
if ([device position] == AVCaptureDevicePositionFront) {
backFacingCamera = device;
}
}
// Add the video input
NSError *error = nil;
videoInput = [[[AVCaptureDeviceInput alloc] initWithDevice:backFacingCamera error:&error] autorelease];
if ([captureSession canAddInput:videoInput]) {
[captureSession addInput:videoInput];
}
}
당신 같은 더 많은 정보를 제공 할 수 있습니다, 카메라를 전환하는 코드 스 니펫? 후방 카메라로 다시 전환하면 어떻게됩니까? 여전히 거울입니까? –
안녕하세요, Fahri 님, 앞면 카메라로 전환하는 코드를 추가했습니다. 문제는 프론트 카메라의 비디오가 미러링되어 인물 사진 모드에 적합하지만 카메라를 돌릴 때 비디오가 뒤집어지고 거꾸로됩니다. 예. 사람의 얼굴이 180 *만큼 회전합니다. –
이전의 코멘트에서 카메라를 돌리면 가로 모드로 바뀌는 것을 의미합니다. –