gpt4 book ai didi

Android OpenGL 视频捕获

转载 作者:行者123 更新时间:2023-12-04 23:04:50 25 4
gpt4 key购买 nike

有谁知道一些从 Android 设备上的 OpenGL 应用程序捕获视频到文件或流的方便方法?

例如,我们可以从 View 、opengl View 中捕获视频吗?

我刚刚发现以下内容:
1)我们可以使用 glReadPixels 获取帧。 (这一步没有视频?)
2) MediaRecorder 可以对视频进行编码,但如果可能的话,我们如何提供它的原始源?
3)ffmpeg(例如)或其他编码库的任何工作端口?有一些portng ffmpeg的教程可以在NDK中使用。那么,拥有原始帧和 ffmeg 的工作端口我们可以创建视频吗?这一步有什么问题吗?有人成功地移植了任何编码库吗?我需要 ffpmeg 的哪些组件?

首选格式是 mp4 或 flv。目标设备 > 2.1。 NDK没问题

最佳答案

不是一个简单的回答你的问题,但这里有一些建议至少可以让你朝着正确的方向前进。

要从通用 MediaPlayer 捕获视频帧(非 gl View ),您需要硬件支持,我的意思是设备驱动程序。如今,大多数硬件供应商都在其芯片中提供硬件加速器,例如 DSP,以加速视频和相机用例。除此之外,还有用户空间支持(媒体框架和应用程序)允许您访问设备驱动程序,因此媒体框架将是您完成视频捕获的最佳选择。我建议研究一些开源项目,例如 Android 中的 gst-plugins (http://gitorious.org/rowboat/external-gst-plugins-android/trees/master),这肯定会让您了解事物的叠加方式。

对于 gl-view 案例,您需要在 GL 驱动程序中提供某种纹理流式处理支持。目前还没有标准的方法来做到这一点(即,当前的驱动程序可能通过专有扩展来支持它)。使用 glReadPixels 捕获帧效率不高,因为涉及到刷新,这会损害您的帧速率。

关于Android OpenGL 视频捕获,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3731679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com