我必须实现一个小软件,在同一个WiFi网络中的两台电脑之间发送音频流。
简而言之,我从设备中获取音频,如麦克风,然后我必须实时传输此音频.. 也许我会用Java ..
通过UDP传输数据如下:
//create UDP socket
DatagramSocket socket = new DatagramSocket();
//data to be sent
byte[] buf = (data).getBytes();
//create UDP packet
DatagramPacket packet = new DatagramPacket(buf, buf.length, address, port);
//send the packet
socket.send(packet);
...
好吧,我的问题是,如何将音频源拆分为我将以buf格式存储的数据包?
如何在另一台电脑上接收数据包然后“重新组装”或直接播放?
这是正确的方法吗?非常感谢。嗨!
答案 0 :(得分:1)
为什么不使用TCP而不是UDP?使用TCP套接字,您将实现流功能,无需额外麻烦。
如果你坚持使用UDP,你必须实现某种数据包编号,然后重新组装,然后只有拥有它们才能播放,依此类推。尽量避免它。