AndroidScreenCaster 是适用于 Android 设备的实时屏幕投射解决方案,通过 TCP 和 UDP 进行高效的 H.264 和 WebM 编码。体验低延迟流式传输到您的浏览器或服务器的移动游戏、演示或任何其他需要实时屏幕镜像的应用程序。
作为测试自动化团队的领导者,我们需要将实时 Android 屏幕镜像到 Web 浏览器以进行手机游戏的功能测试。我们的第一种方法使用 MJPEG,效率低、速度慢,并且生成的文件很大。第二种方法使用 H.264 和 VP8 编解码器,取得了成功,但缺乏现成的代码示例。
该项目旨在节省您的时间并让您清楚地了解 Android 上的实时屏幕投射,并具有高效的媒体编码和低延迟。
运行以下命令启动 FFplay:
ffplay -framerate 60 -i tcp:// < your server ip here > :49152 ? listen
ffplay -framerate 60 -i tcp://<your server ip here>:49152?listen
ffplay -i tcp://<your server ip here>:49152?listen
ffplay -framerate 60 -i udp://@:49152
ffplay -i udp://@:49152
ffmpeg -i udp://@:49152 -framerate 60 -codec:v libx264 -profile:v baseline -preset medium -b:v 250k -maxrate 250k -bufsize 500k -vf scale=-1:360 -an -threads 0 output.mp4
ffmpeg -i output.mp4 -vf "setpts=(1/2)*PTS" fast_output.mp4
ffmpeg -i udp://@:49152 -c:v libvpx -b:v 1M -c:a libvorbis output.webm
该项目根据 MIT 许可证条款获得许可。