Nginx--RTMP转发和点播
环境布置推荐的几种配置点播模型直播回放测试OBS推流由于产品在内网中部署,采用Nginx 进行rtmp 进行转发。环境布置因为内网有docker,则找到一个star很高的容器 nginx-rtmp(docker)(内网部署请看docker 镜像的导出和导入)docker run -d -p 1935:1935 -p 8080:808...
·
由于产品在内网中部署,采用Nginx 进行rtmp 进行转发。
环境布置
因为内网有docker,则找到一个star很高的容器 nginx-rtmp(docker) (内网部署请看docker 镜像的导出和导入)
docker run -d -p 1935:1935 -p 8080:8080 jasonrivers/nginx-rtmp
注意:
1. 1935端口 :作为RTMP的推流和拉流端口。
2. 8080端口: 作为nginx相关http
- 此镜像配置内容为
/opt/nginx/conf/nginx.conf
的默认配置
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 8080;
server_name localhost;
location /hls {
types {
application/vnd.apple.mpegurl m3u8;
video/mp2ts ts;
}
root /tmp;
add_header Cache-Control no-cache;
add_header Access-Control-Allow-Origin *;
}
location /on_publish {
return 201;
}
# 推流的监控台
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
alias /opt/nginx/conf/stat.xsl;
}
location /control {
rtmp_control all;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
rtmp {
server {
listen 1935;
chunk_size 4096;
# RTMP 推流
application live {
live on;
record off;
on_publish http://localhost:8080/on_publish;
hls on;
hls_path /tmp/hls;
hls_fragment 1;
hls_playlist_length 20;
}
application testing {
live on;
record off;
on_publish http://localhost:8080/on_publish;
}
}
}
推荐的几种配置
点播模型
rtmp {
server {
listen 1935; #//服务端口
chunk_size 4096; #//数据传输块的大小
application video {
play /usr/local/data/video; #//视频文件存放位置,访问方式rtmp://localhost:1935/video
}
}
}
直播回放
rtmp {
server {
listen 1935;
chunk_size 4096;
application video {
play /usr/local/data/video;
}
application live {
live on;#直播模式
hls on; #这个参数把直播服务器改造成实时回放服务器。
wait_key on; #对视频切片进行保护,这样就不会产生马赛克了。
hls_path /usr/local/data/hls; #切片视频文件存放位置。
hls_fragment 10s; #每个视频切片的时长。
hls_playlist_length 60s; #总共可以回看的事件,这里设置的是1分钟。
hls_continuous on; #连续模式。
hls_cleanup on; #对多余的切片进行删除。
hls_nested on; #嵌套模式。
}
}
测试
OBS推流
OBS 作为开源推流客户端, 可以使用其进行推流操作
OBS 中
settings
–>流
进行填写你本地的推流地址(如图2.1)。
图2.1 打开
http://localhost:32779/stat
(根据你实际的IP 和 端口号) 如图2.2 。红框中我们可以看到已经在TEST 推流了。
图2.2
拉取
拉取方式 为: http://localhost:1935/live/TEST
进行拉取 TEST的推流。
更多推荐
已为社区贡献6条内容
所有评论(0)