Nginx 的RTMP打流模块配置

config配置文件:

user www www;
worker_processes  1;

error_log  logs/error.log  debug;

#pid        logs/nginx.pid;

events {
    worker_connections  65535;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  ‘[$time_local][$remote_addr][$http_x_forwarded_for] $status "$request" "$http_referer" "$http_user_agent"‘;

    access_log  logs/access.log  main;

    sendfile        on;
    keepalive_timeout  65;

    server {
        set  $wwwroot  /home/www/node/html;

        listen       80;
        server_name  localhost;
        index        index.html;
        root         $wwwroot;
        access_log   logs/node.access.log  main;

        location ~ .*\.(js|css)?$ {
            expires      2d;
            access_log   off;
        }

        #html
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|rar|zip|txt|mid|doc|ppt|pdf|xls)$  {
            expires      30d;
            access_log   off;
        }

        location /rtmp/stat {
            rtmp_stat all;
            rtmp_stat_stylesheet rtmpstat.xsl;
        }

        location /rtmpstat.xsl {
        }

        location /rtmp/control {
            rtmp_control all;
        }

        location ~* /hls/.*\.m3u8$ {
            types {
                application/vnd.apple.mpegurl m3u8;
            }
            root /tmp;
            add_header Cache-Control no-cache;
            add_header Access-Control-Allow-Origin *;
        }

        location ~* /hls/.*\.ts$ {
            types {
                video/mp2t ts;
            }
            root /tmp;
            expires    1m;
            add_header Cache-Control public;
            add_header Access-Control-Allow-Origin *;
        }

        #error_page  404              /404.html;

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        location / {

        }

    #控制rtmp模块
    location /control {
        rtmp_control all;
    }

    }

}

rtmp {
    server {
        listen 1935;
        ping 5s;
    timeout 10s;
        notify_method get;
    drop_idle_publisher 10s;

    application live {  ##这个是直播节点
        live on;

        #exec /home/www/amaiStream/streamPushToLiveNode.sh;
        exec /home/www/bin/rtmpDispatch.sh $name
                exec_kill_signal term;
            exec_publish_done /home/www/bin/pubDone.sh $name;
            #设置是否保存录像(手动)
                recorder rec {
                       record all manual;              #在活动服务器进行录像,手动控制
                       record_unique on;
                       record_notify on;
                       record_max_size 512M;
               #record_interval 30s;
                       record_path /data/recorded_flvs;
                       record_suffix wsl.flv;          #文件的后缀

                       #录像停止后,先判断是否能上传,允许后则将录像上传到OSS/
                       #exec_record_done /home/www/bin/rtmpRecorded.sh $name $path $filename $basename $dirname;
                }

    }

       application hls {
            live on;
            hls on;
            hls_path /tmp/hls;
            #live, event
            hls_type live;

            #hls_sync 100ms;

            #sequential, timestamp, system
            hls_fragment_naming system;
            hls_fragment_naming_granularity 500;

            #plain, aligned
            hls_fragment_slicing aligned;

            hls_fragment 3s;
            #hls_fragment 5s;
            hls_playlist_length 15s;
        }

    }
}
时间: 2024-10-11 17:35:23

Nginx 的RTMP打流模块配置的相关文章

Mac系统安装nginx+rtmp模块

1.安装命令 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 如果安装后, 想要卸载 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)" 2.安装nginx 先clone nginx项目到本地 brew t

TFS的nginx模块配置

在部署完基本的tfs环境之后,就可以通过tfstool工具开始上传文件,上传完的文件可以通过ds_client工具来读取,也可以通过web方式来展示,本文介绍nginx的tfs模块配置来实现http形式展现tfs文件系统上传后的文件.当然如果你高兴的话,也可以用tengine来实现. 环境介绍: tfs nameserver服务器  192.168.1.225/24 tfs dataserver服务器  192.168.1.227/24 tfs-nginx服务器       192.168.1.

nginx搭建rtmp协议流媒体服务器总结

最近在 ubuntu12.04+wdlinux(centos)上搭建了一个rtmp服务器,感觉还挺麻烦的,所以记录下. 大部分都是参考网络上的资料. 前提: 在linux下某个目录中新建一个nginx目录. 然后进入该目录去下载搭建环境所需要的一些资源包. 此处在 /root/  目录下新建一个nginx目录即: /root/softsource/ 注意:依赖包和工具包需要下载,请在良好的网络环境下安装,否则在网速不好的情况下容易下漏掉,造成后面安装失败 ====================

nginx的RTMP协议服务器

nginx的RTMP协议服务器 by ahuner 通过以下的配置,可以使nginx接收RTMP流,并在web上播放实时视频. 1.openssl安装 nginx需要http_ssl_module模块,需要openssl库. 下载opensll:http://www.openssl.org/ 最新稳定版本:openssl-1.0.1e 修改三个文件的代码,openssl-1.0.1e\test中的md2test.c.rc5test.c.jpaketest.c 将dummytest.c修改为#in

使用 nginx 和 rtmp 插件搭建视频直播和点播服务器

使用 nginx 和 rtmp 模块 ,可以很容易地搭建一个视频直播和点播服务器出来. 首先,看一下最经典的参考文献: How to set up your own private RTMP server using nginx 1. 安装 nginx 和 rtmp 模块 有关 nginx 的编译和安装比较简单,这里就不介绍了,看参考文献.这里提示以下几点: (1) 安装好 nginx 后,配置文件在这里: /usr/local/nginx/conf/nginx.conf (2) 启动 ngin

windows下流媒体nginx-rmtp-module服务器搭建及java程序调用fmpeg将rtsp转rtmp直播流

第一步:首先介绍一下所用相关技术 注:项目中使用的jwplayer插件,不支持rtsp协议,所以使用以下技术来进行转艺 FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.在这里我只用到了它的视屏格式转换功能,将rtsp协议的视频流转成rtmp Rtsp协议(实时流传输协议):  公司用的是海康的监控地址为(rtsp://admin:[email protected]/h264/ch1/main/av_stream) 3. Rtmp协议(实时消息传输协议 ):

Ubuntu下安装nginx支持rtmp和http流媒体方案

最近公司要整理一套视频点播和直播的方案,本身对这块不是很熟悉,翻阅了大量的资料,最终算是了解一下,特记录下,第一套方案,当然是最简单的nginx+http的方案,这个方案支持android和pc以及苹果端,是比较普遍的做法,下面详细记录下在Ubuntu下安装的整个过程,过程参考另一篇博客而来,只是整理下最新的各组件包. step1准备ubuntu的环境: sudo apt-get update step2 安装必要的一些libs: sudo apt-get install build-essen

网页全终端视频流媒体播放器EasyPlayer之使用 nginx 和 rtmp 插件搭建视频直播和点播服务器

使用 nginx 和 rtmp 模块 ,可以很容易地搭建一个视频直播和点播服务器出来.下面我们来看一下具体实施步骤: 1. 安装 nginx 和 rtmp 模块 有关 nginx 的编译和安装比较简单,这里就不介绍了,看参考文献.这里提示以下几点: (1) 安装好 nginx 后,配置文件在这里: /usr/local/nginx/conf/nginx.conf(2) 启动 nginx 的命令: $ sudo /usr/local/nginx/sbin/nginx -s stop $ sudo

FFmpeg总结(十二)用ffmpeg与nginx实现直播多路流并发播放

下载 nginx 和 nginx-rtmp源码: http://nginx.org/download/nginx-1.5.10.tar.gz https://github.com/arut/nginx-rtmp-module/archive/master.zip 编译安装: cd nginx-1.5.10 ./configure –with-http_ssl_module –add-module=../nginx-rtmp-module-master make make install 浏览器输