Android ThumbnailUtils.CreateVideoThumbnails在捕获新视频时返回NULL

Android ThumbnailUtils.CreateVideoThumbnails在捕获新视频时返回NULL,android,video,Android,Video,我正在尝试从视频创建缩略图。我使用以下行: Bitmap thumb = ThumbnailUtils.createVideoThumbnail(selectedVideoPath, MediaStore.Images.Thumbnails.MICRO_KIND); 当我从多媒体资料中选择一个现有视频时效果很好,但当录制新视频并尝试获取缩略图时返回NULL,尽管路径有效(/storage/emulated/0/airmagepicker/1394007123308.3gp)。 我在HTC On

我正在尝试从视频创建缩略图。我使用以下行:

Bitmap thumb = ThumbnailUtils.createVideoThumbnail(selectedVideoPath, MediaStore.Images.Thumbnails.MICRO_KIND);
当我从多媒体资料中选择一个现有视频时效果很好,但当录制新视频并尝试获取缩略图时返回NULL,尽管路径有效
(/storage/emulated/0/airmagepicker/1394007123308.3gp)。

我在HTC One安卓4.2.2上


谢谢

我也遇到了同样的问题,并注意到在拍摄视频和创建位图之间存在延迟时,它就起作用了。一个对我有效的解决方法是,在繁忙的等待状态下重试创建位图,直到它不为null(需要几秒钟)。这显然不是一个干净的解决方案,但似乎起到了作用。 使用示例(在c#xamarin android中)

试试看{
位图=空;
对于(int time=0;time<6000;time+=timeInterval){
位图=ThumbnailUtils.CreateVideoThumbnail(videoFile.Path,ThumbnailKind.MiniKind);
if(位图!=null)
打破
等待任务。延迟(时间间隔);
}
返回位图;
我希望有帮助

try {
                Bitmap bitmap = null;
                for (int time = 0; time < 6000; time += timeInterval) {
                    bitmap = ThumbnailUtils.CreateVideoThumbnail (videoFile.Path, ThumbnailKind.MiniKind);
                    if (bitmap != null)
                        break;
                    await Task.Delay (timeInterval);
                }


          return bitmap;