1

我必须实现一个小软件,在同一个 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 中的数据包?

我怎样才能在另一台电脑上接收数据包然后“重新组装”或直接播放?

这是正确的方式?非常感谢。你好!

4

1 回答 1

1

为什么不使用 TCP 而不是 UDP?使用 TCP 套接字,您将毫不费力地实现流功能。

如果你坚持使用 UDP,你将不得不实现某种数据包编号,然后重新组装,然后只有在你拥有它们时才播放,等等。尽量避免它。

于 2010-10-20T16:09:48.600 回答