ビデオからすべてのフレームを抽出しようとしています。
次のコードで、ビデオの最初の 30 フレームを取得したいのですが、最初のフレームしか 30 回取得しませんでした。
private ArrayList<Bitmap> getFrames(String path) {
try {
ArrayList<Bitmap> bArray = new ArrayList<Bitmap>();
bArray.clear();
MediaMetadataRetriever mRetriever = new MediaMetadataRetriever();
mRetriever.setDataSource("/sdcard/myvideo.mp4");
for (int i = 0; i < 30; i++) {
bArray.add(mRetriever.getFrameAtTime(1000*i,
MediaMetadataRetriever.OPTION_CLOSEST_SYNC));
}
return bArray;
} catch (Exception e) { return null; }
}
では、ビデオからすべてのフレームを取得するにはどうすればよいですか?