从Video.mp4创建的位图,想要再次显示与视频相同的位图

时间:2018-07-07 05:47:43

标签: android video android-bitmap multimedia

MediaMetadataRetriever mediaMetadataRetriever;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mediaMetadataRetriever = new MediaMetadataRetriever();

    try (FileInputStream is = new FileInputStream("/storage/sdcard1/video.mp4")) {
        FileDescriptor fd = is.getFD();
        mediaMetadataRetriever.setDataSource(fd, 0, 0x7ffffffffffffffL);
    }catch(IOException e){System.out.println("====>"+e);}

    for(int i =0 ; i < 99;i++) {
        Bitmap bitmap = mediaMetadataRetriever.getFrameAtTime(i*1000000);

           //Edit Something in Bitmap.

        ImageView image = (ImageView) findViewById(R.id.img);
        image.setImageBitmap(bitmap); //Trying to display bitmaps as video in imageview.
    }
}

}

在此代码中,我能够从视频中获取位图,并且使用ImageView,我试图再次以视频形式显示位图。 谁能指出这个问题。 或者任何人都可以建议相同的东西顺便说一下,我是Android编程的新手。

1 个答案:

答案 0 :(得分:0)

尝试

Glide.with(context)
            .load(currentFile.getAbsolutePath()) //  URI/path
            .into(image);

希望这对您有帮助