![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Речь
xman © (2003-04-16 10:36:00)Мастера, подскажите алгоритм программы для общения по сети через микрофон , можно принцип рации.
Заранее благодарен.
А если это будет исходник, то это будет просто замечательно
savva (2003-04-16 15:01:00) [1]опять же - этот вариант - не догма.. можно что то еще придумать. Самое главное - разбить большую задачу на кучу маленьких и потом стрить ее как из кирпичиков...
savva (2003-04-16 14:56:00) [2]Я это делал так - использовал приложение-сервер и приложение-клиент.
Функции приложения-сервера: содержать список клиентов и нечто вроде моста (можно конечно и без него, но только в ЛВС).
Функции приложения-клиента: собственно передача текстовых и звуковых сообщений.
Сервер на основе TServerSocket (ServerType - stThreadBlocking ). Один клиент инициализирует (другими словами - дозванивается до другого через сервер). Как тока второй клиент ответил согласием на разговор на сервере формируется запись о том что клиент1 и клиент 2хотят поговорить. Затем сервер дает им одновременно команду на начало разговора. По получении этой команды клиенты начинают записывать и воспроизводить звук. Конец разговора вызывает один из клиентов соответствующей командой..
есть реализованная программка (правда сыровата). Писалась для клиента - но он потом передумал, поэтому работа и остановилась..
В ней качество звука: PCM 11.025KГц 8 bit mono 10 КБ/с.
Весь этот поток сжимается арифметическим кодированием (в режиме разговора где то 3КБ/с вместе со служебной информацией, при передаче музыки - до 5КБ/с). Не стал использовать какие то стандартные кодеки - потому что у разных клиентов может стоять разные - что может им помешать услышать звук собеседника. Тем более что сильных ограничений на скорость связи не стояло в условиях..
Все это вполне устойчиво работало при испытаниях через прокси сервер WinRoute.
Сразу говорю, что исходники скорее всего не дам.