【直播、摄像头】 Http 流媒体服务器 对接摄像机(大华海康)使用 nginx 和 ffmpeg 对rtsp进行转码获取

http搭建流媒体推送平台

简述

通过http来搭建流媒体的推流平台(对接摄像头使用,通过获取摄像头的rtsp流通过ffmpeg进行转码推送到 nginx 转成 rtmp 最后将 rtmp 转换成 flv 播放路径) 博主也是第一次做流媒体推送,部分理解可能存在问题,如果有误欢迎在下面评论改正

1、搭建nginx 流媒体推送中心

须有docker环境 如何部署请查看 → http://www.weinigb.cn/#/info?blogOid=37

1.1、安装docker镜像

docker pull mycujoo/nginx-http-flv-module:latest

1.2、创建docker挂载目录

这里可以根据实际需求进行更改

mkdir -p /data/nginx/conf
mkdir -p /data/nginx/conf.d
mkdir -p /data/nginx/html
mkdir -p /data/nginx/logs

1.3、放置文件

在conf目录和conf.d目录放置对应文件

1.4、在conf.d目录存放

default.conf ps:下载后记得改名为 default.conf

1.5、在conf目录存放

nginx.conf ps:下载后记得改名为 nginx.conf

1.6、在html目录新增1.html文件 网站文件

1.html ps:这个家伙不加没区别 自己随便加一个能打开的html页面就行了

1.7、启动nginx 容器

docker run -d -p 1935:1935 -p 80:80 --name http-flv -v /data/nginx/conf/nginx.conf:/opt/nginx/nginx.conf -v /data/nginx/logs/:/opt/nginx/logs -v /data/nginx/html/:/opt/nginx/html  mycujoo/nginx-http-flv-module:latest

如果没有启动成功要先用docker ps -a查看失败的容器,并且用docker rm CONTAILNER ID删除容器ID,再查找问题,然后docker run再启动容器,如果在确保挂载的目录和文件没有问题还是不能启动的话,那么就是权限问题了,网上说的就是在docker run后面加个 --privileged=true参数

2、部署 ffmpeg 拉流转码服务

2.1、安装方法

wget <https://ffmpeg.org/releases/ffmpeg-4.2.3.tar.bz2>
tar jxf ffmpeg-4.2.3.tar.bz2
./configure --enable-shared --prefix=/home/rooun/ffmpeg --disable-yasm
make
make install

–prefix表示程序安装的目录,这里设为/home/looham/ffmpeg。

–enable-shared表示生成动态链接库,可以供以后编程使用,同时生成的可执行程序也依赖这些动态库。

–disable-yasm表示禁用yasm。

如果不禁用yasm 就会报错

2.2、启动命令

ffmpeg -rtsp_transport tcp -i "rtsp://admin:baolu123@192.168.1.108:80/cam/realmonitor?channel=1&subtype=0" -vcodec copy -acodec copy -f flv "rtmp://192.168.230.130:1935/live/mystream"

image-20220307105306151

2.3、查看方式

# rtsp播放方式:
rtmp://192.168.230.130:1935/live/mystream
# flv播放方式
http://192.168.230.130:80/live?port=1935&app=live&stream=mystream
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值