【问题标题】:How to manage video frames in memory如何管理内存中的视频帧
【发布时间】:2013-07-19 12:25:34
【问题描述】:

我的应用正在使用 FFMPEG 抓取视频的所有帧。
我的问题是,我在哪里保存所有帧?
我已经尝试将帧转换为位图并保存到数组列表,但应用程序显示内存不足。
另外,当我将 IplImages 保存到arraylist(它运行)但占用超过 500 MB。
我使用了低质量的视频。那些高质量的也不能使用 IplImages 运行。

【问题讨论】:

  • 您知道 FFmpeg 的许可证吗?它是 GPL,这意味着如果您在您的应用程序中使用它,那么您的应用程序的许可证也必须是 GPL,因此 - 开源

标签: java android memory video frames


【解决方案1】:

您无法将所有这些帧加载到内存中,因为存在内存限制。要检查您可以谷歌 Android 堆大小的限制,每个设备都不同,但不是那么多。您必须逐帧处理它并将其保存在像 sdcard 这样的存储设备上。

【讨论】:

  • 但是如果app在sdcard上逐帧读取和保存,会不会太慢上传视频吧?
  • 但也许比让应用消耗大量内存要好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-03-29
  • 1970-01-01
  • 1970-01-01
  • 2021-10-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多