0
我想知道是否可以重用單個MediaMetadataRetriever
對象來獲取來自多個文件的元數據?MediaMetadataRetriever的重用 - 有可能嗎?
如果是 - 我應該在每個文件後面調用release()
方法,還是隻在所有文件被處理後設置不同的數據源並調用release()
?
API refererence不準確有關:/
謝謝:)
我想知道是否可以重用單個MediaMetadataRetriever
對象來獲取來自多個文件的元數據?MediaMetadataRetriever的重用 - 有可能嗎?
如果是 - 我應該在每個文件後面調用release()
方法,還是隻在所有文件被處理後設置不同的數據源並調用release()
?
API refererence不準確有關:/
謝謝:)
是的,你可以重用的對象。你的代碼看起來像這樣:
MediaMetadataRetriever mmr = new MediaMetadataRetriever();
for (int i = 0; i < files.length; i++) {
mmr.setDataSource(files[i]);
mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ALBUM);
mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ARTIST);
Bitmap b = mmr.getFrameAtTime(2000000, MediaMetadataRetriever.OPTION_CLOSEST); // frame at 2 seconds
byte [] artwork = mmr.getEmbeddedPicture();
}
mmr.release(); // all done, release the object
謝謝,我已經知道了昨天,但你已經安慰我了;) – Fester