2013-02-21 73 views
0

我正在使用udp套接字的視頻聊天應用程序, iam能夠捕獲巨大尺寸的原始音頻數據。因爲它是聊天應用程序,我應該能夠持續傳輸這些音頻數據。如何使用udp套接字手動發送音頻數據

問題是這個音頻數據很大,所以socket mtu不允許我傳輸這些數據。

我找到了分離這些數據並通過套接字發送並在另一端捕獲它們並將它們組合起來產生語音數據的方式。 如何使用UDP套接字

回答

1

隨着UDP請指引我,你有自己的傳輸順序(UDP datagram數1可以收到AFTER一個UDP datagram2號)和丟包(UDP不授予的照顧數據報的遞送)

對於包大小順序較大的大容量傳輸,您應該使用TCP

關於MTU,您不必關心它是否小於您要發送的數據的大小。操作系統會爲您整理它。

只需拆分64k塊中的數據(允許單個send()調用的最大大小)並循環,直到數據完全傳輸。

+0

謝謝大衛貝拉。你能否提供一些關於如何執行傳輸順序和丟失數據包的示例鏈接 – Kasi 2013-02-21 09:06:12

+0

假設你使用C語言進行編程:[Sockets tutorial - TCP](http://www.linuxhowtos.org/C_C++/socket.htm) – 2013-02-21 09:08:08

+0

謝謝,Iam用c#udp套接字發送大小爲64K的字節數組,iam能夠發送無任何異常,但接收套接字無法獲取數據。我錯過了什麼? – Kasi 2013-02-21 09:26:49

相關問題