美文网首页
如何获取视频的第一帧,并显示在ImageView上

如何获取视频的第一帧,并显示在ImageView上

作者: Lost_Robot | 来源:发表于2017-07-06 15:10 被阅读201次

需求:
app需要上传视频的功能,当选择本地视频后,之前的Image显示视频的第一帧,表示选择的视频成功。

上传之前截图.png

点击图片进入选择本地视频页面:

                val intent = Intent()
                intent.type = "video/*"
                intent.action = Intent.ACTION_GET_CONTENT
                intent.addCategory(Intent.CATEGORY_OPENABLE)
                startActivityForResult(intent, TAKE_VIDO_LOCAL)

处理返回的数据:

 override fun onActivityResult(requestCode: Int, resultCode: Int, resultData: Intent?) {
        super.onActivityResult(requestCode, resultCode, resultData)

        when (requestCode) {
           TAKE_VIDO_LOCAL -> {
                mPopWindow!!.dismiss()
                val uri = resultData!!.getData()
                val media = MediaMetadataRetriever()
                media.setDataSource(context,uri)
               val bitmap = media.getFrameAtTime()

                mUploading_void_iv!!.setImageBitmap(bitmap)

            }
         }
    }

上传视频和图片之后的截图.png
//java imageView 显示视频的第一帧
String path  = Environment.getExternalStorageDirectory().getPath();
MediaMetadataRetriever media = new MediaMetadataRetriever();
media.setDataSource(path+"/123.rmvb");
Bitmap bitmap = media.getFrameAtTime();
image = (ImageView)this.findViewById(R.id.imageView1);
image.setImageBitmap(bitmap);

相关文章

网友评论

      本文标题:如何获取视频的第一帧,并显示在ImageView上

      本文链接:https://www.haomeiwen.com/subject/hpvhhxtx.html