Html5 video标签访问网络摄像机实时监控
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络摄像机+VLC+Node.js+HTML5
网络摄像机大部分都需要安装插件才能看,对于我们这些搞B/S的来说比较麻烦,最近项目中要用到摄像机实时监控,所以查询了些资料。公司采用的大华的东西,将设备全部接入一个局域网中,设置好ip
摄像机1 (192.168.8.110)
摄像机2 (192.168.8.180)
硬盘录像机NVR (192.168.8.108)
百度了一下大华(包含NVR/摄像机)RTSP地址:
rtsp://user:pwd@ip:port/cam/ realmonitor?channel=1&subtype=0
channel通道,NVR分通道。
subtype码流,0代表主码流(高清1080P),1代表辅码流(704*576(D1)).
直接访问摄像机:
摄像机1:rtsp://admin:*************.8.110:554/cam/realmonitor?channel=1&subtype=0
摄像机2:rtsp://admin:*************.8.110:554/cam/realmonitor?channel=1&subtype=0
访问NVR:
摄像机1:rtsp://admin:*************.8.108:554/cam/realmonitor?channel=1&subtype=0
摄像机2:rtsp://admin:*************.8.108:554/cam/realmonitor?channel=2&subtype=0
Html5
使用vlc命令,在cmd命令下使用(注意下面是一行命令)
vlc -I dummy -vvv
"rtsp://admin:*************.8.110:554/cam/realmonitor?channel=1&subtype=1"
--sout="#transcode{vcodec=theo,vb=800,acodec=vorb,ab=128,channels=2,samplerate=44100}:ht tp{mux=ogg,dst=:8080/cam}" --sout-all --sout-keep
多行0%-100%,基本上就是成功了
HTML5
Your browser does not support the video tag.
chrome打开页面就可以看到了
Node.js+HTML5
采用Node.js启动vlc,这里是多个摄像头
app.js
var child_process = require('child_process');
function openCam(rtsp,path){
var server=child_process.spawn("C:\\Program Files
(x86)\\VideoLAN\\VLC\\vlc.exe",["-I","dummy","-vvv",rtsp,"--sout=#transcode{vcodec=theo,vb=8 00,acodec=vorb,ab=128,channels=2,samplerate=44100}:http{mux=ogg,dst="+path+"}","--sout-all ","--sout-keep"]);
//dummy 可以修改为--no-dummy-quiet,隐藏vlc命令窗口
server.on('exit', function (code, signal) {
console.log('service exit');
});
}
openCam('rtsp://admin:*************.8.108:554/cam/realmonitor?channel=1&subtype=1',':8 800/cam');//摄像机110
openCam('rtsp://admin:*************.8.108:554/cam/realmonitor?channel=2&subtype=1',':8 801/cam');//摄像机180
目前只能一个摄像机一个端口,端口复用暂时不知道怎么弄。
HTML
Your browser does not support the video tag.
Your browser does not support the video tag.
运行node app,打开html即可
经过测试PC chrome、安卓UC都能打开。