我正在尝试在iPhone上显示全屏视频,并用OpenGL ES视图覆盖它。因此,基本上,我希望视频在后台播放,同时在其顶部绘制OpenGL图形。
我如何做到这一点,甚至有可能吗?
谢谢你的帮助!
弗洛里安
最佳答案
要使用自定义叠加视图显示摄像机视频背景,可以使用UIImagePickerController的cameraOverlayView属性。 cameraOverlayView将显示在默认图像选择器界面的顶部。使用cameraViewTransform属性使摄像机预览全屏。
imagePickerController.cameraViewTransform =
CGAffineTransformMakeScale(1.0, 1.03);
要将UIView子类实现为支持OpenGL ES渲染的覆盖视图,请查看Apple的示例代码http://developer.apple.com/iphone/library/samplecode/GLGravity/Listings/Classes_GLGravityView_m.html
关键是使叠加视图透明。
overlayView.opaque = NO;
overlayView.alpha = 1.0;
overlayView.backgroundColor = [UIColor clearColor];
在OpenGL ES渲染代码中,请确保使用零alpha清除颜色。
glClearColor(0,0,0,0) ;