海康威视摄像头RTSP使用nginx推流到服务器直播教程

这篇具有很好参考价值的文章主要介绍了海康威视摄像头RTSP使用nginx推流到服务器直播教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

思路:

之前2020年在本科的时候,由于项目的需求需要将海康威视的摄像头使用推流服务器到网页进行直播。这里将自己半个月琢磨出来的步骤给大家发一些。切勿转载!!!!

使用网络摄像头中的rtsp协议---------通过rtsp链接让推流软件获取到视频流------推流软件推流到直播服务器-----直播服务器的搭建-----使用flv.js进行直播

1、需要的设备。

1、摄像头:必须是网络摄像头,支持rtsp协议。例如本教程中的海康威视摄像头

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

2、一个centos的服务器(由于只找到了centos的教程,这里没有ubuntu的教程。不过后来使用了宝塔面板,所以其实都无所谓)

3、一台window电脑(用于obs推流)

2、具体步骤

1、搭建直播服务器

1、配置centos的网络服务,让该虚拟机以局域网的形式链接到实验室的网络(网络上进行搜索,成功的标准是你的主机可以ping通你的虚拟机。例如下图

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

2、安装宝塔面板

宝塔Linux面板安装教程 - 2023年5月11日更新 - 7.9.10正式版 - Linux面板 - 宝塔面板论坛

这里有执行命令

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

2、登录宝塔面板

安装完成后,在你的shell页面会有登录的用户名和密码。还有登录网址。登录到宝塔网站后,会有建议让你安装一些软件。不要安装nginx,不要安装nginx,不要安装nginx。这里是我对我的宝塔配置,仅供参考。

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

3、安装gcc-c++环境

yum install -y gcc gcc-c++ autoconf wget

yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype*

4、下载nginx-http-flv-module

这个大家在网上找一下,如果一定是这个模块嗷,这里是我之前下载的东西

📎winshining-nginx-http-flv-module-master.zip

5、把解压后的里面的flv框架放在/www/server(这个路径如果没有,重新安装宝塔)

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

6、接下来修改宝塔的nginx的安装脚本,可以通过宝塔面板文件管理打开路径

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

7、添加自定义模块

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

8、在下面的框框里面输入这些

--add-module=/www/server/nginx-http-flv-module

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

8、然后修改后点击提交后,等待安装

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

9、安装完成后查看时候安装成模块输入(记住V是大写的)

nginx -V

10、如果你看到这着,恭喜你,已经成功一半了。

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

11、然后编写配置文件

你可以宝塔面板里面的首页里面进行修改。

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

12、然后对nginx进行配置。

user  www www;
worker_processes auto;
error_log  /www/wwwlogs/nginx_error.log  crit;
pid        /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;

events
    {
        use epoll;
        worker_connections 51200;
        multi_accept on;
    }
rtmp {
    server {
        listen 1935; #Nginx监听的RTMP推流/拉流端口
        application live {
            live on; #当推流时,RTMP路径中的APP(RTMP中一个概念)匹配myapp时,开启直播
            record off; #不记录视频
            gop_cache off;
        }
    }
}
http
    {
        include       mime.types;
		#include luawaf.conf;

		include proxy.conf;

        default_type  application/octet-stream;

        server_names_hash_bucket_size 512;
        client_header_buffer_size 32k;
        large_client_header_buffers 4 32k;
        client_max_body_size 50m;

        sendfile   on;
        tcp_nopush on;

        keepalive_timeout 60;

        tcp_nodelay on;

        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 64k;
        fastcgi_buffers 4 64k;
        fastcgi_busy_buffers_size 128k;
        fastcgi_temp_file_write_size 256k;
		fastcgi_intercept_errors on;

        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.1;
        gzip_comp_level 2;
        gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
        gzip_vary on;
        gzip_proxied   expired no-cache no-store private auth;
        gzip_disable   "MSIE [1-6]\.";

        limit_conn_zone $binary_remote_addr zone=perip:10m;
		limit_conn_zone $server_name zone=perserver:10m;

        server_tokens off;
        access_log off;

server
    {
        listen 888;
        server_name phpmyadmin;
        index index.html index.htm index.php;
        root  /www/server/phpmyadmin;

        #error_page   404   /404.html;
        include enable-php.conf;

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }

        location ~ /\.
        {
            deny all;
        }

        access_log  /www/wwwlogs/access.log;
    }
server {
            listen 8432;     #1.你想让你的这个项目跑在哪个端口
            server_name localhost;     #2.当前服务器ip
            #root /www/server/nginx/hls;
            location /live {
           
            #开启flv直播
            flv_live on;
            chunked_transfer_encoding  on;
            # 这里是要负责跨域呀
            add_header 'Access-Control-Allow-Origin' '*';
            add_header 'Access-Control-Allow-Credentials' 'true';
            
      
        } 
        }

include /www/server/panel/vhost/nginx/*.conf;
}

13、你主要需要加入的是一下配置

这个是rtmp直播配置,可以照抄

rtmp {
    server {
        listen 1935; #Nginx监听的RTMP推流/拉流端口
        application live {
            live on; #当推流时,RTMP路径中的APP(RTMP中一个概念)匹配myapp时,开启直播
            record off; #不记录视频
            gop_cache off;
        }
    }
}

这个是网页访问的配置。也可以照抄

 server {
            listen 8432;     #1.你想让你的这个项目跑在哪个端口
            server_name localhost;     #2.当前服务器ip
            location /live {
            #开启flv直播
            flv_live on;
            chunked_transfer_encoding  on;
            #配置跨域
            add_header 'Access-Control-Allow-Origin' '*';
            add_header 'Access-Control-Allow-Credentials' 'true';
        } 
 }

再修改完数据后,要重载配置,然后重启配置

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

15,开启1935和8435端口

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

2、下载配置obs

安装它就可以了

1、添加媒体源,就是摄像头的rtsp的链接。

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

随便填写就可以。

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

取消本地文件的勾选

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

然后再这个输入里面填写摄像头的rtsp的链接。

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

再本实验的rtsp为

rtsp://admin:123456789a@211.64.41.218:554/h264/ch1/main/av_stream

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

2、设置推流地址

点击文件里面的设置

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

点击推流

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

这里如果你的配置是和我的一样,那么就如此添加。

这里的live的是你配置的rtmp的application的名字。这里的串流密钥是index 你可以随便写。

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

然后,点击应用和确定

点击开始推流

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

如果这里是这样的有绿标,就说明推流成功。

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

3、运行拉流

这里有一个例子

📎直播2.zip

这里说一下url的拼写

'http://211.64.41.229:8432/live?port=1935&app=live&stream=index’中port是rtmp端口,app是rtmp中application的名字,而stream就是推流时指定的。然后就可以得到了视频

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

3、关于在线播放的配置。

在线播放也较为简单,你需要调低码率,要不然,你的直播带宽会很大。

1、调低码率

(1)、先停止推流。然后打开文件

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

(2)、打开设置。打开输出

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

(3)、然后讲输出模式调到高级,然后将串流的比特率改为800Khps

将海康威视摄像头的视频流推送到云服务器上,一些小例子,nginx,服务器,运维,音视频,实时音视频,vim,视频编解码

(4)然后点击应用,然后确定即可文章来源地址https://www.toymoban.com/news/detail-794639.html

到了这里,关于海康威视摄像头RTSP使用nginx推流到服务器直播教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue中web端播放rtsp视频流(摄像头监控视频)(海康威视录像机)

    ffmpeg下载 https://ffmpeg.org/download.html 找ffmpeg-release-essentials.zip点击下载,下载完解压 ffmpeg.exe 程序运行 添加成功后验证是否生效任意地方打开cmd窗口输入 ffmpeg 打印如下表示成功 新建一个app.js文件,同级目录下npm安装 node-rtsp-stream 我是直接写在项目里了,你们可以单独写在外

    2024年04月25日
    浏览(55)
  • 使用QT的QML实时显示海康威视网络摄像头的视频数据

    需求背景: 开发的监控软件中有个监控页面需要实时显示网络摄像头的数据,整个监控软件是基于QT的QML语言开发的。在QML中播放视频使用MediaPlayer组件就可以,但网上看到的一些都是播放录制好的视频文件,对于实时播放摄像头数据介绍的比较少。 开发环境: Debian11.3 Qt

    2024年02月09日
    浏览(108)
  • 如何降低海康、大华等网络摄像头调用的高延迟问题(一):海康威视网络摄像头的python sdk使用(opencv读取sdk流)

    目录 1.python sdk使用 1.海康SDK下载  2.opencv读取sdk流  先说效果,我是用的AI推理的实时流,延迟从高达7秒降到小于1秒 如果觉得这个延迟还不能接受,下一章,给大家介绍点上不得台面的小方法 SDK(Software Development Kit)是软件开发工具包的缩写,它是一组用于开发特定软件或

    2024年02月07日
    浏览(95)
  • 海康威视摄像头选型号指南

    看了一个星期的摄像头,经过无数的踩坑和扯皮,看了无数的说明书和博文,终于从茫茫的摄像头型号中浮上岸了,对这个摄像头是什么玩意儿有了大致清晰的认识。我只是用来开发的,怎么简单怎么来,所以和民用的方向不一样,但也可做个参考。 像素:200-400万(根据需求

    2024年02月09日
    浏览(230)
  • C# 搜索海康威视网络摄像头

    源代码 https://download.csdn.net/download/syukugai/88299251

    2024年02月10日
    浏览(52)
  • opencv调用海康威视工业摄像头

    opencv调用海康威视工业摄像头需要用到官方接口VideoCapture() 接口:cv2.VideoCapture() 作用:获取本地目录下的视频文件或者使用本电脑的摄像头获取实时数据;  “0” ,调用的是本地电脑摄像头 “1” ,调用的是外接摄像头 打开MVS  正常设置使画面正常  然后找到宽度和长度

    2024年02月13日
    浏览(53)
  • 海康威视监控摄像头连接电脑教程

    官网下载SADP软件:https://www.wolai.com/wM6rWeBrRtrfmMH2BTVUXZ 双击下载的软件进行安装 打开软件,将设备连接到摄像头,便可在软件中搜索到摄像头 选择摄像头,输入管理员密码,即可完成对摄像头的控制 设置摄像机IP地址与网口地址处于同一网段 设置网络摄像机IP地址时,保持设

    2024年02月04日
    浏览(220)
  • 基于海康SDK实现Python调用海康威视网络摄像头

    本文参考博客,写得很好: Python调用海康威视网络相机之——python调用海康威视C++的SDK Python调用海康威视网络相机C++的SDK 写本文的目的,也是快速复盘,所以没有很详细 保存视频流到本地可参考下一篇:基于海康SDK实现Python保存海康威视网络摄像头拍摄的视频 Windows11 Vis

    2024年02月02日
    浏览(67)
  • 海康威视网络摄像头网线直连电脑

    1、网络相机型号:DS-2CD3T86FWDV2 2.摄像头上电,摄像头、电脑连接同一个网线 客户端软件 - 桌面应用软件 - 海康威视 Hikvision 下载客户端软件  安装完成,创建用户,密码 设备管理--设备  刷新 ,就会看到设备,默认的ip地址的192.168.1.64 到控制面板,”以太网“ 就是我们跟摄

    2024年02月11日
    浏览(70)
  • SpringBoot+海康威视摄像头实现在前端的预览

    本文是之前文章的一篇完善文,如果你是才接触海康威视摄像头的二次开发请先阅读入门篇 在实现摄像头的预览的时候需要搞懂什么是rtsp。 rtsp是一种实时流传输协议(Real Time Streaming Protocol,RTSP),主要使用TCP和UDP完成数据的传输。 1.1 了解海康威视rtsp的url规范 【老版本】

    2023年04月08日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包