zoukankan      html  css  js  c++  java
  • nginx模块 ngx_http_flv_module、ngx_http_mp4_module

    ngx_http_flv_module 模块提供了对 flv 视频的伪流支持。编译的时候带上 --with-http_flv_module。

    它会根据指定的 start 参数来指定跳过多少字节,并在返回数据前面附上 FLV 头。

    location ~ .flv$ {
        flv;
    }
    curl localhost/index.flv?start=10

    该请求的意思是,从视频文件 index.flv 第10个字节开始读取返回,并在返回的数据上附上 FLV 头。

    ngx_http_mp4_module 模块提供了对 MP4 视频的播放支持,相关的扩展名 .mp4 .m4v .m4a。

    start 参数指定开始播放的秒数,end指定结束的秒数比如

    http://www.freecls.com/test.mp4?start=22.33&end=33.33

    基于 H.264 格式的mp4视频能随意拖动播放的原理是,该文件会存储元数据(moov atom),该元数据里存放了索引。为了开启回放,播放器首先需要读取元数据,如果元数据在文件的前面,那么 nginx 只是简单的返回给播放器就行,如果放在视频文件后面,那么 nginx 必须读取整个文件并把元数据放在文件前面,相当耗资源,所以如果元数据在文件后面,最好自己手动先把元数据放到文件前面后再放到 nginx 目录中。

    如果播放器支持 字节范围请求 Range,那么无需此模块。

    Syntax: mp4;
    Default: —
    Context: location

    开启。

    Syntax: mp4_buffer_size size;
    Default: mp4_buffer_size 512K;
    Context: http, server, location

    设置初始缓冲大小

    Syntax: mp4_max_buffer_size size;
    Default: mp4_max_buffer_size 10M;
    Context: http, server, location

    元数据处理不能超过此大小,否则500错误。

    Syntax: mp4_limit_rate on | off | factor;
    Default: mp4_limit_rate off;
    Context: http, server, location

    响应传输限制,on 即为 factor = 1.1,最终结果为 bitrate * factor。

    Syntax: mp4_limit_rate_after time;
    Default: mp4_limit_rate_after 60s;
    Context: http, server, location

    初始多少秒不限速。

    location /video/ {
        mp4;
        mp4_buffer_size       1m;
        mp4_max_buffer_size   5m;
        mp4_limit_rate        on;
        mp4_limit_rate_after  30s;
    }

     备注

    1.测试环境centos7 64位,nginx版本为 1.14.0。
    2.读者也可以参考官方文档 nginx documentation
    3..原文地址http://www.freecls.com/a/2712/bd

  • 相关阅读:
    Leetcode 15 3Sum
    Leetcode 383 Ransom Note
    用i个点组成高度为不超过j的二叉树的数量。
    配对问题 小于10 1.3.5
    字符矩阵的旋转 镜面对称 1.2.2
    字符串统计 连续的某个字符的数量 1.1.4
    USACO twofive 没理解
    1002 All Roads Lead to Rome
    USACO 5.5.1 求矩形并的周长
    USACO 5.5.2 字符串的最小表示法
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13317309.html
Copyright © 2011-2022 走看看