实现FLV拖动播放注意事项

来源:互联网 发布:票务公司 知乎 编辑:程序博客网 时间:2024/06/06 19:45

nginx安装的文档网上有很多了,不再重复,这里只说明支持FLV拖动播放时需要的配置。


1、Nginx编译

要使nginx支持flv,在编译时应添加编译参数,启用flv模块

 --with-http_flv_module

如果你已经安装了nginx,但又不知道是否启用了flv模块,可以使用如下命令查看:

[root@linux1 ~]# /usr/local/nginx/sbin/nginx -V

nginx: nginx version: nginx/1.0.4

nginx: built by gcc 4.1.2 20080704 (Red Hat 4.1.2-50)

nginx: TLS SNI support disabled

nginx: configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_flv_module --with-http_sub_module --with-http_realip_module

可以看到我的nginx版本为 1.0.4,其中已经开启了 http_flv_module


2、Nginx配置

要使nginx可以支持flv拖动还需要在站点配置中开启,如下:

01server
02  {
03    listen       80;
04    server_name  media.linux.fei.cn;
05    root  /www/users/media.linux.fei.cn;
06    charset utf-8;
07    limit_rate_after 10m;
08    limit_rate 512k;
09    location ~ \.flv
10    {
11      flv;
12    }
13  }

使用location 将 .flv的文件指向flv模块即可。

以上使用了limit_rate 是为了限速,当 flv视频下载超过10M,则限速到512K,也就是先快速缓存可以播放,后面的慢慢下载。


3、常见问题

经过以上配置之后也许你的FLV视频还不能正常播放,还有几个问题需要注意:

3.1、FLV没有metadata关键帧数据

可以使用yamdi或flvtool2为你的flv视频添加关键帧( 推荐使用

下载地址:http://yamdi.sourceforge.net/

yamdi -i source.flv -o dest.flv

flvtool2 -U source.flv

3.2、添加了关键帧却依然不能拖动,播放器设置

此时要看你使用的flv播放器是否支持,你应该选择一个支持拖动的flv播放器,如:jw player,如果你没有也可以从这里下载:http://www.longtailvideo.com/players/jw-flv-player/

在配置播放器时有两个参数比较重要,如果配置不正确,也可能导致不能拖动:

1file:"video.flv",   // FLV视频地址
2type:"http",        // 数据类型,一定要配置正确,否则不能正常拖动,我就是这个参数没设置,郁闷了半天,无法拖动
3image:"preview.jpg",// 开始播放之前的预览图
4autostart:"false",  // 是否自动播放
5streamer:"start",   // 参数为 “start”,这个参数用于传递给服务器从特定的关键帧开始播放,nginx编译了 flv 模块 所以是支持的。。

 

至此,我在配置FLV视频拖放遇到的问题,都解决了。可以爽爽的拖动了。希望你也一样!

原创粉丝点击