浏览器播放rtsp视频流方案(ffmpeg + nginx转m3u8)

1.下载ffmpeg ,传送门:https://ffmpeg.en.softonic.com/

2.配置环境变量

右击我的电脑---->点击属性,打开左侧高级系统设置

点击下方的环境变量

在下方系统变量中找到path变量,选中点击下方编辑,别点成删除!!!我已经删过两次了

新建一个变量

找到这个路径,我是解压到了C盘,在路径栏复制下来,填到新建的环境变量里,点击确定就行

3.安装nginx,传送门:http://nginx.org/en/download.html

解压之后,打开nginx的文件夹,打开conf文件夹,用编译器打开nginx.conf文件,在http模块更改默认端口(保证这个端口不被占用就行)

然后添加以下代码

 # ffmpeg生成hls流的http访问配置
        location /hls {
            #若nginx\conf\mime.types中没有配置如下type,请加上,或直接在mime.types加
        	types{
        		application/vnd.apple.mpegurl m3u8;
        		video/mp2t ts;
        	}
        	root html;
        	add_header Cache-Control no-cache;
        	add_header Access-Control-Allow-Origin *;
        }

4.打开nginx中的html文件,创建hls文件夹

5.在nginx主文件夹中得到地址栏里输入cmd然后回车,打开cmd,输入命令start nginx并回车

这个时候,在浏览器里输入localhost:+nginx,conf文件中http模块设置的默认端口号,我这里是localhost:8080,能打开,就代表nginx启动成功了

6.再打开一个cmd,输入命令:

ffmpeg -rtsp_transport tcp -i "rtsp://admin:avaiden88@cnqcaegcctv.ddns.net:9990/cam/realmonitor?channel=1&subtype=1" -fflags flush_packets -max_delay 1 -an -flags -global_header -hls_time 1 -hls_list_size 3  -vcodec copy -s 216x384 -b 1024k -y  D:/nginx/nginx/html/hls/test.m3u8

ffmpeg -rtsp_transport tcp -i "rtsp://admin:avaiden88@cnqcaegcctv.ddns.net:9990/cam/realmonitor?channel=1&subtype=1" -fflags flush_packets -max_delay 1 -an -flags -global_header -hls_time 1 -hls_list_size 3  -vcodec copy -s 216x384 -b 1024k -y  D:/nginx/nginx/html/hls/test.m3u8

ffmpeg -rtsp_transport tcp -i "这里是你的rtsp地址" -fflags flush_packets -max_delay 1 -an -flags -global_header -hls_time 1 -hls_list_size 3  -vcodec copy -s 216x384 -b 1024k -y  这里是nginx文件夹html文件创建的hls文件的路径 + test.m3u8(输出出来的地址就叫这个名字,这个名字可以随意设置)

然后回车,等一会,如果cmd咋子跑,就代表转码成功,这个时候打开vlc播放器进行测试

输入http://localhost:8080/hls/test.m3u8(这里的localhost可以写成自己的ip地址)

如果能播放,就代表成功了!

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

z a x

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值