Я пишу основную программу VoIP на Java.В моем потоке отправителя у меня есть код для записи в байтовый массив, упаковки пакета дейтаграммы только с данными, отправки, получения и воспроизведения.Работает без нареканий, звучит фантастически.Теперь я пытаюсь добавить 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();
}
По какой-то причине это превращает мой звук в праздник абсолютного шипения и едва читается.Есть ли лучший способ добавить, а затем удалить заголовок?Я готов попробовать что-нибудь сделать.