用于影响Java性能的UDP标头的切片数组

时间:2019-02-28 19:31:01

标签: java udp voip

我正在用Java编写基本的VoIP程序。在我的发送线程中,我有代码记录到一个字节数组,仅将数据打包成一个数据报包,发送,接收然后播放。它工作完美,听起来很棒。现在,我正在尝试在发送数据包之前向数据添加2字节的标头。我正在这样做:

ByteBuffer unwrapEncrypt = ByteBuffer.allocate(block.length+2);
short authKey = 10;
unwrapEncrypt.putShort(authKey);

在将我的512字节音频块放入ByteBuffer并发送之前。在接收端:

ByteBuffer decryptedBlock = null;

short authKey = 10;

if(unwrapDecrypt.getShort(0) == authKey) {
    unwrapDecrypt.position(2);
    unwrapDecrypt.limit(514);
    decryptedBlock = unwrapDecrypt.slice();
}

由于某种原因,这使我的音频变成了绝对的嘶嘶声巨响,几乎无法辨认。有没有更好的方法来添加然后剥离标题?我愿意尽一切努力使这项工作成功。

0 个答案:

没有答案