第一次写博客,描述可能不是很到位,有不足的地方还请大家见谅和指正。
因为公司要求实现在线视频监控,所用的摄像头是海康威视的,而海康给的SDK中没有关于JavaWeb的demo,而相关的web开发包用的又全部都是js方法,并且还需要安装插件配合,这些都达不到我们搭建web项目并在不同浏览器播放的目的,最后,本文通过一下方案实现了摄像头视频在浏览器上无插件播放。

本文方案参考了一下两篇文章: http://blog.sina.com.cn/s/blog_861009c90102yk7d.html, https://www.cnblogs.com/jingangel/p/7477930.html

方案思路:

获取摄像头数据流 --> FFmpeg转码 --> Node.js(搭建webSocket服务器) --> 在服务器上运行jsmpeg程序

操作步骤

首先查看是否能够正常地获取摄像头的rtsp视频流

这里我们用VLC media player来验证
在网络串流中添加我们摄像头的rtsp路径:rtsp://admin:password@192.168.0.64:554

1.安装node.js和FFmpeg,并配置好环境变量

(百度搜索教程即可)
查询版本号可检查好环境变量是否配置成功
居中的图片:

2.node.js安装http-server,开启命令行HTTP服务器

在node命令行下,输入 npm install http-server -g,安装成功后,将以下形式的路径添加进系统环境变量path中:

等需要启动node.js的http服务器时,输入http-server指令即可:

3.下载jsmpeg库

这里我们通过git克隆下载:git clone https://github.com/phoboslab/jsmpeg.git
(也可以进入其他仓库或网站下载jsmpeg库)

4.Node.js安装webSocket模块

在cmd控制台输入: npm install ws -g(或者npm install ws)

5.运行jsmpeg文件夹里面的websocket-relay.js

用新的cmd控制台进入jsmpeg文件夹,运行websocket模块:
指令格式:node websocket-relay.js 密码 ffmpeg推送端口 前端webSocket端口
示例:node websocket-relay.js password123456 8081 8082

6.运行ffmpeg进行视频转码并转发

用新的cmd控制台执行指令:
指令示例:ffmpeg -i “rtsp地址” -q 0 -f mpegts -codec:v mpeg1video -s 1366x768 http://127.0.0.1:8081/password123456
(如需视音频播放,参考格式如下:
ffmpeg -i in.mp4 -f mpegts -codec:v mpeg1video -s 960x540 -b:v 1500k -r 30 -bf 0 -codec:a mp2 -ar 44100 -ac 1 -b:a 128k out.ts

1366x768为输出分辨率,http://127.0.0.1:8081/为视频输出地址,password123456为密码

7.查看浏览器显示效果

打开jsmpeg文件夹里面的view-stream.html页面,正常情况下,将显示如下页面:

注:

当我以个人主机作为服务器,允许其他用户访问view-stream.html页面时,出现了其他IP无法显示视频的情况(但可访问页面),最后尝试关闭主机防火墙问题才得以解决。

#(笔者最后发现这种方式对网络要求非常高,并不适合用在商用的项目,且效果完全不如用海康威视web开发包或直接在浏览器访问摄像头IP来的好。但由于海康威视官方没有给基于JavaWeb的demo,因此本文的方法无法达到萤石云的那种效果,该方法只能作为其他需求下视频转码的参考,如果要用javaWeb开发利用海康威视摄像头,还是需要读者自行研究)

海康威视摄像头rtsp视频流实现浏览器h5播放(无需浏览器安装插件)相关推荐

  1. 网络摄像头RTSP视频流WEB端实时播放实现方案

    IPC视频流怎么实时在WEB浏览器播放,视频流格式是RTSP. 下面我整理了自己实现的方案以及网上看到的一些方案 一.FFmpeg + nginx 将转 hls 通过 video.js 在支持h5浏览 ...

  2. 海康摄像头rtsp视频流html直播展示(适用360浏览器)和转rtmp流的一种配置方式

    背景:  因一个项目的需要,现有海康摄像头的rtsp流地址,想在web端进行监控视频直播展示,由于实际环境限制,自行搭建流媒体服务器将其转换为更为通用的rtmp流格式的方案无法落地:故最终仍使用rts ...

  3. ffmpeg api推流,谷歌浏览器播放大华、海康威视网络摄像头rtsp视频流方案(hls、m3u8、flv、webrtc、srs、nginx、nginx-rtmp、rtmp)比较

    ffmpeg api推流,谷歌浏览器播放大华.海康威视网络摄像头rtsp视频流方案(hls.m3u8.flv.webrtc.srs.nginx.nginx-rtmp.rtmp)比较 将网络摄像头视频流 ...

  4. 海康威视、大华摄像头RTSP视频流嵌入到谷歌Chrome等VUE页面中实时播放方案(图文教程)

    近期在做一个智慧城市项目,要求将海康威视.大华等摄像头RTSP视频流在Chrome.Firefox.Edge等浏览器中播放,并且要求延迟必须要低,能到多低就多低,最好是实时视频. 小编了解很多不同的方 ...

  5. 传统大华海康宇视安防摄像头RTSP流如何转webrtc直播低延时无插件浏览器视频播放

    传统大华海康宇视安防摄像头RTSP流如何转webrtc直播低延时无插件浏览器视频播放 1.问题场景 2.WEBRTC延时对比 3.LiveNVR支持WEBRTC输出 4.RTSP/HLS/FLV/RT ...

  6. 用猿大师播放器在网页上同时播放20路以上海康威视高分辨率(1920*1080)摄像头RTSP视频流?

    问: 同时播放分辨率为1920*1080的高清分辨率的摄像头视频流,找了很长时间试过无数方法均不能满足,服务器转码方案卡顿非常严重,几乎不能播放.了解到猿大师可以用到本机的硬件解码和加速,播放高清视频 ...

  7. vlc播放海康威视摄像头rtsp rtmp视频教程

    前言 目前做的项目,需要局域网下海康摄像头web端网页上实时播放视频数据.本次项目使用的是海康威视的摄像头进行实时监控. 目的:使用vlc播放rtsp及rtmp视频流. 软件版本:vlc3.0.11版 ...

  8. 开源流媒体服务器ZLMediaKit在Windows上运行、配置、按需拉流拉取摄像头rtsp视频流)并使用http-flv网页播放

    场景 目前市面上有很多开源的流媒体服务器解决方案,常见的有SRS.EasyDarwin.ZLMediaKit和Monibuca等. 1.SRS GitHub - ossrs/srs: SRS is a ...

  9. 【每天一个没用的干货】海康摄像头rtsp流 不登录即播放

    众所周知, 通过VLC播放海康摄像头的视频流, 需要用rtsp://[IP地址]:554 然后输上用户名和密码 By chance 我从海康官网下载了软件VSPlayer(?你是不是对visual s ...

最新文章

  1. js获取URL请求参数与改变src
  2. Java快速判断是不是手机号
  3. logz.io一个企业级的ELK日志分析器 内部集成了机器学习识别威胁——核心:利用用户对于特定日志事件的反馈处理动作来学习判断日志威胁 + 类似语音识别的专家系统从各方收集日志威胁信息...
  4. jsp 连接mysql空指针_java jdbc与mysql为什么连接不上并且抛出空指针异常?
  5. 神策数据宣布与微软进行深度合作 共拓大数据生态圈
  6. 捕获异常VS抛出异常
  7. 基于javaweb jsp+servlet学生宿舍管理系统
  8. python socket文件传输
  9. gnome没有命令行_命令行提示,喜欢GNOME的8个理由,自动Raspberry Pi备份等
  10. 在STM32的官方库切换芯片型号
  11. display: flex; 的兼容问题解决办法
  12. 卖出总数的一半又少8个_(完整版)第九讲还原问题(三年级奥数)
  13. 手机 com.android.backupconfirm可以删除吗,手机上什么文件可以删除?答案都在这里了...
  14. matlab 车牌识别源码,车牌识别的matlab程序
  15. 运用getParameterNames()方法和getParameterValues()方法获取请求参数名称和内容
  16. w ndows 10关机快捷键,win10关机有什么快捷键 win10关机快捷键及使用小技巧【图文】...
  17. 【AAAI 2021】全部接受论文列表(三)
  18. 亚马逊多账号防关联的解决方式
  19. 华为p30怎么删掉云相册的照片_华为手机云空间满了,教你如何清理
  20. 《云计算技术与应用》最新章节测试答案

热门文章

  1. Cadence Allegro删除尺寸标注图文教程及视频演示
  2. Navicat Premium 连接服务器oracle 提示ORA-01017:用户名/口令无效;登陆被拒绝
  3. android 人脸道具,Faceunity 面部跟踪和虚拟道具 SDK 在 Android 平台中的集成 Demo
  4. 项目管理计算机考试试题,计算机软件项目管理考试试题及答案.doc
  5. 【通信原理】思维导图
  6. 技术网红受邀面试阿里P9,失败后怒发文痛批P10给自己穿小鞋!
  7. html获取访客ip,jQuery获取访问者IP地址的方法(基于新浪API与QQ查询接口)
  8. python-递归删除空文件夹、遍历目录文件
  9. [python] 字符串格式化 (%操作符)
  10. python爬虫逆向|某手网页滑块逆向分析