c++ - 在同一连接或拆分连接上流式传输视频和命令?

标签 c++ tcp remote-access libx264

背景

我正在编写一个客户端/服务器应用程序,我将把它安装在我办公室的每台机器上(大约 30 - 35 台机器)。我目前有客户端连接到服务器,它能够发送鼠标移动、鼠标点击、击键和执行某些命令。下一步是流回屏幕的视频输出,我正在使用来自 Fastest method of screen capturing 的 GDI 方法。捕获整个屏幕并将使用 x264 编码器压缩帧并将它们传输回客户端,然后客户端将解码并显示流。

问题

我是否最好(通过减少延迟,确保所有命令都尽可能快地传送,并且流式传输尽可能实时)我沿着我为命令建立的同一连接传回,或者,我应该在同一端口或不同端口上建立单独的连接以流回视频?

附言

我知道 VNC、RD 和 TeamViewer 等其他东西已经存在并且已经在做这类事情,但是这些都不支持我们在这个系统中所需的所有要求。

最佳答案

对 a/v 和命令使用拆分连接,其他人这样做是为了减少发送/接收命令时的延迟,以确保所有命令得到及时处理。

关于c++ - 在同一连接或拆分连接上流式传输视频和命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15052919/

相关文章:

c++ - 这种意外的 std::vector 行为是什么?

c++ - 什么是 C++ 中用于分离 header /源的模板特化的可靠方法

spring-mvc - 将 Spring MVC 与 Spring Integration 集成

ssh - Clojure - 如何远程连接到正在运行的 REPL 进程

c++ - 如何使用 boost.format 自己输出百分号?

c++ - 如何在 wxListCtrl (wxwidgets) 中上下移动一个项目

MYSQL远程连接需要SSL

sql-server - mssql 远程应用程序 VS 基于 Web 的应用程序

java - Spring Integration TCP 连接在多线程负载/压力测试下被拒绝

c++ - 使用 c/c++ 将数据发送到设备/dev/eth0(或类似)的最低级别方法是什么