У меня есть ip-камера, которая обеспечивает прямой видеопоток RTSP. Я могу использовать медиаплеер VLC для просмотра потока, предоставив ему URL-адрес:
rtsp://cameraipaddress
Но мне нужно отобразить поток на веб-странице. Поставщик камеры предоставил элемент управления ActiveX, который я заставил работать, но он очень глючный и вызывает частое зависание браузера.
Кто-нибудь знает альтернативные видеоплагины, которые я мог бы использовать и которые поддерживают RTSP?
Камера может быть настроена на потоковую передачу в формате H264 или MPEG4.
VLC также поставляется с плагином ActiveX, который может отображать канал на веб-странице:
http://wiki.videolan.org/ActiveX/HTML
<OBJECT classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921"
codebase="http://downloads.videolan.org/pub/videolan/vlc/latest/win32/axvlc.cab"
width="640" height="480" id="vlc" events="True">
<param name="Src" value="rtsp://cameraipaddress" />
<param name="ShowDisplay" value="True" />
<param name="AutoLoop" value="False" />
<param name="AutoPlay" value="True" />
<embed id="vlcEmb" type="application/x-google-vlc-plugin" version="VideoLAN.VLCPlugin.2" autoplay="yes" loop="no" width="640" height="480"
target="rtsp://cameraipaddress" ></embed>
</OBJECT>
У вас есть 3 варианта отображения видеопотока RTSP на веб-странице:
Код для встраивания activeX можно найти через поиск в Google.
Насколько я знаю, для каждого плеера есть свои ограничения.
Это не легко для отображения потокового видео с IP-камеры на веб-страницу, потому что вам нужен широкополосный интернет и отличный видео-плеер, который совместим с основными браузерами.
Но, к счастью, есть несколько облачных услуг, которые могут сделать эту работу для нас. Одним из лучших является IPCamLive. Эта служба может получать протоколы RTSP/H264 видео потока от IP-камеры и транслировать его зрителям. IPCamLive имеет компонент Flash/HTML5 видео плеер, который будет отображать видео на ПК, Mac, планшета или мобильного. Самое главное, что этот сайт создает необходимый фрагмент HTML для встраивания видео вроде этого:
<iframe src="http://ipcamlive.com/player/player.php?alias=szekesfehervar" width="800px" height="600px"/>
Поэтому нам нужно просто скопировать и вставить его в наш html-файл без каких-либо изменений.
Если вы хотите, чтобы поток РЦП непосредственно на веб-страницу, то, боюсь, ваш единственный вариант заключается в использовании просмотра элемент управления ActiveX, который поставляется с камерой. Это прямое подключение IP-камеры -> у зрителя, и должно быть быстрым. Не знаю, почему у вас возникли проблемы; оси ActiveX работает очень хорошо для меня.
Однако, эта опция не реально эффективной полосой пропускания, и вы не можете обслуживать несколько одновременных зрителей (большинство IP-камер имеют предел 10 зрителей). Лучшим вариантом является, чтобы загрузить один поток по протоколу RTSP с центральным размещением потокового сервера, который преобразует ваш поток по протоколу RTMP и MPEG-TS и опубликовать его на флеш-плееров/приставок.
Передачи данных Wowza, Erlyvideo, нереальный медиа сервер Red5 ваши варианты.
Также вы можете попробовать с WebRTC с открытым исходным кодом медиа-сервер Kurento
Который может играть RTSP поток видео и отправить его на WebRTC или перекодировать в RTMP или сохранение на сервере.
Мы используем на производстве в следующих случаях: в <предварительно>
Нашел простое и рабочее решение с VLC официальной документации для веб-плагин
https://wiki.videolan.org/Documentation:WebPlugin/
Изменил код немного и получил это работает. Вот мой код-
<embed type="application/x-vlc-plugin" pluginspage="http://www.videolan.org" autoplay="yes" loop="no" width="300" height="200" target="rtsp://10.20.50.15:554/0/888888:888888/main" />
<object classid="clsid:9BE31822-FDAD-461B-AD51-BE1D1C159921" codebase="http://download.videolan.org/pub/videolan/vlc/last/win32/axvlc.cab" style="display:none;"></object>
Примечание: В приведенном фрагменте используется формат URL-адреса недоразумение
, что поддерживается моим IP-камеры. Так что вам нужно сделать то же самое для вашей камеры. Эту информацию можно получить на консультации с камеры поддержка поставщика. Также имейте в виду, что я тестировал на Chrome (с помощью плагина ActiveX для Chrome) и другие браузеры (включая браузеры мобильных телефонов) может не поддерживаться.
Веб-Сервер (Flashphoner Только)
Повторно RTSP потока по технологии WebRTC (родной браузер для Хрома и ФФ либо на Андроиде или на рабочем столе)
Повторно RTSP потока до WebSocket (для iOS Safari и Chrome/FF в столе)
Взгляните на этот статьи.
Попробуйте QuickTime Player! Вот мой JavaScript, который генерирует встроенный объект на веб-странице и воспроизводит поток:
//SET THE RTSP STREAM ADDRESS HERE
var address = "rtsp://192.168.0.101/mpeg4/1/media.3gp";
var output = '<object width="640" height="480" id="qt" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab">';
output += '<param name="src" value="'+adsress+'">';
output += '<param name="autoplay" value="true">';
output += '<param name="controller" value="false">';
output += '<embed id="plejer" name="plejer" src="/poster.mov" bgcolor="000000" width="640" height="480" scale="ASPECT" qtsrc="'+address+'" kioskmode="true" showlogo=false" autoplay="true" controller="false" pluginspage="http://www.apple.com/quicktime/download/">';
output += '</embed></object>';
//SET THE DIV'S ID HERE
document.getElementById("the_div_that_will_hold_the_player_object").innerHTML = output;
Я знаю, что этот пост старый, но я ищу что-то очень похожее на днях (посмотреть мой IP-камеры'ы РЦП видео на простую HTML-страницу без каких-либо необычные Плагины ActiveX). Мне повезло, я нашел решение! Он основан на ffmpeg, NodeJS, nginx и (необязательно, но полезно) и узел медиа-сервер.
Описание в ссылке подробно и легко следовать, но я все еще есть некоторые хитрости для борьбы с Прежде чем я получил его на работу (в отношении конечных точек на сервере NodeJS). Я сделал Вопрос за это и получил хороший и работает ответить.
Я опубликовал проект на GitHub, которые помогут вам трансляцию IP/сетевые камеры в веб браузере в режиме реального времени без плагина требует, которые я выделила для проекта с открытым исходным кодом под лицензией MIT, которые могут быть сопоставлены с вашими потребностями, здесь вы идете:<БР />
Потокового IP/сетевые камеры в веб-браузере, используя NodeJS
Нет полного пакета Framework, но это кикстарт, который может дать вам направление дальнейших действий.<БР/> Будучи студентом, я надеюсь, что это полезно и обратите свой вклад в этот проект.
в Microsoft MediaPlayer может делать все, что вам нужно. Я использую МС Mediaservices в 2003 / Server 2008, чтобы поставить видео в качестве трансляции и Одноадресного потока. Эту услугу можно получить поток с камеры и транслировать его. Чем вы-то "лишь" проблему, чтобы "Дисплей", что картина у всех браузеров на всех ОС-систем
Мой совет :проверьте сначала ОС , чем загрузить ваш плагин . в Windows это легко -взять СЦМ , на другие взять МС Silverligt ...
Проверьте библиотеку медиа-потока по оси, которые передают на расширение источников средств массовой информации
Они реализуют трубопровод похожие на GStreamer в JS с качеством H264 Депай в нем. Примечание: потоковое употреблять в JS не напрямую РЦП, но помещенный в ИС:// сама библиотека на node.js РЦП-WebSocket прокси.
Для целей такой один я использую VLC как сервер распространения. Вы сказали, что вы поймаете видео с VLC? Щелкните правой кнопкой мыши на носителе в VLC, выбрать и"Поток" и выберите Параметры. Вы также можете сделать это с помощью командной строки, что дает потенциальные преимущества различных варианта (перекодирование, масштабирование, сжатие, desinterlacing). Вот это партия, которая начинается в VLC распространения от источника к собственному порту 555 (так что вы будете иметь, чтобы типа рстп://myvlcserveripaddress:555 в src на веб-страницы, чтобы получить поток)
cd \
cd C:\Program Files (x86)\VideoLAN\VLC\
vlc --logo-file C:\logo.png --logo-position 5 --logo-opacity 200 --logo-x 900 --logo-y -2 "mmsh://typeyoursourceIPhere:554" :sout=#transcode{vcodec=div3,vb=800,scale=0,acodec=mpga,ab=128,channels=2,samplerate=44100}:duplicate{dst=rtp{mux=ts,sdp=rtsp://:555/stream}} :sout-all :sout-keep
Здесь, у вас есть образец веб-страницу, которая встраивается (основанный на VLC плагин).
На один я использую следующие работы url-адрес:
rtmp://<IP_address>/flash/11:<username>:<password>
например:
rtmp://192.168.1.10:1935/flash/11:admin:admin
Вам нужно найти IP-адрес IP-камеры, логин и пароль.
Выше URL-адреса при вводе в браузере, обнаруживает, что его поток и открыть медиа-плеер. Правильные url может быть найден путем входа в IP адрес. (Использовать сканер как в Nmap, сердитый IP сканер и т. д.)
Все вышеуказанные решения не работают или слишком много времени, чтобы выяснить.
Это окончательный ответ. Вы можете вставлять ссылки RTSP на ваш сайт.
Скопируйте ниже код в HTML-редакторе:
<!--- BEGIN PLAYER --->
<!-- webbot bot="HTMLMarkup" startspan ---->
<object ID="MediaPlayer" WIDTH="320" HEIGHT="270" CLASSID="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95" STANDBY="Loading Windows Media Player components..." TYPE="application/x-oleobject" CODEBASE="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112">
<param name="autoStart" value="True">
<param name="filename" value="rtsp://xxx.xxx.xxx:xxxx">
<param NAME="ShowControls" VALUE="False">
<param NAME="ShowStatusBar" VALUE="False">
<embed TYPE="application/x-mplayer2" SRC="rtsp://xxx.xxx.xxx:xxxx" NAME="MediaPlayer" WIDTH="320" HEIGHT="270" autostart="1" showcontrols="0"></embed></object>
<!-- webbot bot="HTMLMarkup" endspan ---->
<!--- end PLAYER --->
Если все это слишком сложно и все равно ничего не решить это, позвольте мне помочь вам.
Я сделал это для моих клиентов.
Нажмите здесь http://www.mhcreative.com.my/ipcameratowebsite/