是否可以将
Android中某些View中的所有操作记录为视频?也许使用C/C++或其他任何东西?
我知道有使用shell记录的方法,但需要root.没有它会更好.我们也将从SDK Version 16开始.
解决方法
您可以使用javacv库来组合从视图中获取的一组位图;
代码看起来像这样:
代码看起来像这样:
FFmpegFrameRecorder recorder = new FFmpegFrameRecorder("/sdcard/test.mp4",256,256); try { recorder.setVideoCodec(avcodec.AV_CODEC_ID_MPEG4); recorder.setFormat("mp4"); recorder.setFrameRate(30); recorder.setPixelFormat(avutil.PIX_FMT_YUV420P10); recorder.setVideoBitrate(1200); recorder.startUnsafe(); for (int i=0;i< 5;i++) { view.setDrawingCacheEnabled(true); Bitmap bitmap = Bitmap.createBitmap(v1.getDrawingCache()); view.setDrawingCacheEnabled(false); recorder.record(bitmap); } recorder.stop(); } catch (Exception e){ e.printStackTrace(); }
这里有一个关于如何记录的full example