2014-07-13 47 views
0

我有一種情況,我想存儲最後緩衝的媒體時,從android媒體播放器流任何視頻文件,以便當一個嘗試重播它不會重新緩衝一遍。Android:請建議我如何暫時保存媒體播放器緩衝區的數據的有效方法

如何獲取存儲在媒體播放器緩衝區中的數據,以及如果我碰巧存儲數據,那麼當我到達最後我將需要有啓動數據的緩衝區,如果文件是較大的尺寸,這將使它更復雜?

請建議我有效的方法來暫時保存媒體播放器緩衝區的數據。

回答

0

那麼,如果你的目標是在相對確切的時間開始播放媒體文件,那麼我做了一件黑客事情。

將您的音量設置爲零。

開始播放。

讓一個循環喚醒並定期查看位置。

如果position> 0,則文件已經緩存並啓動。

暫停。

將位置設回0.

重置音量。

在我的測試中,當您再次播放時,文件將被緩衝在內存中。你需要自己嘗試一下。

至於保存自己的文件數據在內存中,現在你正在談論較低級別的API。對於音頻,像Opensl。對於視頻,MediaCodec的東西(4.1 +)。對於兩個人來說,你都有很多閱讀。我寫了一個本地音頻/視頻編碼器,但那是一場噩夢。

+0

謝謝你的答案堆 我會嘗試,然後更新是否爲我工作或不... – Endeavour

相關問題