【问题标题】:Record video and audio from a GLSurfaceView and export it to .mp4从 GLSurfaceView 录制视频和音频并将其导出为 .mp4
【发布时间】:2015-04-30 02:56:38
【问题描述】:

我是 OpenGL 的新手。 我想从 GLSurfaceView 录制视频和音频并将其导出为 .mp4(或其他格式)。 我有一个实现RendererGlsurfaceView

我尝试在bigflake.com 中使用流行示例,例如EncodeAndMuxTest.javagoogle/grafika 中的RecordFBOActivity.java,但没有成功,因为我不知道如何实现它。

是否有记录 GLSurfaceView 的示例或“操作方法”?

【问题讨论】:

    标签: android android-mediacodec mediamuxer


    【解决方案1】:

    您可以尝试使用INDE Media for Mobile:https://software.intel.com/en-us/articles/intel-inde-media-pack-for-android-tutorialsGLCapturer 类,它允许在几行代码中进行opengl捕获,示例在这里:

    https://github.com/INDExOS/media-for-mobile/blob/master/samples/src/main/java/org/m4m/samples/GameRenderer.java

    synchronized (videoCapture) {
        if (videoCapture.beginCaptureFrame()) {
            ...
    
            renderScene();
    
            videoCapture.endCaptureFrame();
        }
    }
    

    【讨论】:

    【解决方案2】:

    你可以试试Android Breakout patch。它将游戏录制添加到Android Breakout

    使用 GLSurfaceView 而不是 SurfaceView 时的主要区别在于 GLSurfaceView 想要管理自己的 EGL 上下文。这需要您创建与 GLSurfaceView 的上下文共享数据的第二个上下文。管理起来有点尴尬,但可行。

    您可能需要考虑从 GLSurfaceView 切换到 SurfaceView。这需要您进行自己的 EGL 设置和线程处理,但您可以在 Grafika 中找到这两者的示例。设置东西需要做更多的工作,但它使视频录制等花哨的东西变得更容易。当然,如果您使用的是需要 GLSurfaceView 的游戏或图形引擎,那将不是一个选择。

    【讨论】:

    • 感谢法登!我会试一试,让你知道!
    猜你喜欢
    • 1970-01-01
    • 2014-08-02
    • 2020-05-30
    • 2012-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多