- Android rtsp server camera
- 7 способов отобразить видео с RTSP IP-камеры на веб-странице и 2 в мобильном приложении
- Способ 1 — RTMP
- Способ 2 — RTMP с оберткой HTML5
- Способ 3 — RTMFP
- Способ 4 — RTMFP c оберткой HTML5
- Способ 5 — WebRTC
- Способ 6 — Websockets
- Способ 7 — HLS
- Способ 8 — Android приложение, WebRTC
- Способ 9 — iOS приложение, WebRTC
- Результаты
- Ссылки
- Практикум: Превращаем Android-смартфон в IP-камеру и смотрим IP-камеры со смартфона
- IP Webcam
- MobileWebCam
- tinyCam Monitor
- mLivecams
- IP Cam Viewer
- Ivideon
- Резюме
Android rtsp server camera
Краткое описание:
Просмотр потокового вещания: IPTV, IP-камеры и т.д.
Описание:
RTSP Player это очень простой и быстрый кросс-платформенный медиаплеер для воспроизведения видео и аудио с IP-камер и видеосерверов в RTSP, HLS, MMS, RTMP и других форматах.
Сетевые протоколы: RTSP / RTP (UDP, TCP, HTTP), HLS, MMS, RTMP
Видео форматы: H.264, MPEG2, MPEG4 и WMV
Аудио форматы: AAC, AC3, MPEG1, PCM, G711.
Приложение основано на Media Player Framework. SDK поддерживает все основные сетевые протоколы и мультимедийные кодеки, протестирован и настроен для всех основных Android аппаратных платформ и имеет более пользователей 1M!
Особенности:
• Аппаратное ускорение — новое аппаратное ускорение декодирования видео высокой четкости
• Многоядерное декодирование — поддержка нескольких ядер процессора для декодирования
• Поддержка нескольких каналов — одновременное подключение к нескольким ресурсам декодирования видео
• Аппаратное декодирование с аппаратным ускорением и оптимизацией под процессор – Онлайн Медиа Плеер обеспечивает высокоскоростной рендеринг на современных платформах, включая ARM® NEON™-совместимые процессоры, и процессорах со специфическими кодеками, включая Tegra 2.
• Режим просмотра
• Воспроизведение Unicast UDP
Создайте свой собственный RTSP-плеер в течение нескольких часов с помощью нашего SDK.
Пожалуйста, не стесняйтесь обращаться к нам по адресу [email protected] если вы сталкнетесь с любой проблемой.
Пожалуйста, ознакомьтесь с дополнительной информацией и подробностями здесь: http://videoexpertsgro…o_playback_engine.html
Требуется Android: 5.0 и выше
Русский интерфейс: Нет
Сообщение отредактировал iMiKED — 11.02.21, 08:05
Источник
7 способов отобразить видео с RTSP IP-камеры на веб-странице и 2 в мобильном приложении
В этой статье покажем 7 технологически разных способов отображения видеопотока с IP-камеры с поддержкой RTSP на web-странице браузера.
Браузеры, как правило, не поддерживают RTSP, поэтому поток будет конвертироваться для браузера через промежуточный сервер.
Способ 1 — RTMP
RTMP протокол браузеры не поддерживают, но его поддерживает старый добрый Flash Player, который работает неплохо, хоть и не во всех браузерах, и может отобразить видеопоток.
Код плеера в этом случае будет построен на Action Script 3 и выглядеть примерно так:
rtmp://192.168.88.59/live — это адрес промежуточного сервера, который заберет RTSP видеопоток с камеры и конвертирует его в RTMP
rtsp://192.168.88.5/live.sdp — это RTSP адрес самой камеры.
Немного избыточный вариант кода плеера на Flex и AS3 доступен здесь.
Выглядит это так:
Способ 2 — RTMP с оберткой HTML5
Желающих кодить на Action Script 3 все меньше. Специально для этого придуман способ с HTML5 оберткой, которая позволяет управлять RTMP-плеером из JavaScript. В этом случае флэшка подгружается на HTML-страницу только для того чтобы отобразить картинку и выдать в динамики звук.
Полный код плеера находится здесь. А выглядит это так:
Способ 3 — RTMFP
Протокол RTMFP также работает внутри флэш плеера. Разница с RTMP в том, что RTMFP работает поверх протокола UDP и тем самым является более пригодным для получения трансляции с низкой задержкой.
Код плеера на AS3 в этом случае полностью идентичен используемому в RTMP, добавлена одна буква F в строке протокола подключения к серверу.
Для порядка дадим скриншот с RTMFP
Способ 4 — RTMFP c оберткой HTML5
Этот способ идентичен пункту 2, с той разницей, что мы при инициализации в JavaScript устанавливаем RTMFP протокол для использования в нижележащей флэшке (swf-объекте).
Способ 5 — WebRTC
В данном случае Flash не используется совсем и видеопоток проигрывается средствами самого браузера, без использования сторонних плагинов. Это работает и в Android Chrome и Android Firefox — мобильных браузерах, где Flash не установлен. WebRTC дает самую низкую задержку — менее 0.5 секунды.
Код плеера тот же:
Автоматически определяется поддержка WebRTC, и если поддерживается то поток играет по WebRTC.
Способ 6 — Websockets
WebRTC и Flash не покрывают все браузеры и платформы. Например, в браузере iOS Safari эти технологии не поддерживаются.
На iOS Safari можно доставить видеопоток по транспорту Websocket (TCP соединению между браузером и сервером). В этот туннель можно завернуть сконвертированный с RTSP видеопоток. После того, как бинарные данные придут их можно декодировать с помощью JavaScript и отрисовать на Canvas HTML5-элементе.
Именно этим занимается Websocket — плеер при работе в браузере iOS Safari, а его код снаружи выглядит также:
Это чем-то похоже на подход с флэшкой, когда под HTML5 лежит swf-элемент. В данном случае, под HTML5-страницей лежит не swf-объект, а JavaScript-приложение, которое тянет данные по вебсокетам, декодирует и отрисовывает на Canvas в нескольких потоках.
Так выглядит RTSP поток на Canvas в браузере iOS Safari
Способ 7 — HLS
При конвертации RTSP в HLS, видеопоток разбивается на сегменты, которые благополучно скачиваются с сервера и отображаются в HLS-плеере.
В качестве HLS-плеера мы используем video.js. Код плеера можно скачать здесь.
Как выглядит плеер:
Способ 8 — Android приложение, WebRTC
Приложение забирает поток с сервера по WebRTC. Задача сервера в этом случае — сконвертировать RTSP в WebRTC и скормить мобильному приложению.
Java-код плеера для Android находится здесь и выглядит так:
Тестовое мобильное приложение плеера можно установить из Google Play, а исходники приложения скачать здесь.
Так выглядит воспроизведение RTSP потока по WebRTC на планшете Asus под Android:
Способ 9 — iOS приложение, WebRTC
Приложение также как и в случае Android забирает поток с сервера по WebRTC.
Скачать исходный код плеера для iOS можно здесь.
А из App Store можно установить тестовое приложение, которое использует показанные выше куски кода. Его работа с RTSP-потоком выглядит так:
Результаты
Подведем итоги и объединим полученные результаты в табличку:
Способ отображения | Применение | Задержка | |
1 | RTMP | Там, где важно использование legacy — флэш клиента, Flex или Adobe Air | medium |
2 | RTMP + HTML5 | В браузерах IE, Edge, Mac Safari, если там установлен Flash Player | medium |
3 | RTMFP | Там, где важно использование legacy — флэш клиента, Flex или Adobe Air и важна низкая задержка | low |
4 | RTMFP + HTML5 | В браузерах IE, Edge, Mac Safari, если там установлен Flash Player и важна низкая задержка. | low |
5 | WebRTC | В браузерах Chrome, Firefox, Opera на десктопах и мобильных браузерах под Android, где важна real-time задержка. | real-time |
6 | Websocket | В браузерах, где нет Flash и WebRTC, но нужна средняя или низкая задержка. | medium |
7 | HLS | Во всех браузерах. Где не важна задержка. | high |
8 | Android app, WebRTC | В нативных мобильных приложениях под Android, где требуется real-time задержка. | real-time |
9 | iOS app, WebRTC | В нативных мобильных приложениях под iOS, где требуется real-time задержка. | real-time |
Для тестирования мы использовали сервер Web Call Server 5, который конвертирует RTSP поток для раздачи в 9 перечисленных направлениях.
Ссылки
Web Call Server 5 — сервер для раздачи RTSP потока
Flash Streaming — пример swf приложения, проигрывающего потоки по RTMP и RTMFP. Способы 1 и 3.
Source — исходный код swf приложения на Flex / AS3.
Player — пример web-приложения, которое воспроизводит RTSP поток по RTMP, RTMFP, WebRTC, Websocket. Способы 2,4,5,6.
Source — исходный код веб-плеера.
HLS плеер — пример web-плеера, играющего HLS. Способ 7.
Source — исходный код HLS плеера.
Android плеер WebRTC — пример мобильного приложения, которое играет поток по WebRTC. Способ 8.
Source — исходный код мобильного приложения.
iOS плеер WebRTC — пример мобильного приложения, которое играет WebRTC поток. Способ 9.
Source — исходный код мобильного приложения.
Источник
Практикум: Превращаем Android-смартфон в IP-камеру и смотрим IP-камеры со смартфона
Смартфоны превращаются все в более универсальные устройства, совмещающие в себе телефон, интернет-планшет, музыкальный плеер, навигатор, компактную игровую консоль и многое другое. В том числе фотоаппарат и видеокамеру. Причем, организовать онлайн-трансляцию с камеры смартфона или получить с него доступ к другим онлайн-камерам сейчас не так уж и сложно.
Приложения для ОС Android связанные с интернет-камерами можно разделить на две большие группы, в первую из которых войдут программы позволяющие использовать камеру мобильного устройства в роли IP-камеры, а во вторую – средства для просмотра IP-камер с мобильных устройств.
IP Webcam
Приложение «IP Webcam» позволяет превратить Android-смартфон в беспроводную IP-камеру. Интерфейс програмы достаточно прост – после запуска программы понадобится ввести параметры работы камеры и нажать кнопку «Запустить». При настройке IP Webcam можно задать:
- Разрешение: от 1280х720 до 176х144. Максимальное поддерживаемое разрешение зависит от мобильного устройства;
- Качество изображения: 1…100%;
- Ориентация видео: ландшафтная, портретная, ландшафтная перевернутая, портретная перевернутая;
- Используемую камеру – тыловая или фронтальная, для переключения которых служит флажок «Использовать фронтальную камеру». В настоящий момент функция находится в стадии тестирования, поэтому может работать с ошибками. Для стабильной работы приложения рекомендуется использовать тыловую камеру;
- Ограничить FPS: ограничить количество кадров в секунду, максимальное значение равно максимуму камеры;
- Режим фокусировки: по умолчанию, ручной, бесконечный, макро (ручной), агрессивный для фото, мягкий для видео, фиксированный;
- Логии и пароль: добавление парольной защиты на доступ к трансляции изображения с камеры;
- Предпочитаемое семейство адресов: IPv4 или IPv6, выбор зависит от особенностей сети, куда подключен смартфон. В общем случае выбирают IPv4;
- Порт: номер порта, на котором будет вестись трансляция, по умолчанию 8080;
- Передача звука: звук включен, звук выключен, передавать только звук;
- Флажок «Отключить оповещение» – не показывать приложение, работающее в фоновом режиме;
- Флажок «Запретить переходить в спящий режим» — необходимо активировать для предотвращения перехода процессора в режим минимальной производительности при выключении дисплея;
- Флажок «Запускать при загрузке» — инициирует автоматический запуск программы при включении устройства.
Кроме того, в «IP Webcam» есть встроенный сборник часто задаваемых вопросов, где рассказывается, как использовать «IP Webcam» при общении по Skype, установить соединение с телефоном и других нюансах связанных с использованием приложения.
После того как все необходимые настройки выполнены, нажимают кнопку «Запустить» для начала трансляции изображения. В принципе приложение вполне работоспособно и при настройках «по умолчанию». В режиме трансляции на экране устройства отображается изображение с камеры, текущие IP-адрес и порт, а также доступны кнопки «Как мне подключить» и «Действия», дающая доступ к меню управления камерой.
Используя меню управления камерой можно сфокусировать камеру, остановить трансляцию, перейти к работе в фоновом режиме, включить/выключить светодоиодный индикатор или дисплей устройства, скопировать IP-адрес камеры в буфер обмена или поделиться им иными способами, а также замаскировать приложение. Кстати, на практике возможность поделиться ссылкой, например, через облачные сервисы, очень удобна.
При нажатии на кнопку «Как мне подключиться», для получения справочной информации, будет предложено выбрать тип подключения: через Wi-Fi сеть или через сеть мобильного оператора. Впрочем, через сеть мобильного оператора подключиться получится далеко не всегда – для работы приложения необходим IP-адрес, к которому можно обращаться извне.
Простейший вариант использования «IP Webcam» с компьютера выглядит следующим образом – запускают браузер и в поле адрес вводят IP-адрес и порт устройства. Например, моей домашней Wi-Fi сети ссылка выглядела следующим образом: «http://192.168.4.6:8080/», где 192.168.4.6 – это IP-адрес телефона, отображаемый на дисплее мобильного устройства после запуска трансляции.
Возможных способов просмотра трансляции несколько. Самый простой – использование браузера компьютера. В процессе тестирования приложения на моем компьютере оказалось достаточным разрешить выполнение плагина JAVA. Причем, в дальнейшем можно разрешить запуск этого плагина без дополнительных запросов. При отсутствии плагина, его можно загрузить по гиперссылке, отображаемой на странице «Сервис камеры смартфона». Там же приведены и настройки, необходимые для просмотра видео и прослушивания аудио в любом стороннем приложении.
Один из вариантов просмотра использование видеоплеера с поддержкой потокового воспроизведения видео, например, рекомендуемого авторами приложения бесплатного плеера VLC. Причем все достаточно автоматизировано – при щелчке по гиперссылке «просмотреть во внешнем плеере» на компьютер будет загружен m3u-файл, который достаточно просто открыть плеером.
Для подключения IP-камеры к Skype или другим приложениями, работающими с web-камерами понадобится установить на компьютер соответствующие драйвера. Достаточно подробно эта операция описана на странице «Подсоединить к компьютеру с Windows для использования с видеочатами» (ссылка на нее находится на стартовой странице «Сервис камеры смартфона»). От себя отмечу, что действительно все работает вполне корректно, но для совместимости со Skype 5.x пришлось установить «IP Camera Adapter». Также используя соответствующие ссылки web-интерфейса можно снять полноразмерное фото и загрузить текущий кадр видео в виде картинки.
MobileWebCam
Еще одно популярное приложение для превращения смартфона в IP-камеру – «MobileWebCam». При этом разработчик подчеркивает «заточенность» приложения именно под видео наблюдение, организацию LIVE-трансляций и возможность использования в самых различных условиях, в том числе передачи картинки через 2G/3G-сеть. Однако с точки зрения подхода к реализации программа довольно сильно отличается от рассмотренного выше приложения «IP Webcam».
Для доступа к меню приложения нажимают либо экранную кнопку со стрелкой вниз, либо одноименную аппаратную кнопку мобильного устройства. Для перехода к настройкам приложения служит пункт «Change Settings» основного меню приложению.
Настроек в «MobileWebCam» достаточно много и они заслуживают более внимательного рассмотрения. На вкладке «Upload» диалогового окна настройки приложения выбирают метод выгрузки изображения с камеры. При работе с «MobileWebCam» могут использоваться HTTP или FTP сервера, электронная почта, облачный сервис Dropbox, а также вестись запись изображения на карту памяти или на сайт SENSR.net (платно $9,95 в месяц, $99 в год за каждую камеру). Набор настроек для каждого из способов может различаться, в зависимости от его особенностей. Обратите внимание, в отличие от «IP Webcam», для работы с «MobileWebCam» через браузер необходимо иметь уже настроенный http или ftp-сервер для работы с изображениями.
Зато в плане выгрузки информации программа куда более универсальна – можно использовать любое доступное подключение к интернету, в том числе 2G-сеть, что важно, например, для применения смартфона с «MobileWebCam» в составе домашней системы видеонаблюдения. Довольно интересный параметр в настройках выгрузки изображений «Frequrency», благодаря чему можно задать интервал, с которым изображения будут выгружаться в интернет. По умолчанию этот параметр равен 1, что соответствует режиму выгрузки всех изображений.
Помимо выгрузки в интернет, получаемые изображения с камеры можно сохранять на карту памяти.
Параметры захвата изображения настраивают на вкладке «Activity», где можно указать:
- Время обновления изображения (минимально – 1 секунда, в реальности влияет быстродействие модуля камеры и самого смартфона);
- Режим работы камеры;
- Время начала и окончания захвата изображений;
- Отключить загрузку «ночных» (темных) изображений;
- Включить sms-команды («photo», «start», «stop», «reboot» и «refresh ») и режим захвата изображений по наличию движения и выполнить ряд других настроек.
На вкладке «Image» настраиваются параметры получаемых изображений – размер, качество, использование автофокуса (включено, выключено), параметры поворота картинки и впечатывания информации, а также добавления GPS-координат в EXIF-полученного изображения.
Остальные параметры собраны на вкладке «System». В частности там можно активировать автоматический запуск приложения при перезагрузке устройства. Для организации web-доступа к изображению, получаемому с «MobileWebCam», автор рекомендует использовать nanohttpd.
tinyCam Monitor
Помимо превращения смартфона в IP-камеру его можно использовать и для просмотра картинки с имеющихся камер. В частности разработчики, рассмотренного выше, «IP Webcam» предлагают использовать программу «tinyCam Monitor», существующую в бесплатной и платной (около 125 рублей) версиях. Функционал этого приложения включает в себя:
- Поддержку M-JPEG IP камер/видеосерверов и вэбкамер всех известных производителей, в т.ч. Axis, FOSCAM, D-Link, Edimax, Panasonic, Pixord, TRENDnet, Mobotix, Vivotek, Beward. Полный список доступен на официальном сайте;
- Поддержку просмотра до 4-х камер одновременно (16 максимум);
- 3 типа мультиэкранов;
- Последовательный режим;
- Функцию обмена настройками по электронной почте и их импорт/экспорт на карту памяти или в сервис Dropbox;
- Управление Pan/Tilt/Zoom камерами;
- Цифровое увеличение изображения;
- Сохранение снимков на SD карту.
В платной pro-версии доступно:
- Дополнительные мультиэкраны;
- Цикличная запись видео на SD/FTP/Dropbox;
- Неограниченное количево устройств;
- Звук (для устройств некоторых производителей);
- Поиск камер в локальной сети;
- Поддержка SSL (протокол https);
- Поддержка детектора движения (для некоторых производителей);
- Техническая поддержка разработчиков.
Интересная функция «tinyCam Monitor» — просмотр картинок со случайных общедоступных камер. И это достаточно удобно, чтобы оценить возможности приложения. Для настройки используемых web-камер нажимают кнопку «Настр. камер» основного диалогового окна программы и выбирают нужную камеру. Для изменения настроек камеры нажимают кнопку с изображением карандаша, находящуюся возле ее названия. Посредством «tinyCam Monitor» можно просматривать как камеры с открытым доступом, так и требующие авторизации по логину и паролю.
В настройках записи изображения с камеры (доступно в платной версии) на карту памяти, ftp или в облачные сервисы можно задать частоту следования кадров и ограничить максимальный объем занимаемого места (для SD-карты). Еще одна полезная функция pro-версии – возможность сканирования доступных в сети камер. Рекомендации по настройке «tinyCam Monitor» для использования программной web-камеры созданной посредством «IP Webcam» приведены на стартовой странице web-интерфейса программной камеры.
В режиме просмотра при портретной ориентации устройства (разрешение дисплея 320х480 точек, в других разрешениях ситуация может отличаться) отображается сигнал с двух камер, в альбомной – с четырех. Доступ к остальным камерам осуществляется сдвигом экрана на нужную страницу. Впрочем, количество отображаемых на каждой странице камер является настраиваемым. Также доступен последовательный режим, в котором сигнал с камер будет загружаться поочередно, с настраиваемым интервалом.
mLivecams
Еще одна популярная программа для просмотра IP-камере – «mLivecams», совместимая c IP-камерами работающими по протоколу m-jpeg. Из функционала приложения упомянем захват изображений с камер, возможность поделиться им в социальных сетях, сканирование сети на наличие доступных камер и возможность добавления собственных. База данных приложения содержит более 5 тысяч web-камер по всему миру.
IP Cam Viewer
«IP Cam Viewer» – это еще одно приложение для просмотра изображений с IP-камер. Программа существует в нескольких вариантах – Lite, Basic, Pro – отличающихся функционально. Более подробно об отличии версий можно узнать из их описания в Google Play. Помимо ОС Android приложение доступно для Blackberry и iOS. Функционал «IP Cam Viewer» включает в себя поддержку SSL, форматов RTSP, H.264, MPEG4, двухканального звука, PTZ, нескольких режимов просмотра, возможность «поделиться» камерой, сохранение изображений, интеграцию с браузером, а также проверку стабильности работы камеры и возможность защиты доступа к приложению с помощью пароля.
Ivideon
В завершении разговора о доступе к IP-камерам с мобильных устройств несколько слов о довольно интересном сервисе «Ivideon», позволяющем запустить «систему видеонаблюдения через Интернет меньше чем за 10 минут». Что важно – для личного использования сервис «Ivideon» бесплатен, а минимальной конфигурацией необходимой для работы с ним является компьютер с выходом в интернет, установленным приложением «Ivideon Server» и подключенная к нему web-камера. Более того, разработчики сервиса предлагают брендированные IP-камеры, где поддержка «Ivideon» интегрирована в программное обеспечение. Ограничение бесплатной версии сервиса – 1 видеосервер «Ivideon Server» с двумя подключенными камерами или 1 IP-камера. Статический внешний IP-адрес для работы с сервисом не требуется.
Регистрация в «Ivideon» довольно проста – достаточно указать свой адрес электронной почты и ввести желаемый пароль для доступа к личному кабинету. После регистрации «привязывают» к личному кабинету нужный экземпляр «Ivideon Server» (или IP-камеру с поддержкой сервиса). На этом настройка закончена и можно переходить к просмотру записи, причем на серверах «Ivideon» ведется даже запись архива.
Просматривать изображения с привязанных к «Ivideon» камер можно через личный кабинет web-интерфейса сервиса, программу Ivideon Client устанавливаемую на компьютере или через мобильные устройства под управлением Android и iOS. Клиентские приложения также бесплатны.
Резюме
Сфера использования мобильного интернета становится все шире. На заре эпохи мобильного доступа к сети его возможности были ограничены работой с электронной почтой и wap-сайтами, а возможность просмотра с мобильного устройства обычных HTML-сайтов казалась настоящим прорывом. За прошедшее время интернет на мобильных устройствах стал быстрее и доступнее, поэтому сейчас никого не удивишь интернет-радио или онлайновым кинотеатром с огромным каталогом легального видео.
Популяризация использования мобильных устройств для работы с IP-камерами или в их роли совершенно неудивительна – при быстром интернет-канале (пока еще речь, чаще всего, идет о Wi-Fi) организовать видеотрансляцию с мобильного устройства довольно просто. Впрочем, как и сделать смартфон или планшет частью системы видеонаблюдения, позволяющей просмотреть, что происходит у вас дома, на даче или в офисе из любой точки мира. И это действительно удобно. А по мере развития 4G-сетей популярность подобного использования смартфонов будет только расти.
Источник