我正在使用JCODEC来制作我的屏幕活动视频。我不想使用Android NDK,因为我想在JAVA中使用它。我正在运行for循环来使用SequenceEncoder对图像进行编码。问题是循环运行时间太长而log cat会释放GC_FOR_ALLOC消息。对于甚至5次迭代,循环需要很多秒。所以我无法拍摄我的活动的正确视频。我试图在代码中进行更改,但它没有帮助。请帮我解决一下这个。如果可用,建议其他选项。提前谢谢。
File file = new File(Environment.getExternalStorageDirectory()+"/a.mp4");
SequenceEncoder encoder = new SequenceEncoder(file);
mview.setDrawingCacheEnabled(true);
// only 5 frames in total
for (int i = 1; i <= 5; i++) {
// getting bitmap from drawable path
mview.postInvalidate();
encoder.encodeNativeFrame(this.fromBitmap(mview.getDrawingCache()));
}
encoder.finish();
答案 0 :(得分:3)
你能看一下这个教程吗?通过使用FFMPEG,它可以工作。
https://github.com/vanevery/Android-MJPEG-Video-Capture-FFMPEG