NGINX如何实现rtmp推流服务--视频缓存

今天咱们讲解NGINX如何实现视频缓存的,不了解NGINX如何推流的能够先去看一下我上篇文章 NGINX如何实现rtmp推流服务 NGINX的rtmp推流部分的配置以下nginx

rtmp {
    server {
        listen 1935;
        application live {
            live on;
    		record all;
    		record_unique on;
    		record_path "C:/laragon/bin/nginx/nginx-rtmp/video";
    		record_suffix -%Y-%m-%d-%H_%M_%S.flv;
    		#on_publish http://127.0.0.1:8686/auth;
    		#on_play http://127.0.0.1:8686/auth;
        }
    	
        application hls {
            live on;
            hls on;  
            hls_path "C:/laragon/bin/nginx/nginx-rtmp/hls/";
            hls_fragment 8s;  
        }
    }
}

复制代码

这里主要分了两个部分讲解,一个是live推流,一个是hls的推流。后端

application live {
    live on;
	record all;
	record_unique on;
	record_path "C:/laragon/bin/nginx/nginx-rtmp/video";
	record_suffix -%Y-%m-%d-%H_%M_%S.flv;
	#on_publish http://127.0.0.1:8686/auth;
	#on_play http://127.0.0.1:8686/auth;
}
复制代码

记录全部数据缓存

record all;

复制代码

记录值惟一bash

record_unique on;

复制代码

视频缓存路径app

record_path "C:/laragon/bin/nginx/nginx-rtmp/video";

复制代码

缓存文件后缀ide

record_suffix -%Y-%m-%d-%H_%M_%S.flv;


复制代码

利用obs推流,配置以下post

点击开始推流,结果以下spa

视频存放位置
C:\laragon\bin\nginx\nginx-rtmp\video
视频缓存
stream-1585622145-2020-03-31-10_35_45.flv

复制代码

hls配置code

application hls {
    live on;
    hls on;  
    hls_path "C:/laragon/bin/nginx/nginx-rtmp/hls/";
    hls_fragment 8s;  
}

复制代码

视频保存路径cdn

hls_path "C:/laragon/bin/nginx/nginx-rtmp/hls/";

复制代码

每一段视频的大小,也就是时长,这里保存了8秒

hls_fragment 8s;  

复制代码

obs配置以下

结果以下

hls的推流会产生一个m3u8的索引,保存ts文件的索引,同时保存一个个视频片断。后端根据文件的缓存地址,能够拿到再次播放。

相关文章
相关标签/搜索