我一直在尝试从Android模拟器捕获屏幕并将其记录到.mp4文件中。我采用了创建虚拟显示器并将帧路由到编码器,复用视频通道和写入外部存储器的标准方法。但是,在播放时,输出.mp4文件只是一个空白屏幕。在设备上运行时,相同的代码可以正常工作。
一个观察结果是来自BufferInfo.size
的{{1}}始终具有13或2718的常数值,这清楚地表明onOutputBufferAvailable()
编码器存在问题。在配置编码器时我应该更改一些参数吗?
另一个观察来自Logcat,它告诉我在模拟器中运行时使用MediaCodec
,这表示使用了某些软件编码,但仍不确定为什么这不起作用。