отправить голос в реальном времени с помощью udp

Привет всем, не могли бы вы помочь мне. Я пишу код Java для отправки строкового сообщения между клиентом и сервером с использованием сокета udp. но я хочу отправить голос в реальном времени, поэтому не могли бы вы дать несколько заметок, чтобы сделать это


person Community    schedule 19.05.2009    source источник
comment
Откуда идет голос? Почему UDP является обязательным? Требуются дополнительные разъяснения по вашему вопросу.   -  person Gandalf    schedule 19.05.2009


Ответы (3)


Я могу немного указать вам путь, вы, вероятно, захотите использовать транспортный протокол реального времени (RTP), который более или менее является стандартом для отправки аудио или видео в режиме реального времени по сети. Однако реализация не является прямой, и для реализации вам следует использовать вспомогательную библиотеку, такую ​​как jlibrtp. В Java Media Framework (JMF) также есть пакетизатор RTP, но вы не хотите туда идти....

person takete.dk    schedule 19.05.2009

UDP не имеет гарантии качества обслуживания, поэтому при отправке пакетов данных вам нужно будет добавить к вашим данным какой-то порядковый номер, чтобы определить, как собрать данные обратно. Например, вы можете отправить с сервера 3 пакета дейтаграмм по порядку, но клиент может получить их в другом порядке (2,1,3). Или он может вообще не получить ни одного из них, и в этом случае вы либо захотите, чтобы он возмутился (сомнительно), либо просто проигнорируете его и продолжите через некоторое время.

person Gandalf    schedule 19.05.2009

Изучите протокол реального времени RFC3550 (http://en.wikipedia.org/wiki/Real-time_Transport_Protocol) в качестве транспорта по UDP. RTCP как контроль над TCP.

person CodeLizard    schedule 19.05.2009