将特定应用程序的屏幕缓冲区传输到远程系统并从中再现图像(windows)

transmit screen buffer of a specific application to a remote system and reproduce image from that (in windows)

我知道,有一些应用程序可以将游戏视频流式传输到网络上,例如 Steam、Xbox。我想要的是同一件事,但我需要为此目的制作自己的代码(开源),以便我可以针对不同的应用程序对其进行修改而不会出现任何版权问题。我知道 Winsock 编程并且可以传输示例视频(mp4 文件)但是在一个系统上捕获显示并在某个远程系统上生成它是不同的并且复杂得多(我想)。另外,流媒体需要以最小的延迟进行直播。我可以访问千兆位以太网来解决 fps 缓慢的问题,但首先我需要传输接收样本缓冲区 如果有人请指导我如何去做

我想 gstreamer is the closest thing to what you want. Look and here 了解更多信息。

另外,看看ffmpeg

我找到的解决方案是OBS studio。它是开源的,允许我编辑源代码以满足我的需要。但是,我必须在客户端实现一个nginx-rtmp 服务器来接收视频。然后我使用 vlc 媒体播放器流式传输 rtmp 服务器接收到的视频。我安装了 Gtx 960m,所以我实现了硬件编码,允许我通过 100 Mbps 以太网电缆流式传输 720p @60 fps。当我在流式传输之前使用软件编码器(而不是硬件)时,结果非常糟糕。