安卓:是否可以显示视频缩略图?

101

我用图书馆对话框创建了一个视频录制应用程序。这个库对话框显示录制视频列表,其中每个项目包括图标、视频标题、标签和位置信息,如下所示:

alt text

请问是否可以将图标替换为视频缩略图(单帧预览)?

谢谢!


有人回答了这个问题吗?[http://stackoverflow.com/questions/16190374/how-to-display-the-videos-url-in-thumbnails] - Make it Simple
12个回答

0
Glide有一个WiFi问题
我正在使用Glide加载视频的缩略图。视频可以是本地的,也可以是云端的,放在recyclerview中。有时候Glide无法显示视频的缩略图。如果我关闭WiFi,缩略图就会加载出来。为了解决这个问题,
我在recyclerview中创建了两个Glide对象。
Glide.with(binding.img.context)

在不同的视角下

Glide.with(binding.parent.context)

使用If(condition)可以加载本地视频的缩略图,而另一种方法则从https网址加载缩略图。
通过这种方式解决了Glide的问题。使用的版本是4.14.0,与4.16.0不兼容。

-4

这是用于实时视频缩略图的代码。

public class LoadVideoThumbnail extends AsyncTask<Object, Object, Bitmap>{

        @Override
        protected Bitmap doInBackground(Object... params) {try {

            String mMediaPath = "http://commonsware.com/misc/test2.3gp";
            Log.e("TEST Chirag","<< thumbnail doInBackground"+ mMediaPath);
            FileOutputStream out;
            File land=new File(Environment.getExternalStorageDirectory().getAbsoluteFile()
                            +"/portland.jpg");

                Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(mMediaPath, MediaStore.Video.Thumbnails.MICRO_KIND);
                        ByteArrayOutputStream stream = new ByteArrayOutputStream();
                        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, stream);
                        byte[] byteArray = stream.toByteArray();

                        out=new  FileOutputStream(land.getPath());
                        out.write(byteArray);
                        out.close();
                 return bitmap;

            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        return null;
            }
        @Override
        protected void onPostExecute(Bitmap result) {
            // TODO Auto-generated method stub
            super.onPostExecute(result);
            if(result != null){
                 ((ImageView)findViewById(R.id.imageView1)).setImageBitmap(result);
            }
            Log.e("TEST Chirag","====> End");
        }

    }

2
我在 Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(mMediaPath, MediaStore.Video.Thumbnails.MICRO_KIND); 得到了 null。请注意,所有参数都已设置。 - TooCool
1
在Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(mMediaPath, MediaStore.Video.Thumbnails.MICRO_KIND);处出现了空值。 - Prasad

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接