如何在Android中以编程方式获取视频文件的持续时间和分辨率?
我希望获得视频文件(.mp4)的持续时间和分辨率,如何在Android中以编程方式实现这一点?我的版本是21 顺便说一句,我可以使用以下代码获得视频的文件大小如何在Android中以编程方式获取视频文件的持续时间和分辨率?,android,Android,我希望获得视频文件(.mp4)的持续时间和分辨率,如何在Android中以编程方式实现这一点?我的版本是21 顺便说一句,我可以使用以下代码获得视频的文件大小 String recVideoPath = Environment.getExternalStorageDirectory() + videoRecordedFileName; File file = new File(recVideoPath); long fileVideo = file.length(); 谢谢 要获取持续时间和
String recVideoPath = Environment.getExternalStorageDirectory() + videoRecordedFileName;
File file = new File(recVideoPath);
long fileVideo = file.length();
谢谢 要获取持续时间和分辨率,可以使用MediaMetadataRetriever如下:
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
retriever.setDataSource(uriOfFile);
long duration = Long.parseLong(retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION))
int width = Integer.valueOf(retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_VIDEO_WIDTH));
int height = Integer.valueOf(retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_VIDEO_HEIGHT));
retriever.release();
uriOfFile是一个字符串,带有指向mp4的url。谢谢!mp应该释放,否则将发生错误。所以我添加了mp.release()如何从uri获取UrioFile?