systemctl enable nginx rvice 停⽌开机⽬启动systemctl disable nginx rvice 启动 nginx报务systemctl start nginx rvice 停⽌ nginx服务systemctl stop nginx rvice
重新启动服务器systemctl restart nginx rvice 关闭防⽕
systemctl stop firewalld. rviced Nginx部署:
1.png
有声英语配置详解
1、rtmp{}
是⼀个⽤于保存所有rtmp配置的块
在这⾥就是rtmp直播录播配置的根英语粗口
luckystar什么意思2、rver{}
rver块⾥⾯放服务器实例,⽐如配置⾥的三个application(application在第6个解释)
3、listen
listen⽐较好理解,监听某个端⼝,让nginx监听并接收rtmp连接
4、chunk_size
接收⽹络流的块⼤⼩,接触过NIO的应该⽐较清楚,基于块⽐基于流效率要⾼,chunk_size默认值是4096,⾄少128,数字越⼤服务器负载越⾼,服务器调优这⾥较为重要
5、注释:#
nginx配置⽂件⾥使⽤‘#’作为注释
北瓶鼻鲸6、application
见名知意,创建⼀个应⽤/实例,后⾯接上应⽤实例类型,如上配置,创建了三个应⽤,⽐如上⾯配置的三个服务器应⽤实例:(1)rtmp录播(vod),(2)rtmp直播(live),(3)hls直播(hls)
重要:rtmp模块的配置与nginx的http模块是两种不同的配置指令,两者不要混淆
7、vod(录播)配置详解
play 录播的播放⽬录
8、live(直播)配置详解
(1)live on/off
直播模式,⼀对多⼴播
(2)max_connections
最⼤连接数,rtmp直播流协议属于长连接协议,服务器能开多少连接要把握好,hls协议是基于http的协议,所以理论上要⽐rtmp协议并发量要⾼很多
(3)allow play/publish all/ip地址
允许来⾃指定的地址/所有地址播放和发布英语绕口令带翻译
⽐如上⾯配置使⽤allow play all允许所有地址播放实时流,如果设置成allow play 127.0.0.1 就是只允许本地播放;
新概念英语第三册课文再举个例⼦:allow publish 127.0.0.1就是允许本机发布实时流,其他地址都不能发布。成人零基础英语学习
(4)record_path
⽤来指定录制⽂件的⽬录,默认是/tmp
(5)record off/all/video/audio/keyframes/maual
record off:什么都不录制
record all:录制所有
record video:只录制视频
record audio:只录制⾳频
record keyframes:只录制关键帧
record maual:通过接⼝控制录制的启动停⽌
可以进⾏组合,⽐如:record video keyframes:就是只录制视频关键帧
(6)record suffix
nymphomaniac
录制⽂件的⽂件名后缀,默认是.flv
⽐如上⾯的配置 record suffix -%d-%b-%y-%T.flv,录制⽂件⽣成⽂件名就是这样(举例):应⽤名-24-Jul-04-17:07:45.flv
(7)record_max_size
上⾯配置:record_size 5120k,录制⽂件的最⼤值是5M
(8)record_interval
配置⾥的:record_interval 15s,就是录制⽂件的间隔,间隔15秒开始下⼀个⽚段的录制;
设置成 record_interval 0就是录制视频⽂件没有间隔;
设置成record-interval off就会把所有视频流全都写到⼀个⽂件⾥去。
重要:想要把流媒体保存⽂件,这个可以⽤来做⽂件分⽚,可以按天或者按⼩时⽣成新的⽂件,很实⽤的功能
9、hls直播配置详解
chrome web store
(1)hls on
这个参考 live on就⾏了,很简单,就是开不开启hls,hls off就是不开启
(2)hls_path
personals就是录制视频⽂件的⽬录/路径
(3)hls_playlist_length
hls播放列表长度,默认30分钟,这⾥设置成30秒:hls_playlist_length 30s
(4)hls_sync
设置hls时间戳同步阈值,通俗⼀点就是强制的⾳/视频同步,可以防⽌⾳画不同步的现象,默认是2ms,
(5)meta on
切换发送视频元数据到客户端,默认就是meta on,如果想要⽤修改后的视频得⽤meta off了
Nginx+ffmpeg实现Hls(m3u8)推流播放
Nginx部署: