0

我面临一个编程问题

我正在尝试从与从其他层检索到的其他帧(如位图/GLsurface)合并的相机帧中编码视频

当我使用 320X240 时。我可以以精细的 FPS(~10)实时合并,但是当我尝试增加像素大小时,我得到的 FPS 小于 6。
这是明智的,因为我的合并功能取决于像素大小。

所以我要问的是,如何存储帧数组以供后处理(编码)?

我不知道如何存储这个大数组。

只是一个快速的计算:
如果我需要每秒存储 10 帧
并且每帧是 960X720 像素
,所以我需要存储 40 秒的视频:40X10X960X720X(3/2-android 因子)=~ 276 MB

堆太多了

任何想法?

4

1 回答 1

0

您可以简单地将相机输入记录为视频 - 即使在 720p 分辨率下,40 秒也不会是一个大文件 - 然后离线您可以再次解码、合并和编码。最大的技巧是 MediaRecorder 将使用硬件,因此编码速度非常快。压缩后的视频可以实时写入sdcard或本地文件系统,读取解码也不成问题。

于 2013-11-18T14:58:31.227 回答