我想建立一个应用程序,模拟飞利浦电视的环境光。为此,我有一个Arduino,它控制我的LED,并在串行端口上侦听命令以设置LED的颜色。
理论上,我希望我的应用程序在后台记录我的Android电视屏幕。这可以通过MediaProjection API实现。但据我所知,您只能在停止录制后才能获得视频文件。但我想处理每一帧,或者每n毫秒拍一张截图。
我的问题:您是否可以在录制时访问单个帧,或者是否可以使用MediaProjection API在后台每隔n秒截图一次。或者还有其他方法可以实现这一点吗?
经过进一步调查,我找到了解决方案。您可以在MediaProjection
上使用ImageReader
并实现其OnImageAvailable
回调—每次执行VSync时都会调用此回调。然后,您就可以从读取器中提取位图。