nginx对伪流媒体的支持

一、ngx_http_mp4_module模块

ngx_http_mp4_module模块提供伪流媒体(pseudo-streaming)服务端支持, 将mp4、m4v、m4a等多媒体文件流式传输。可以在http请求中用start参数表示播放的起始时间,使用end参数(从1.5.13版本开始引入)表示播放结束时间。如果请求中不带start或end参数,请求的多媒体文件将被当作静态文件返回。

ngx_http_mp4_module模块默认未安装,需要在安装的configure阶段指定--with-http_mp4_module参数,例如:./configure --prefix=/usr/local/nginx --with-http_mp4_module

如果未安装ngx_http_mp4_module模块会提示指令不被支持:

图片

二、ngx_http_flv_module模块

ngx_http_flv_module模块为flash视频文件(FLV格式)提供伪流媒体的服务端支持,http请求中使用start参数表示播放起始位置。 ngx_http_flv_module模块默认未安装,需要在configure阶段指定--with-http_flv_module参数,如./configure --prefix=/usr/local/nginx --with-http_flv_module。 

使用flv指令启用ngx_http_flv_module模块,如:

location /videos/ {
 alias /var/www/video/;
 # 启用flash流媒体支持
 flv;
}

如果未安装with-http_flv_module模块会提示flv指令不支持:

图片

三、测试

1.nginx配置:

location /videos/ {
 
    alias /var/www/video/;

    # 启用mp4流媒体支持
    mp4;
    
    # 处理mp4文件的缓冲区初始大小,默认512K
    mp4_buffer_size 1m;
    
    # 处理mp4文件的最大缓冲区大小,默认10m
    mp4_max_buffer_size 20m;
    
    
    # 启用flash流媒体支持
    flv;
    
    # 允许跨域访问
    add_header Access-Control-Allow-Origin *;
}

2.播放测试

PotPlayer播放器中打开链接:

图片

播放效果:

图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值