独家揭秘:脱离厂商软件,轻松观看自家监控画面

yumo6669个月前 (05-02)技术文章117

在数字化安防普及的当下,监控设备已成为不少家庭守护安全的得力助手。但你是否知晓,无需依赖厂商提供的软件,仅凭手头的一些工具,就能自由观看自家的监控画面?实现这一操作,虽需要一定动手能力,但过程远比想象中有趣且实用。要是在操作时碰上难题,别担心,私信我,远程协助马上到位。

前期工具筹备

  1. 闲置电脑就位:准备一台闲置电脑,它将作为运行相关软件的基础设备,承载后续一系列操作。
  2. 获取 nginx 的 rtmp 模块:前往http://nginx-win.ecsds.eu/download/进行下载。nginx 作为一款广受欢迎的轻量级 Web 服务器与反向代理服务器,其 rtmp 模块在实时消息传输协议功能实现方面起着关键作用,是搭建视频流服务必不可少的部分 。

修改nginx配置文件 conf/nging.conf

worker_processes  1;   #Nginx进程数,推荐设置为等于CPU总核数
events {
    worker_connections  1024;  #工作模式与连接数上限
}
rtmp_auto_push on;
#RTMP服务
rtmp{
    server{
	    listen 1935;        #服务端口
		chunk_size 4096;    #数据传输块的大小
		application vod{
		    play ./vod;   #视频文件存放位置
		}
		application live{
		    live on;                     #   
			hls on;                      #开启hls直播。这个参数把直播服务器改造成实时回放服务器
			#wait_key on;                #对视频切片进行保护
			hls_path ./html/hls;         #切片视频文件存放位置(HLS,m3u8文件存放位置)
			hls_fragment 2s;             #每个视频切片的时长
			hls_playlist_length 16s;
			recorder myRecord{
			    record all manual;
				record_suffix _.flv;
				record_path ./rec;
			}
			#hls_continuous on;          #连续模式
			#hls_cleanup on;             #对多余的切片进行删除
			#hls_nested on;              #嵌套模式
		}
	}
}
#HTTP服务
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
 
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        location /live_hls{
		    types{
			    #m3u8 type设置
				application/vnd.apple.mpegurl m3u8;
				#ts分片文件设置
				video/mp2t ts;
			}
			#指向访问m3u8文件目录
			alias ./html/hls;
			    add_header Cache-Control no-cache; #禁止缓存
		}
        location /control{
		    rtmp_control all;
		}
		location /stat{
		    rtmp_stat all;
			rtmp_stat_stylesheet stat.xsl;
		}
		location /stat.xsl{
		    root ./nginx-rtmp-module-master;
		}
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
  1. 安装 FFmpeg 用于视频推流:FFmpeg 是一套功能强大的开源工具集,可实现对数字音频、视频的记录、格式转换以及流化处理,您可在http://ffmpeg.org/下载获取。以将本地test.mp4视频文件推流至本地地址rtmp://127.0.0.1/hls/live为例,使用命令为ffmpeg -re -i test.mp4 -c copy -f flv rtmp://127.0.0.1/hls/live。通过这一命令,视频便能以流的形式被推送出去 。

拉流测试环节

完成视频推流操作后,需把推送到服务器的视频流拉取下来进行播放测试,以此检验整个视频流推送流程是否顺畅。

rtmp://127.0.0.1/hls/live

http://127.0.0.1/hls/live/index.m3u8

在此,推荐使用 vlc 播放器,它兼容性强,支持众多音视频格式,能够便捷地从指定地址拉取视频流并播放 。如果想要更深一步,可以私信或私信交流,小编本人做过很多大型水利相关的监控巡检项目!

相关文章

手把手教你用 Spring Boot+FFmpeg 实现 RTSP 视频流播放

你是否在互联网大厂的后端开发工作中,遇到过这样的难题?项目需要实现实时视频推流服务,并且要支持 RTSP 视频流的播放,但尝试了多种方法都效果不佳,不仅效率低,还频频出现兼容性问题,让开发进度严重受阻...

实现浏览器播放rtsp视频流的解决方案

有同学问道:需要实时播放摄像头rtsp视频流,而浏览器不能直接播放,怎样解决?实现这个需求可以通过插件或者转码来实现。要实现这个目的,可以采用的方案非常得多,有商业的也有开源的,这里主要列举一些开源的...

HTML5中video标签如何使用(h5的video标签)

HTML5中的video标签用于播放视频文件的,在video标签中我们可以设置窗口的宽高,视频的自动播放,循环播放以及视频的封面图片等等HTML5是下一代HTML,新增了许多新的标签,这些标签实现了许...

Qt使用FFmpeg播放视频(ffmpeg播放视频命令)

一、使用场景  因为项目中需要加载MP4播放开机视频,而我们的设备所使用的架构为arm架构,其中缺乏一些多媒体库。安装这些插件库比较麻烦,所以最终决定使用FFmpeg播放视频。二、下载编译ffmpeg...

科研笔记神器:一边视频,一边笔记,轻松搞定B站视频学习

上一期,笔者介绍了一款笔记神器——Obsidian,它可以用于思维导图和知识管理。高效阅读和写作,席卷科研圈的科研神器由于计算机、互联网技术的发展,线上学习、视频学习已经成为了一种流行的学习途径,边看...

1,vue播放视频之—引入.m3u8后缀的hsl视频流

效果图:我这个是引入js的方式播放的。也可以用npm直接下载hsl.sj进行引入1.public里面index.html页面引入对应的js<script src="./jquery.mi...