登录  /  注册

NGINX配置rtmp服务器实现rtmp以及hls直播

php中文网
发布: 2016-08-08 09:29:44
原创
1685人浏览过

我的nginx使用简介

先上配置:

<code><span>work_processes</span><span>4</span>;
events{
    <span>work_connections</span><span>1024</span>;
}

http{
    <span>include</span> mime.types;
    <span>default_type</span> application/octet-stream;
    <span>sendfile</span><span>on</span>;
    <span>keepalive_timeout</span><span>65</span>;
    server{
        <span>listen</span><span>80</span>;
        <span>server_name</span> localhost;
        <span>location</span> /{
            <span>root</span> html;
            <span>insex</span> index.html index.htm;
            }
        <span>location</span> /hls{
            <span>alias</span> /tmp/app;
            }
        <span>error_page</span><span>500</span><span>502</span><span>503</span><span>504</span> /50x.html;
        <span>location</span> = /50x.html{
            <span>root</span> html;
            }
        }
    }

rtmp{
    server{
        <span>listen</span><span>1935</span>;
        <span>chunk_size</span><span>4000</span>;
        <span>application</span> liaortmp{
            <span>live</span><span>on</span>;
            }
        <span>application</span> hls{
            <span>live</span><span>on</span>;
            <span>hls</span><span>on</span>;
            <span>hls_path</span> /tmp/app;
            <span>hls_frament</span><span>15s</span>;
            }
        }
    }
</code>
登录后复制

配置的解读


  • workprocesses和work_connections

work_processes: 启动进程,通常设置成cpu相等的数目。
work_connections: 单个后台worker process进程的最大并发链接数

  • http server的配置

    • sendndfile: 指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,对于普通应用,必须设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,以平衡磁盘与网络I/O处理速度,降低系统的uptime.
    • keepalive_timeout : 连接超时时间
    • server
      • listen: 配置监听哪个端口
      • server_name: 定义使用xxx访问,即IP对应的域名
      • loaction /: 默认请求
      • error_page以及紧接着的location : 定义错误提示页面
      • location /hls :定义请求hls,我在此处的声明为,如果请求hls流要在播放地址后面加上m3u8,hls的切片从/tmp/app得来,app为自己定义的
  • rtmp推流服务器的配置
    • listen : 监听端口
    • application liaortmp : 此处配置rtmp普通推流请求
    • application liaohls : 此处配置rtmp推流请求,通过hls方式播放,切片放在/tmp/app,此处正好与上面http配置的地方对应,app在此处写什么,在http处也写什么
      • live on :切换直播模式,即一对多广播
      • hls on : 在 application 切换 HLS
      • hls_path : 切片存放地址
      • hls_fragment : 切片大小,设置 HLS 分段长度,默认为 5 秒钟

  • 至此nginx的简单配置已经完成,/usr/local/conf/nginx.conf里面储存的就是上面的配置。


    • 举个列子(关于app
    • rtmp推流和rtmp播放
      • 推流地址: rtmp://x.x.x.x:1935/liaortmp/liao
      • 播放地址: rtmp://x.x.x.x:1935/liaortmp/liao
    • rtmp推流和hls直播
      • 推流地址 : rtmp://x.x.x.x:1935/liaohls/liao
      • 播放地址 : rtmp://x.x.x.x:80/hls/liao

      liao是可以替换的任意的。

    参考
    1. Nginx配置文件详细说明
    2. Nginx RTMP 模块 nginx-rtmp-module 指令详解

    以上就介绍了NGINX配置rtmp服务器实现rtmp以及hls直播,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

    智能AI问答
    PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
    来源:php中文网
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    最新问题
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号 技术交流群
    PHP中文网订阅号
    每天精选资源文章推送
    PHP中文网APP
    随时随地碎片化学习
    PHP中文网抖音号
    发现有趣的

    Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号