【发布时间】:2014-06-02 13:20:39
【问题描述】:
我正在使用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();
【问题讨论】:
-
这个问题你解决了吗?
-
不,我做不到。尝试使用 ndk 使用 ffmpeg。我不知道该怎么做。如果你这样做,请告诉我。
-
我正在使用 FFMpeg 并尝试了它的工作原理,但它也非常复杂