Мобильное SDK для WebRTC онлайн-трансляций и видеозвонков из приложения для iOS
С помощью WebRTC iOS SDK для Web Call Server вы сможете встроить возможности видеотрансляций и видеозвонков в ваше мобильное приложение для iPhone или iPad. Web Call Server позволяет установить видеосвязь между мобильным приложением и веб-браузерами Chrome, Firefox, IE, Edge, и т.д. Таким образом ваши видеотрансляции и видеозвонки будут одинаково работать как в браузерах, так и на мобильных платформах.
Технические характеристики
- Поддержка отправки видеопотоков на сервер и воспроизведение видеопотоков с сервера
- Воспроизведение видеопотоков, отправленных на сервер по протоколам RTMFP, RTMP, WebRTC, RTSP, SIP с других браузеров и устройств
- Поддержка аудио и видеозвонков на SIP-устройства
- Поддержка технологии WebRTC
- iOS 9.x
- iPhone, iPad
Диаграмма онлайн-трансляций с мобильного приложения iOS
Мобильное приложение отправляет видеопоток с видеокамеры смартфона на Web Call Server по технологии WebRTC. Сервер раздает этот видеопоток на другие мобильные устройства (приложения) и браузеры, такие как iOS Safari, Chrome, Firefox, и т.д.
Кроме этого мобильное приложение на основе WCS iOS SDK может воспроизводить все источники видеопотоков, поддерживаемых в Web Call Server, такие как:
- Браузеры Chrome, Firefox, IE, Edge, и т.д.
- Профессиональные RTMP-кодировщики, такие как Wirecast, Flash Media Live Encoder
- SIP устройства и АТС, к которым можно подключиться и раздать видеопоток на мобильные приложения
- IP камеры и серверы, отдающие RTSP видеопоток, который будет обработан на стороне Web Call Server и доставлен на мобильное приложение под управлением iOS
На схеме ниже показаны источники видеопотоков и пути доставки этих видеопотоков на iOS приложение.
Пример воспроизведения видеопотока в мобильном приложении iOS
В этом примере мы запускаем в iPhone тестовое приложение Streaming Min на основе WCS iOS SDK и забираем с сервера видеопоток по его имени. В качестве источника видеопотока в данном примере используется браузер Google Chrome.
Отправка потока из браузера Google Chrome по технологии WebRTC
В левом верхнем углу экрана отображается видео, которое браузер захватил с веб-камеры и передает на сервер.
Воспроизведение видеопотока в iOS на устройстве iPhone 6
Здесь мы воспроизводим в iOS приложении видеопоток stream2, который был отправлен со страницы, открытой в браузере Google Chrome.
Пример трансляции потокового видео из мобильного приложения iOS на браузеры
В этом примере мы используем мобильное приложение для отправки видеопотока на сервер. Для воспроизведения видеопотока используем Google Chrome.
Отправка видеопотока из iOS iPhone
В небольшом экране отображается видео, захваченное с фронтальной камеры смартфона. Этот видеопоток передается на сервер по технологии WebRTC.
Воспроизведение видеопотока в браузере Google Chrome по технологии WebRTC
В браузере Google Chrome воспроизводим видеопоток, который был отправлен с мобильного приложения. В смартфоне iPhone мы использовали фронтальную камеру, наведенную на монитор компьютера, в связи с чем картинка получилась немного нечеткой.
Диаграмма видеочата между мобильным iOS-приложением и веб-браузером
На схеме показан двухсторонний видеочат между мобильным приложением и браузером. На стороне браузера используется технология WebRTC или Flash для обмена видеопотоками. На стороне мобильного приложения используется WebRTC.
Пример двухстороннего видеозвонка между браузером Google Chrome и мобильным приложением iOS
В этом примере мы используем демо Video Chat в браузере Google Chrome и мобильное приложение Phone Min на основе WCS iOS SDK.
Двухсторонний видеочат с iOS приложением из браузера Google Chrome
В левом верхнем углу отображается видео, захваченное с веб-камеры браузера. По центру видео, полученное от смартфона.
Двухсторонний видеочат с браузером Google Chrome из iOS приложения
Здесь наоборот, в левом верхнем углу находится видео с камеры смартфона, а видео с зайцем пришло с браузера.
VoIP звонки из iOS приложения на стационарные и мобильные GSM телефоны через SIP-шлюз
iOS приложение на основе WCS iOS SDK может совершать SIP-звонки на стационарные и мобильные телефоны при наличии SIP-GSM / PSTN шлюза или VoIP провайдера, приземляющего SIP-вызовы в телефонные сети.
Пример вызова из iOS-приложения на мобильный телефон в сети GSM
В примере мобильного приложения Phone Min показан установленный звонок на мобильный телефон через SIP / GSM шлюз.
Мобильное приложение созвонилось с мобильным GSM-телефоном через SIP
В этом простом интерфейсе мы набрали номер мобильного телефона и сделали аудио вызов. Статус ‘Established’ показывает что звонок установлен.
Мобильный телефон принял звонок и находится в режиме разговора с iOS приложением
На дисплее мобильного телефона отображается номер SIP-шлюза, через который был сделан звонок.
Пример двухстороннего видеозвонка между iOS-приложением и программным SIP-телефоном Bria
В данном примере показан видеозвонок с iOS-приложения на программный SIP телефон (софтфон) Bria 4 через SIP сервер OpenSIPs.
Интерфейс мобильного приложения при видеозвонке с софтфоном Bria
В левом верхнем углу расположено видео, захватываемое с камеры смартфона. Видео с зайцем пришло с программного телефона Bria.
Интерфейс софтфона Bria при созвоне с iOS-приложением
Здесь наоборот, Bria отображает видео, которое пришло со смартфона, и на небольшом экране в правом нижнем углу с надписью ‘Sending your video’ показывает собственное видео, захваченное с веб-камеры.
Возможности WCS iOS SDK
Таким образом, мы перечислили все основные возможности мобильного приложения на основе WCS iOS SDK при работе с видеопотоками и звонками, а именно:
- Отправка видеопотока на сервер мобильным приложением
- Воспроизведение произвольного видеопотока с сервера
- Видеочат между мобильным приложением и веб-браузером
- Звонок с мобильного приложения на GSM / PSTN телефон через SIP-GSM / PSTN шлюз
- Видеозвонок между мобильным приложением и SIP-софтфоном.
Для получения подробной информации о тестировании каждого из примеров обратитесь к разделу Тестирование
Загрузить Web Call Server 5
Системные требования: Linux x86_64, 1 core CPU, 2 Gb RAM, Java
Установка:
- wget https://flashphoner.com/download-wcs5.2-server.tar.gz
- Распаковать и установить с помощью скрипта 'install.sh'
- Запустить сервер с помощью команды 'service webcallserver start'
- Открыть веб-интерфейс https://host:8444 и активировать вашу лицензию
Если вы используете серверы Amazon EC2, то скачивать ничего не нужно.