我正在尝试指定一个特定的缩略图来表示android目录中的媒体文件(mp4)。默认情况下,我相信android会使用第一帧。
我尝试过元数据/标签无济于事。
如果你有解决方案,请告诉我,我会永远感激你。谢谢!
答案 0 :(得分:0)
http://code.google.com/p/mp4parser/
这是我使用的代码的一部分:
String filepath = "/yourFilePathHere/yourFileNameHere.ext";
File sourceFile = new File ( filepath );
IsoBufferWrapper isoBufferWrapper = new IsoBufferWrapperImpl( sourceFile );
IsoFile isoFile = new IsoFile(isoBufferWrapper);
isoFile.parse();
AppleItemListBox appleItemListBox = (AppleItemListBox) IsoFileConvenienceHelper.get(isoFile, "moov/udta/meta/ilst");
AppleCoverBox coverBox = (AppleCoverBox) IsoFileConvenienceHelper.get (appleItemListBox, AppleCoverBox.TYPE);
List<Box> dataBoxes = coverBox.getBoxes();
byte[] coverBoxByte = null;
if (dataBoxes != null && dataBoxes.size() > 0) {
AppleDataBox dataBox = (AppleDataBox)dataBoxes.get(0);
coverBoxByte = dataBox.getContent();
}
Bitmap icon = null;
if (coverBoxByte != null){
icon = BitmapFactory.decodeByteArray(coverBoxByte, 0, coverBoxByte.length);
}