transcoding — это преобразование из одного кодека в другой. Имеется ввиду что теперь Flash поддерживает G.711 и H.264 и не надо Speex и Sorenson Spark в них преобразовывать, что значительно экономит CPU сервера.
Однако трафик через сервер пропускать все равно надо. И этот проект это тоже делает, отсюда «Best Flash-to-SIP Gateway for Flash-VoIP communications».
Flashphoner.com (как и другие похожие проекты) использует протокол RTMP (смотрите title их главной страницы), который реализован поверх TCP и больше подходит для потокового вещания чем для разговоров в реальном времени.
Мы, с другой стороны, используем RTMFP, который работает поверх UDP и позволяет добиться нормального качества связи.
Поясню еще раз. В требованиях есть такая строчка: «поддержка браузерами минимум у 95% пользователей без инсталляции чего-либо». Это означает что мы можем использовать только стандартные методы HTML5 + Javascript, либо очень популярные плагины, которым является Flash.
HTML5 + Javascript на сегодняшний день не могут даже банально снимать звук с микрофона, поэтому отпадают. Flash может, но Flash-приложениям не дают прямого доступа к Socket API, поэтому нельзя просто открыть сокет и посылать туда данные. Таким образом протоколы SIP и RTP отпадают (а также их секъюрные варианты). Приходится использовать то, что доступно Flash, а именно абстракцию над протоколом UDP, которая называется RTMFP. Ну и на серверной стороне уже конвертируем в стандартные протоколы.
Клиентская часть разрабатывалась в основном на Mac OS X, так что все должно работать.
По поводу Linux: я только что загрузил в Parallels Desktop Ubuntu 10.4, поставил на нее Flash Player 11.0.1.152 и потестировал — заработало, но только после того, как я в системных настройках звука выкрутил уровень микрофона почти на максимум.
Совсем не поэтому, просто на текущий момент по-другому нельзя. Но если например убрать требование, чтобы все работало без установки дополнительных плагинов, то вполне возможно посылать SIP-траффик напрямую из браузера в ваш сервис.
Такие технологии у нас тоже есть. Вы можете зайти на talkpad.ru, установить нативный плагин, и затем позвонить на свой SIP-сервер. Вы сможете увидеть, что RTP траффик идет напрямую. Просто такое решение явно не подходит для открытого веба. Для внутрикорпоративного сервиса — вполне можно.
Да, весь трафик идет через наши сервера, иначе на сегодняшний день невозможно.
Мы проводили нагрузочное тестирование, держим где-то 400-500 одновременных звонков на сервер. И серверов у нас несколько. Архитектура такая, что параллелить можно бесконечно, так что будем доставлять по мере необходимости. Причем ставить сервера будем именно там, где сервис используют, чтобы минимизировать сетевые задержки.
В момент начала звонка в «контейнере» появляется диалог «разрешить использование микрофона». Вы там отметили «разрешить»? Иначе записать ничего не получится.
Статья на хабре: habrahabr.ru/blogs/voip/131575/
Однако трафик через сервер пропускать все равно надо. И этот проект это тоже делает, отсюда «Best Flash-to-SIP Gateway for Flash-VoIP communications».
Flashphoner.com (как и другие похожие проекты) использует протокол RTMP (смотрите title их главной страницы), который реализован поверх TCP и больше подходит для потокового вещания чем для разговоров в реальном времени.
Мы, с другой стороны, используем RTMFP, который работает поверх UDP и позволяет добиться нормального качества связи.
HTML5 + Javascript на сегодняшний день не могут даже банально снимать звук с микрофона, поэтому отпадают. Flash может, но Flash-приложениям не дают прямого доступа к Socket API, поэтому нельзя просто открыть сокет и посылать туда данные. Таким образом протоколы SIP и RTP отпадают (а также их секъюрные варианты). Приходится использовать то, что доступно Flash, а именно абстракцию над протоколом UDP, которая называется RTMFP. Ну и на серверной стороне уже конвертируем в стандартные протоколы.
По поводу Linux: я только что загрузил в Parallels Desktop Ubuntu 10.4, поставил на нее Flash Player 11.0.1.152 и потестировал — заработало, но только после того, как я в системных настройках звука выкрутил уровень микрофона почти на максимум.
Такие технологии у нас тоже есть. Вы можете зайти на talkpad.ru, установить нативный плагин, и затем позвонить на свой SIP-сервер. Вы сможете увидеть, что RTP траффик идет напрямую. Просто такое решение явно не подходит для открытого веба. Для внутрикорпоративного сервиса — вполне можно.
Мы проводили нагрузочное тестирование, держим где-то 400-500 одновременных звонков на сервер. И серверов у нас несколько. Архитектура такая, что параллелить можно бесконечно, так что будем доставлять по мере необходимости. Причем ставить сервера будем именно там, где сервис используют, чтобы минимизировать сетевые задержки.
В момент начала звонка в «контейнере» появляется диалог «разрешить использование микрофона». Вы там отметили «разрешить»? Иначе записать ничего не получится.