SequenceEncoder encodeImage return 出错
SequenceEncoder encodeImage return an error
我正在用屏幕截图制作视频。我已经尝试聊天了。
在这里我初始化了我的编码器。
String filename = "video.mp4";
File file = new File(getFilesDir(), filename);
enc = new SequenceEncoder(file);
这得到一个屏幕截图。
public Bitmap getScreenShot() {
View screenView = findViewById(R.id.rootLayout);
screenView.setDrawingCacheEnabled(true);
//Bitmap bitmap = Bitmap.createBitmap(screenView.getDrawingCache());
Bitmap bitmap = screenView.getDrawingCache();
screenView.setDrawingCacheEnabled(false);
return bitmap;
}
这是我对图像进行编码的方式。它 returns 是一个例外。
enc.encodeImage(getScreenShot());
java.lang.NullPointerException: 尝试在空对象引用
上调用虚拟方法'int org.jcodec.common.model.Picture.getWidth()'
问题是我在错误的时间要求我的布局截图,所以 getScreenShot() returns 一个空位图。
我通过从 onWindowFocusChanged 而不是 onCreate 调用它来解决它。
我正在用屏幕截图制作视频。我已经尝试聊天了。
在这里我初始化了我的编码器。
String filename = "video.mp4";
File file = new File(getFilesDir(), filename);
enc = new SequenceEncoder(file);
这得到一个屏幕截图。
public Bitmap getScreenShot() {
View screenView = findViewById(R.id.rootLayout);
screenView.setDrawingCacheEnabled(true);
//Bitmap bitmap = Bitmap.createBitmap(screenView.getDrawingCache());
Bitmap bitmap = screenView.getDrawingCache();
screenView.setDrawingCacheEnabled(false);
return bitmap;
}
这是我对图像进行编码的方式。它 returns 是一个例外。
enc.encodeImage(getScreenShot());
java.lang.NullPointerException: 尝试在空对象引用
上调用虚拟方法'int org.jcodec.common.model.Picture.getWidth()'问题是我在错误的时间要求我的布局截图,所以 getScreenShot() returns 一个空位图。
我通过从 onWindowFocusChanged 而不是 onCreate 调用它来解决它。