如何使用udp套接字手动发送音频数据

时间:2013-02-21 05:29:57

标签: sockets audio networking udp voice

我正在使用udp套接字开发视频聊天应用程序, 我能够捕获巨大的原始音频数据。因为它是聊天应用程序,我应该能够连续传输这个音频数据。

问题是这个音频数据很大,所以socket mtu不允许我传输这些数据。

我发现我可以分割这些数据并通过套接字发送并在另一端捕获它们并将它们组合以产生语音数据。 请指导我如何使用udp套接字

1 个答案:

答案 0 :(得分:2)

使用UDP您必须自己关注传输顺序(UDP datagram 1号可能会收到AFTERUDP datagram 2号)和丢失的数据包(UDP不授予数据报的传送)

您应该使用TCP进行大规模传输,其中数据包的顺序很重要。

关于MTU,您不必关心它是否小于您要发送的数据的大小。操作系统会为您进行碎片整理。

只需将64k块中的数据(单个send()调用允许的最大大小)拆分并循环,直到数据完全传输完毕。