视频流和文件传输之间的差异

时间:2011-05-24 21:05:25

标签: algorithm

设置和说明

我正在为学校做一个项目,并遇到了一个令人困惑的问题。我正试图在房间的3-4英尺处无线传输USB信号。我已经购买了三种不同的无线USB设备,这些设备都声称能够完全达到我所追求的目标。其中两个使用WUSB协议,第三个使用精简的802.11g协议。以下三个是设备:

IOGear Wireless Hub

Belkin Wireless Hub

Gefen Wireless Hub

运行测试时,只有具有802.11g功能的设备(Gefen)才会流式传输任何视频,并且帧速率会大幅下降。所以,我设计了一个测试,我可以实际收集一些硬数据。我发现的非常有趣。

代替开车一直到商店购买网络摄像头,因为我拥有的大多数东西都集成在一起,我选择在DroidCam的应用程序的帮助下将我的Droid Incredible变成网络摄像头。我在Windows上设置TCP端口转发并设置客户端。然后,当使用电线将计算机直接连接到计算机时,我使用高级USB端口监视器进行基线带宽测量。它的平均速度约为10.05 Mbits / s。然后我在我的Droid上放了200 MB的文件,复制了这个文件,并进行了测量。它平均约为37.76 Mbits / s。然后我切换到Gefen设备并运行相同的测试。 DroidCam测试平均运行速度约为1.05 Mbits / s,文件传输速率平均为13.36 Mbits / s。虽然我预计无线技术会降低速度,但我并没有想到会有太大的下降。

如上所述,我无法让Belkin或IOGear集线器传输任何视频(使用其他视频源测试以确保它不是我的Droid),但他们的文件传输速率实际上比格芬。 IOGear集线器的平均速率为19.56 Mbits / s,而Belkin的速率为17.28 Mbits / s。

问题 : 这是算法标签发挥作用的地方。哪些算法用于复制文件与流视频,有没有办法使用“文件复制”算法代替视频流?从文件复制结果来看,无线设备具有足够的带宽来处理视频流。我觉得我只是没有充分利用资源,可以这么说。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

复制文件和流媒体视频非常不同。

通常,流式视频将使用UDP协议(用户数据报协议),这是一种connectionLESS协议。这意味着没有"状态"连接,消息被发送和忘记"。如果由于任何原因没有正确接收数据包,那么您将失去运气,主机将转移到下一个数据包。

另一方面,文件共享通常使用TCP协议完成,TCP协议是面向连接的协议。这意味着两个主机之间正在进行通信,了解传输的当前状态。当主机通过TCP发送消息时,它不仅仅是发送消息,它还发送消息的HASH,以便其他主机可以将相同的散列算法应用于数据包有效负载并确认来自数据包确实是要发送的有效负载(并且无论出于何种原因都没有被破坏)。如果哈希值不匹配,则会再次发送消息。一般来说,像这样的算法在流式视频中的效率要低得多,因为还有很多计算和传输正在发生。

至于这些实现,我建议阅读UDP和TCP实现。