我正在研究从网络浏览器远程控制 android 的东西。canvas 或 flash 之类的东西会绘制 android 设备的屏幕,我希望它非常流畅。
据我所知,我们可以使用帧缓冲区捕获 android 屏幕。有很多关于这个的文章。但是,fps非常多,最多4~5 fbs。有什么方法可以改善吗?
ffmpeg之类的东西会有帮助吗?</p>
我正在研究从网络浏览器远程控制 android 的东西。canvas 或 flash 之类的东西会绘制 android 设备的屏幕,我希望它非常流畅。
据我所知,我们可以使用帧缓冲区捕获 android 屏幕。有很多关于这个的文章。但是,fps非常多,最多4~5 fbs。有什么方法可以改善吗?
ffmpeg之类的东西会有帮助吗?</p>
我确实认为你需要编写一个虚拟驱动程序(.so)并安装它,所有执行此操作的应用程序(如“droid VNC 服务器”)都需要 root 访问级别。
您是否执行了基于 ARM NEON 的优化?它应该超过 4~5 fps。我正在做一个显示记录器应用程序,可以轻松做到 25fps。但是,它不是远程处理,而是将捕获的视频保存到本地存储中。
对于类似VNC的解决方案,关键是不要循环,捕获帧,它应该只在视频缓冲区更新时才这样做。
您还可以测试我们的 vnc 服务器是否可以在您的设备上运行。VMLite VNC Server是第一个不需要root的vnc服务器,但是需要用USB连接启动服务器。
https://play.google.com/store/apps/details?id=com.vmlite.vncserver
您将永远无法实时操作它。总会有一些延迟。这是由于许多因素,如互联网连接、设备硬件速度、屏幕捕获延迟等。全球有几家公司成功地做到了这一点,但并非没有延迟。