【发布时间】:2013-08-12 00:49:13
【问题描述】:
在 C++ 中,在计算机之间共享屏幕的最快方式是什么,例如在 Skype 或 Google Plus 中?目前我正在截屏,使用 GDI+ 将其转换为低质量的 JPG,然后将其发送到远程计算机,但虽然可以,但速度不是很快(通过 localhost 为 7 FPS)。
【问题讨论】:
标签: c++ windows sockets video screen
在 C++ 中,在计算机之间共享屏幕的最快方式是什么,例如在 Skype 或 Google Plus 中?目前我正在截屏,使用 GDI+ 将其转换为低质量的 JPG,然后将其发送到远程计算机,但虽然可以,但速度不是很快(通过 localhost 为 7 FPS)。
【问题讨论】:
标签: c++ windows sockets video screen
我无法评论:( 但有些事情需要考虑。
哪个操作花费的时间最多?我怀疑这将是由于 localhost xmission 的捕获 - 但它真的可以是任何东西。基准测试。
发送方在等待接收方显示器时是否“阻止”下一代帧?如果是这样,那么它可能会增加一个隐含的瓶颈。发送者可能希望继续发送帧,除非接收者请求限制。
如果带宽是个问题,那么只发送部分帧或增量帧会怎样?尽管 localhost 不应该是带宽问题,但我相当肯定这是在更高级的客户端中完成的。
考虑查看一些 [开源] VNC 客户端以了解它们的工作方式。它不一定与“Skype”相同,但它应该为屏幕共享程序提供洞察力。
【讨论】: