Python免费家庭视频监控系统(1)
文章目录
说明:通过本教程,你不需要购买任何新的设备,就可以用家里的老旧笔记本做出一套家用视频监控系统。
要求:windows电脑一套,Linux当然也可以,但是本教程针对的是windows,原理都是相通的。
基本原理:
(1)基础篇:
用ffmpeg、nginx推rtmp视屏流,用vlc软件、手机app去看rtmp视频流。
(2)升级篇:
用Python opencv采集摄像头数据,然后用ffmpeg推送成rtmp视频流。
环境搭建
FFmpeg 安装及使用
如何安装?
链接:https://pan.baidu.com/s/1Jk119himVJhifuhU4lP0Ow
提取码:w6o0
Step1:下载完毕后,把ffmpeg.exe放到一个文件夹中,把这个文件夹设置为系统环境变量。
Step2:重启计算机。
Step3:打开cmd,输入:ffmpeg -v
Step4:如果有信息吐出来,就证明安装ok了。
ffmpeg 推rtmp视频流:
ffmpeg -re -i F:\1_视频\0_娱乐\电视剧\武林外传\武林外传\EP17.[更多请关注公众号:movie-33].mkv -vcodec libx264 -acodec aac -f flv rtmp://localhost:1935/live/home
老笔记本用的指令:
ffmpeg -re -i C:\Users\jimmy\Desktop\aaa.flv -vcodec libx264 -acodec aac -strict -2 -f flv rtmp://localhost:1935/live/home
按Q可以退出推流。
nginx网络服务器
如何获取安装包
nginx 1.7.11.3 Gryphon.zip
链接:https://pan.baidu.com/s/1t6uAKR0T23NnHvA9WlYsKQ
提取码:ocz0
nginx-rtmp-module-master.zip
链接:https://pan.baidu.com/s/1ZPo_CcxRyw89uViBV_wUfw
提取码:1zhl
如何安装
1、下载nginx 1.7.11.3 Gryphon.zip解压到C盘根目录,并重命名:nginx-1.7.11.3-Gryphon(注意文件的绝对路径上不要有中文名,要不然启动会出错)
2、下载nginx-rtmp-module-master.zip解药到C:\nginx-1.7.11.3-Gryphon根目录,并解压重命名为:nginx-rtmp-module
3、nginx-1.7.11.3-Gryphon\conf文件夹,创建nginx-win-rtmp.conf文件 填入以下内容:
worker_processes 2;
events {
worker_connections 8192;
}
rtmp {
server {
listen 1935;
chunk_size 4000;
application live {
live on;
# record first 1K of stream
record all;
record_path /tmp/av;
record_max_size 1K;
# append current timestamp to each flv
record_unique on;
# publish only from localhost
allow publish 127.0.0.1;
deny publish all;
#allow play all;
}
}
}
http {
include mime.types;
default_type application/octet-stream;
sendfile off;
#tcp_nopush on;
server_names_hash_bucket_size 128;
## Start: Timeouts ##
client_body_timeout 10;
client_header_timeout 10;
keepalive_timeout 30;
send_timeout 10;
keepalive_requests 10;
## End: Timeouts ##
#gzip on;
server {
listen 8000;
server_name localhost;
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
root nginx-rtmp-module/;
}
location /control {
rtmp_control all;
}
# For Naxsi remove the single # line for learn mode, or the ## lines for full WAF mode
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
如何开启nginx:
nginx.exe -c conf\nginx-win-rtmp.conf
## 其它指令
nginx -s reopen #重启Nginx
nginx -s reload #重新加载Nginx配置文件,然后以优雅的方式重启Nginx
nginx -s stop #强制停止Nginx服务
nginx -s quit #优雅地停止Nginx服务(即处理完所有请求后再停止服务)
nginx -t #检测配置文件是否有语法错误,然后退出
nginx -?,-h #打开帮助信息
nginx -v #显示版本信息并退出
nginx -V #显示版本和配置选项信息,然后退出
nginx -t #检测配置文件是否有语法错误,然后退出
nginx -T #检测配置文件是否有语法错误,转储并退出
nginx -q #在检测配置文件期间屏蔽非错误信息
nginx -p prefix #设置前缀路径(默认是:/usr/share/nginx/)
nginx -c filename #设置配置文件(默认是:/etc/nginx/nginx.conf)
nginx -g directives #设置配置文件外的全局指令
如果遇到nginx报错,那么用任务管理器结束掉nginx所有进程。然后再cmd里面重启nginx。(nginx.exe -c conf\nginx-win-rtmp.conf)
上图是正常的状态。
vlc播放器安装及使用
如何安装?
链接:https://pan.baidu.com/s/1tp3Im5Xc06IJkspEeb0Ryw
提取码:2gj3
或者去官网下载去。
如何使用?
1、打开网络串流。
2、输入参数:rtmp://localhost:1935/live/home
至此,第一部分已经全部完成,你已经将你的windows电脑配置成一台rtmp视频流服务器了,恭喜你!
下一篇文章会详细介绍如用用Python推送采集到的摄像头视频流。(2021/7/5)
附:如果找不到《Python免费的家庭视频监控系统(2)》,请关注我一下,到文章列表里面找一下,创作不易,麻烦点个赞给个鼓励。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/48820.html