使用 UDP/packet 注入通过 wifi 传输视频

Video transmission over wifi using UDP/packet injection

嘿 Whosebug 社区 :)

我正在研究使用 wifi 将来自 RC 设备的摄像头视频流式传输到计算机中。

在考虑了所有选项后,我只剩下两个选项:

  1. 使用 UDP 以数据包的形式传输视频
  2. 在接收设备上使用数据包注入和数据包嗅探。

我想知道每种方法(针对视频传输的特定目的)的优缺点是什么? 环顾四周后,我发现了两种方式的许多实现方式,但它们都没有说明为什么一种方式比另一种方式更好。

有几件事我没有提到:

  1. 我知道 UDP 没有纠错功能,这会使视频变得奇怪 - 我不关心视频的质量,只要它可以被识别即可。 我不想使用基于连接的协议(TPC 等)- 我不想在断开连接时等待握手。

谢谢:)

我正在尝试做类似的事情。我对此的看法基本上是当您在监控模式下使用 wifi 卡时(即使用数据包 sniffing/injection),您实际上并不需要连接到该网络。通常,您仍然需要作为客户端连接到接入点,然后您才能通过该连接使用 UDP 进行通信。但是,在这种情况下,UDP 消息被路由到 Wifi 卡,并且数据包在没有与任何客户端关联的情况下被注入。然后,任何 'client' 只需在同一频道上嗅探或收听即可获得传输。所以好处不仅是 UDP 不检查丢失 frames/etc,而且在这种情况下你不需要连接到网络来获取数据包。

在我的例子中,这是更可取的,因为在前一种情况下,基本上你需要连接到 AP,这通常需要接收器端功能更强大的硬件(关联部分需要更大的范围,因为你本质上需要通过 TCP 发回消息才能建立连接)。

仅供参考,这是我正在使用的 links/repos,它也是对我所说内容的参考 https://docs.px4.io/master/en/tutorials/video_streaming_wifi_broadcast.html https://github.com/svpcom/wifibroadcast

我在短期内使用现成的 'solution',Accsoon Cineye Air,它基本上通过 WiFi 传输 HDMI 300 英尺视线。你需要一个 android phone 来接收它,基本上我使用 Vysor 应用程序(付费版本是 40 美元)将屏幕镜像到我的桌面。它有效,但延迟仍然比我想要的要长:从 cineeye 至少 60 毫秒,所以你可以驾驶它四处走动,但它不如 DJI 快,大约 30-40 毫秒),这是我的目标。