网页端接入海康摄像头画面操作指南

一、摄像头rtsp流画面测试
首先根据相关摄像头内附的说明书对摄像头进行安装以及wifi配置或者通过网线直连,配置完成后确保摄像头画面能够在手机APP或者相关应用程序上正常播放。
然后进入海康威视官网下载并安装SADP摄像头IP搜索工具。

打开SADP(设备网络搜索),即能查看当前局域网下的所有海康摄像头IP地址。

下面进行摄像头rtsp流播放测试:
1.下载VLC media player,并安装打开。
2.打开媒体 --> 网络串流 --> 网络。

3.输入海康摄像头的rtsp地址并进行播放。海康的rtsp地址一般组成如下:rtsp://admin:{摄像头背后验证码或密码}@{摄像头IP地址}:554/h264/ch1/main/av_stream

能够正常播放后,进行下一步操作。

二、流媒体服务器搭建
要将监控画面在web端显示需要流媒体服务器的支持,当前主流的流媒体服务主要通过SRS、nginx、nodejs等搭建,下面主要介绍由node搭建的流媒体服务器。
要求电脑上有node环境,若没有请去node官网进行下载以及安装。安装完成后打开cmd输入node -v查看node版本以及检查node是否安装成功。

该流媒体服务器采用node-media-server插件,具体搭建流程如下:
1.新建相关文件夹。
2.使用cmd并进入新建的文件夹内,输入npm install node-media-server安装相关插件。

3.安装完成后在新建的文件夹内新建一个js文件,在js文件内输入相关调用以及配置代码。
const NodeMediaServer = require('node-media-server')
const config = {
    rtmp: {
        port: 1935,
        chunk_size: 60000,
        gop_cache: true,
        ping: 60,
        ping_timeout:30
        
    },
    http: {
        port: 8000,
        allow_origin:'*'
    }
}

let nms = new NodeMediaServer(config)
nms.run()

  

4.运行node服务。 显示如上界面则表示启动完成,可以在浏览器上登录 localhost:8000/admin 查看node服务页面。 
三、视频流转码以及推流 因为rtsp流无法直接在web端播放,因此通常将rtsp流转化为rtmp、httpFlv、hls等编码格式,因为rtmp依赖flash,hls流的延迟太大,因此选用httpFlv作为传输的码流格式,转码方式如下:
1.下载并安装ffmpeg。
2.配置环境变量并在cmd使用ffmpeg -h测试。
3.使用ffmpeg指令对rtsp流进行转码以及推流(下方的node端地址中的STREAM_NAME_agv_1可以随意更改表示直播的“房间”)。
4.再次打开VLC并打开网络串流,输入httpFlv码流地址进行播放,能够正常播放即转码完成。

ffmpeg -re -i "rtsp://admin:a123456789@192.168.2.25:554/h264/ch33/sub/av_stream" -tune zerolatency -c:v libx264 -preset ultrafast -s 800x600 -b:v 1800k -bufsize 1800k -maxrate 2000k -an -f flv rtmp://localhost/live/STREAM_NAME_agv_2

(将上方图片的node端地址中的rtmp改为http并加入后缀.flv即http://{node服务的IP地址以及端口}/live/STREAM_NAME_agv_1.flv)。

四、网页显示 web端显示需要支持httpFlv格式的播放器,这边选用的是LivePlayer.js。根据其相关配置配置完后,即可在web端显示监控画面。

  

原文地址:https://www.cnblogs.com/wujindong/p/14987641.html