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

将特定应用程序的屏幕缓冲区传输到远程系统,并从中复制图像(在windows中),windows,networking,buffer,screen,video-capture,Windows,Networking,Buffer,Screen,Video Capture,我知道,有一些应用程序,比如steam,Xbox,可以将游戏视频流到网络上。我想要的是同样的东西,但我需要为开源目的制作自己的代码,这样我就可以在没有任何版权问题的情况下为不同的应用程序修改代码。我知道Winsock编程,可以传输示例视频mp4文件,但在一个系统上捕获显示并在某个远程系统上生成它,这是不同的,我想是非常复杂的。另外,流媒体需要以最小的延迟进行直播。我可以访问千兆以太网来解决fps速度慢的问题,但首先我需要发送接收一个样本缓冲区 如果有人告诉我怎么做,我想这是最接近你想要的。查看并

我知道,有一些应用程序,比如steam,Xbox,可以将游戏视频流到网络上。我想要的是同样的东西,但我需要为开源目的制作自己的代码,这样我就可以在没有任何版权问题的情况下为不同的应用程序修改代码。我知道Winsock编程,可以传输示例视频mp4文件,但在一个系统上捕获显示并在某个远程系统上生成它,这是不同的,我想是非常复杂的。另外,流媒体需要以最小的延迟进行直播。我可以访问千兆以太网来解决fps速度慢的问题,但首先我需要发送接收一个样本缓冲区 如果有人告诉我怎么做,我想这是最接近你想要的。查看并获取更多信息


另外,请看。

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

关于ffmpeg,它只捕获整个屏幕,但我想要的是只捕获特定应用程序显示的屏幕缓冲区。。。但是gstreamer的事,我想对我来说也行。我已经安装了gstreamer,但由于我是新来的,我不知道从哪里开始。我有微软Visual studio 2015。如果你能暗示一个知道这些事情的人,帮我开始