欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

nginx:rtmp

程序员文章站 2022-06-15 22:45:28
...
rtmp(Real Time Messaging Protocol)实时消息传送协议
Nginx rtmp功能点
支持音视频直播
支持flv/mp4视频格式,输入可以是文件或者HTTP流
支持两种流的分发模式 pushand pull
可以将直播流录制成flv文件
H264/AAC编码
支持在线转码 Online transcoding with FFmpeg
支持HLS (HTTP LiveStreaming)需要 libavformat (>= 8. 53.31.100) from ffmpeg (ffmpeg.org)
HTTP callbacks (publish/play/record/update etc)
支持外部程序(exec)
HTTP control module for recording audio/video and dropping clients
先进内存控制技术,可以在使用少量内存的情况下完成流畅的直播功能。
可以和以下协同工作。FMS server(Wirecast, FMS, Wowza,)Player(JWPlayer, FlowPlayer, StrobeMediaPlayback,)外部程序(ffmpeg,avconv,rtmpdump,flvstreamer )
Statistics in XML/XSL in machine- & human- readable form
支持跨平台 Linux/FreeBSD/MacOS
项目地址:https://github.com/arut/nginx-rtmp-module
nginx-rtmp-module Directives:https://github.com/arut/nginx-rtmp-module/wiki/Directives
总的来说Nginx-rtmp是个比较轻量的项目,可以满足直播的采集,编码和分发工作,该项目丰富的完善了nginx对视频的支持,特别的nginx-rtmp实现了对HLS的支持。
==========================================================
mac下安装:
-----------------------------------------------------------------------
brew tap homebrew/nginx
brew install nginx-full --with-rtmp-module
brew info nginx-full
-----------------------------------------------------------------------
linux下安装:
-----------------------------------------------------------------------
在源码目录下(有configure文件)
nginx -V(将 --prefix及其后面的配置 替换到下面命令--prefix=...)
sudo ./configure --prefix=... --add-module=/usr/local/Cellar/nginx_module/nginx-rtmp-module-master
make(没有make install)
==========================================================
nginx.conf:
#rtmp service 
rtmp 

#声明一个rtmp实例
  server 
  { 
#给Nginx添加一个监听端口以接收rtmp连接
     listen 1935; 
#流整合的最大的块大小。默认值为4096。这个值设置的越大CPU负载就越小。这个值不能低于128
     chunk_size 4096; 
#创建一个发布应用 live ,发布到该应用的地址就是:rtmp://ip地址:1935/live/ 
     application live 
     { 
#切换直播模式,即一对多广播
        live on;
#播放指定mp4文件目录
        #play /home/video/mp4;
        allow play all; 
     } 
   } 


http
{
...
}
==========================================================
相关标签: nginx rtmp