采用nginx-rtmp-module搭建直播系统,现在尝试设置实时录制视频,并观看
关于nginx-rtmp-module的参数设置可参考 https://github.com/arut/nginx-rtmp-module/wiki/Directives
原本的nginx.conf的rtmp设置为:
现在改为:rtmp { server { listen 1935; #监听的端口 chunk_size 4000; application hls { live on; hls on; hls_path /www/wwwroot/default/hls;#视频流存放地址 hls_fragment 5s; hls_playlist_length 15s; hls_continuous on; #连续模式。 hls_cleanup on; #对多余的切片进行删除。 hls_nested on; #嵌套模式。 } } }
较之前的代码多了5行配置 ,需要创建 /www/wwwroot/default/tmp/rec 文件夹, 重启nginx,再用OBS开启直播推流.rtmp { server { listen 1935; #监听的端口 chunk_size 4000; application hls { live on; hls on; hls_path /www/wwwroot/default/hls;#视频流存放地址 hls_fragment 5s; hls_playlist_length 15s; hls_continuous on; #连续模式。 hls_cleanup on; #对多余的切片进行删除。 hls_nested on; #嵌套模式。 record all; record_path /www/wwwroot/default/tmp/rec; record_suffix -%d-%b-%y-%T.flv; record_unique on; record_interval 60s; } } }
随后在 /www/wwwroot/default/tmp/rec 文件夹发现刚生成的视频文件,都是flv格式, 60秒时长。
下载下来之后可以正常播放,正是刚才录制的视频。
如果使用网址观看视频,如: http://192.168.2.139/tmp/rec/test-1588431474-02-May-20-22:57:54.flv 会直接下载来看的
把视频网址嵌入到html的video标签里,无法观看, 现在flv格式的视频不太被浏览器支持
在html引用flv.js 来支持 flv视频格式的播放. 代码在 http://git.xcxzsy.top:8099/zhou/flv_js.git
还要在nginx配置中 对192.168.2.139(或域名)进行允许跨域的处理
#防止跨域问题 add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
感谢博主,喝杯咖啡~
感谢博主,喝杯咖啡~
还没有人发表评论