嵌入式Linux调用USB摄像头RTMP推流 系列记录(一)推流服务器搭建
windows推流服务器搭建与简单测试
ffmpeg推流命令参考: https://blog.csdn.net/chan1987818/article/details/128219230
win10配置带rtmp的nginx服务器参考: https://zhuanlan.zhihu.com/p/333836142
一、nginx和rtmp模块安装及启动
从http://nginx-win.ecsds.eu/download/ 下载nginx 1.7.11.3 Gryphon.zip;
然后解压,修改nginx的配置文件(conf\nginx-win.conf)
rtmp {
server {
listen 1935;
chunk_size 4000;
application live {
live on;
}
}
}
#2.
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
root nginx-rtmp-module/;
}
location /control {
rtmp_control all;
}

在解压后的目录打开cmd(使用powshell可能有问题)
启动命令:start nginx -c conf\nginx-win.conf

执行后打开浏览器输入http://localhost/
若看到页面说明nginx已启动:

停止nginx命令:nginx -s stop -c conf\nginx-win.conf
二、推流及播放测试:
使用电脑端obs等软件,或使用ffmpeg可以实现推流,安卓端可使用"IP摄像头"APP实现
ffmpeg功能很强大,这里只是简单测试使用,更多用法可以查找其他教程
下载ffmpeg:


下载后解压(略过添加环境变量),打开解压后的文件夹,找到ffmpeg.exe和ffplay.exe
在这个文件夹打开cmd,输入ffmpeg -re -i "ArduPilot_overview.mp4" -b:v 1500k -f flv rtmp://127.0.0.1/live/123
rtmp默认端口1935可以省略
-i后面为输入文件名,自行修改
-b:v 1500k指定码率为1500kbps
/live在配置文件中指定
/123为流的名字可以自行修改更换,播放还会用到流的名字
同路径再打开一个cmd,输入ffplay.exe rtmp://127.0.0.1/live/123 即可播放视频流



成功推流和播放视频流,rtmp服务器已经搭建好了
扩展功能:stat视频流状态监控
参考: https://blog.csdn.net/m0_47135641/article/details/125188864
自行下载nginx-rtmp-module放到nginx 1.7.11.3 Gryphon路径下,确保存在nginx-rtmp-module\stat.xsl文件,然后修改conf\mime.types,添加一行以支持xsl文件


重启(先调用stop再调用start)nginx,打开http://localhost/stat
推流后即可看到推送到服务器的视频流状态,包括编码、码率、尺寸等信息:
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)