實現FLV拖動播放注意事項

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視頻拖放遇到的問題,都解決了。可以爽爽的拖動了。希望你也一樣!

發佈了36 篇原創文章 · 獲贊 16 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章