2013-07-19 42 views
1

我的應用使用FFMPEG抓取視頻的所有幀。
我的問題是,我在哪裏保存所有的幀?
我已經試圖將幀轉換爲位圖並保存到一個ArrayList,但應用程序說內存不足。
此外,當我將IplImages保存到一個ArrayList(它運行),但需要超過500 MB。
我用了低質量的視頻。高品質的人不會與IplImages一起運行。如何管理內存中的視頻幀

+0

您是否知道FFmpeg的許可?這是GPL,這意味着如果你在你的應用中使用它,那麼你的應用的許可證也必須是GPL,因此 - 開源 – Nativ

回答

0

由於存在內存限制,您無法在內存中加載所有這些幀。要檢查限制,你可以谷歌Android堆大小,這是不同的每個設備,但它沒有那麼多。您必須逐幀處理它並將其保存在存儲設備上,如sdcard。

+0

但是,如果應用程序讀取並同時在SD卡上逐幀讀取,將會太慢只是爲了上傳視頻的權利? – user2270298

+0

但也許它比應用程序消耗大量ram更好。 – user2270298