我有一个正在播放视频的纹理视图。我需要对播放视频的帧进行截图。早些时候我正在使用一种方法
public Bitmap getFrameAsBitmap() {
Bitmap bmp = textureview.getBitmap();
Canvas canvas = new Canvas(bmp);
textureview.draw(canvas);
return bmp;
}
它在大多数设备上运行良好,但在三星 M 系列上我无法截屏。只有黑屏来了。然后我尝试了
public Bitmap getFrameAsBitmap() {
View view = textureview;
view.setDrawingCacheEnabled(true);
Bitmap bmp = Bitmap.createBitmap(view.getWidth(),
view.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bmp);
textureview.draw(canvas);
return bmp;
}
但是这种方法不会在任何手机上返回数据。有什么想法该怎么做?