具有不同采样率和数据类型的流式数据

网络工程 tcp UDP 流媒体
2022-03-06 07:41:19

我想构建一个服务器/客户端应用程序,其中智能手机将实时数据从设备流式传输到固定计算机。它们通过 WiFi 直接连接。

流式数据应包括

  • 音频数据(至少 44.1 kHz,16 位)
  • 视频数据(不需要高质量,例如 640 x 320 像素或类似的),以及
  • 来自不同的传感器(例如加速度计、GPS、陀螺仪等)

您可能会注意到,所有数据源的采样率(音频为 44.1 kHz,加速度计为 100 Hz,GPS 变量(基于事件))和数据量(具有大量数据的视频与 GPS只有一些字节)。

是通过一个 TCP 连接隧道传输数据,还是为每种数据类型使用一个自己的 TCP 连接更好(就实时性能和延迟而言)?UDP值得吗?

1个回答

首先,对于实时应用程序(音频、视频等),您必须使用UDP而不是 TCP(其中 TCP 是面向连接的)。

其次,如果您运行此类应用程序,您唯一应该关心的是吞吐量,以及 WIFI 连接是否可以通过放置处理这个?,您列出的音频和视频速率永远不会超过 WIFI 的吞吐量,其中 b/g 标准为 54 MBPS,标准为 150 MBPS

第三,关于运行单连接或多连接,我想你应该在单连接上运行每种类型的应用程序,从应用服务质量和流量控制方面来说,网络方面会更好。