【问题标题】:OpenGL Layer on top of Video on iPhone?iPhone上视频顶部的OpenGL层?
【发布时间】:2009-07-30 05:48:26
【问题描述】:

我正在尝试在 iPhone 上显示全屏视频并用 OpenGL ES 视图覆盖它。所以基本上,我希望在后台播放视频,同时在其上绘制 OpenGL 图形。

我如何做到这一点,甚至有可能吗?

感谢您的帮助!

弗洛里安

【问题讨论】:

    标签: iphone video opengl-es background overlay


    【解决方案1】:

    要使用自定义叠加视图显示相机视频背景,您可以使用 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) ;
    

    【讨论】:

      【解决方案2】:

      从少量信息泄漏看来,您想要的功能将成为 OS 3.1 的一部分,允许支持增强现实,请参阅AppleInsider 上的这篇文章。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-11-26
        • 1970-01-01
        • 2023-03-22
        • 2018-11-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多