使用元数据检索器从视频中获取位图在 Android 10 中需要太多时间,但在 Android 10 以下运行良好。仅在 Android 10 中面临此问题。
getFrameAtTime
并且getScaledFrameAtTime
两者在 Android 10 中都很慢。
在这里,我添加了用于获取位图形式视频的代码
Bitmap bitmap = null;
MediaMetadataRetriever mediaMetadataRetriever = new MediaMetadataRetriever();
mediaMetadataRetriever.setDataSource(context, videoUri);
bitmap = mediaMetadataRetriever.getScaledFrameAtTime( ONE_SECOND_IN_MILLI, MediaMetadataRetriever.OPTION_CLOSEST_SYNC,THUMB_WIDTH,THUMB_HEIGHT);
构建 gradle sdk 版本
compileSdkVersion = 28
def nativeBuildSystem = 'none'
defaultConfig {
applicationId "com.example.example"
minSdkVersion 26
targetSdkVersion 28
...
}