从 Json 服务获取视频的缩略图
To get a thumbnail for a Video from Json Service
我正在尝试显示来自 Json 服务的视频的缩略图。我正在使用以下代码来实现它。
Bitmap bitmap = ThumbnailUtils.createVideoThumbnail( videoUri,
MediaStore.Images.Thumbnails.MINI_KIND);
holder.attachedVideo_imageView.setImageBitmap(bitmap);
但是缩略图好像没有显示出来。请帮我创建一个缩略图并将其显示在我的 ListView 中。
我还使用 imageview 来显示缩略图。
提前致谢
我认为您不能使用上面的代码从远程获取视频缩略图 URL。试试下面的代码:
public static Bitmap retriveVideoFrameFromVideo(String videoPath)
throws Throwable
{
Bitmap bitmap = null;
MediaMetadataRetriever mediaMetadataRetriever = null;
try
{
mediaMetadataRetriever = new MediaMetadataRetriever();
if (Build.VERSION.SDK_INT >= 14)
mediaMetadataRetriever.setDataSource(videoPath, new HashMap<String, String>());
else
mediaMetadataRetriever.setDataSource(videoPath);
// mediaMetadataRetriever.setDataSource(videoPath);
bitmap = mediaMetadataRetriever.getFrameAtTime();
}
catch (Exception e)
{
e.printStackTrace();
throw new Throwable(
"Exception in retriveVideoFrameFromVideo(String videoPath)"
+ e.getMessage());
}
finally
{
if (mediaMetadataRetriever != null)
{
mediaMetadataRetriever.release();
}
}
return bitmap;
}
我正在尝试显示来自 Json 服务的视频的缩略图。我正在使用以下代码来实现它。
Bitmap bitmap = ThumbnailUtils.createVideoThumbnail( videoUri,
MediaStore.Images.Thumbnails.MINI_KIND);
holder.attachedVideo_imageView.setImageBitmap(bitmap);
但是缩略图好像没有显示出来。请帮我创建一个缩略图并将其显示在我的 ListView 中。 我还使用 imageview 来显示缩略图。
提前致谢
我认为您不能使用上面的代码从远程获取视频缩略图 URL。试试下面的代码:
public static Bitmap retriveVideoFrameFromVideo(String videoPath)
throws Throwable
{
Bitmap bitmap = null;
MediaMetadataRetriever mediaMetadataRetriever = null;
try
{
mediaMetadataRetriever = new MediaMetadataRetriever();
if (Build.VERSION.SDK_INT >= 14)
mediaMetadataRetriever.setDataSource(videoPath, new HashMap<String, String>());
else
mediaMetadataRetriever.setDataSource(videoPath);
// mediaMetadataRetriever.setDataSource(videoPath);
bitmap = mediaMetadataRetriever.getFrameAtTime();
}
catch (Exception e)
{
e.printStackTrace();
throw new Throwable(
"Exception in retriveVideoFrameFromVideo(String videoPath)"
+ e.getMessage());
}
finally
{
if (mediaMetadataRetriever != null)
{
mediaMetadataRetriever.release();
}
}
return bitmap;
}