flvplayer.swf flv視頻播放器使用方法


今天由於網頁上要加入一個視頻文件,就研究了一下flv視頻播放器flvplayer.swf
一、直接在html文件中加載: 
復制代碼代碼如下:

<div id="FlashFile"> 
<object type="application/x-shockwave-flash" width="470px" height="403px" 
data="flvplayer.swf?file=movies/company.flv"> 
<param name="movie" value="flvplayer.swf?file=movies/company.flv&showfsbutton=true&autostart=true" /> 
<param name="wmode" value="transparent" /> 
<param name="quality" value="high" /> 
<param name="allowfullscreen" value="true" /> 
</object> 
</div> 

二、使用javascript動態加載: 
復制代碼代碼如下:

<script type="text/javascript"> 
function PlayFlv(filename) { 
var videoname = filename; //視頻文件名 
var floder = "video"; //存放Flash視頻的文件夾,注意是相對flvplayer.swf文件的位置(images/flvplayer.swf) 
var div = document.getElementById("flvPlayDiv"); 
div.innerHTML = "<img src='images/wait.gif' alt=''>"; //增加等待圖片已增加用戶體驗; 
div.style.display = "none"; 
var result = "<table align='center'><tr><td align='center'><object type='application/x-shockwave-flash' width='470px' height='403px' "; 
result += "data='images/flvplayer.swf?file=" + floder + "/" + filename + "'>"; 
result += "<param name='movie' value='images/flvplayer.swf?file=" + floder + "/" + filename + "&showfsbutton=true&autostart=true' />"; 
result += "<param name='wmode' value='transparent' />"; 
result += "<param name='quality' value='high' />"; 
result += "<param name='allowfullscreen' value='true' />"; 
result += "</object></td></tr></table> "; 
div.innerHTML = result; 
div.style.display = "inline";//div顯示方式 

</script> 

在body區域中加入以下代碼: 
復制代碼代碼如下:

<button id="kk" type="button" onclick="PlayFlv('company1.flv')">播放1</button> 
<br /><button id="k2" type="button" onclick="PlayFlv('company2.flv')">播放2</button> 
<div id="flvPlayDiv"></div><!--視頻播放的div區域 --> 

JW FLV PLAYER 在線FLV播放器中文使用說明
使用方法:如果你僅需要播放一個FLV文件[例如“video.flv”],那么只要把“video.flv”和壓縮包內的flvplayer.swf復制到同一個目錄內,然后在頁面內添加 
程序代碼 
<object type="application/x-shockwave-flash" width="400" height="220" 
wmode="transparent" data="flvplayer.swf"> 
<param name="movie" value="flvplayer.swf" /> 
<param name="wmode" value="transparent" /> 
<object/> 
“flvplayer.swf”會自動找到同一目錄內的“video.flv”播放。也可以在“flvplayer.swf”后添加FLV文件的URL來進行播放。方法如下: 
程序代碼 
<object type="application/x-shockwave-flash" width="400" height="220" 
wmode="transparent data="flvplayer.swf?file=movies/holiday.flv"> 
<param name="movie" value="flvplayer.swf?file=movies/holiday.flv" /> 
<param name="wmode" value="transparent" /> 
</object> 
“file=movies/holiday.flv”就是參數,可以使用相對或者絕對地址。 
其他參數說明: 
如果載入影片時不需要自動播放,可以使用“autostart”參數 
例子 
程序代碼 
<object type="application/x-shockwave-flash" width="400" height="220" 
wmode="transparent" data="flvplayer.swf?autostart=false"> 
<param name="movie" value="flvplayer.swf?autostart=false" /> 
<param name="wmode" value="transparent" /> 
</object> 
多個參數可以混合使用,有效的參數列表: 
程序代碼 
file (FLV文件的地址) 
autostart (是否允許自動播放,"true"或者"false") 
image (未播放時的預覽圖片,只支持JPEG格式) 
repeat (是否重復播放) 
clicktext (開始時顯示的文字,默認是"click to play") 
下面是3.12版本http://www.cgfans.net/bbs/Medias/2007/10/jw_flv_player.zip這個是3.12版本 
這篇文檔包含了JW MP3 Player,JW FLVPlayer,JW Media Player,JW Image Rotator的安裝方法和配置方 
法 
JW PLAYERS 3.12 文檔 
1,安裝 (在你的站點里嵌入) 
2,參數 (配置) 
基本參數 
顏色參數 
界面參數 
播放參數 
互動參數 
3,播放列表 
4,自定義 
5,支持 
快速配置,可運行配置向導 
1,安裝 
下載后,你可以得到一個例子,當用文本或HTML編輯器打開的時候,你可以發現swf是用一段短小的 
javascript嵌入到頁面上的。這個Javascript是Geoff Stearns寫的swfobject.js,它解決了Flash需要激 
活的麻煩。當復制swf到你的站點的時候,不要忘記了把swfobject.js一同復制過去。並且在頁面中的 
Head中加入下面代碼 
程序代碼 
<script type="text/javascript" src="swfobject.js"></script> 
在swfobject.js的幫助下你可以方便的設置swf的路徑,寬度,高度,背景顏色和所需要的Flash播放器的版本,也可以通過它設置一組參數來配置swf。當頁面加載的時候,javascript會根據id來替換頁面中的節點。 
程序代碼 
<p id="player"><a href="http://www.macromedia.com/go/getflashplayer">Get Flash</a> to see this player.</p> 
<script type="text/javascript"> 
var so = new SWFObject('mediaplayer.swf','player','400','400','7'); 
so.addParam("allowfullscreen","true"); 
so.addVariable("file","test.flv"); 
so.addVariable("displayheight","300"); 
so.write('player'); 
</script> 
在你不能使用javascript的情況下(比如你的bsp不支持,如myspace),你可以使用"embed"的方式來插入swf。 
需要注意的是 swf可以不在該服務器上,但是如果你需要用xml的播放列表可能會有問題,因為xml必須和swf在同一個服務器上,否則會因為安全問題被組織。mp3,jpg,flv可以不在該服務器上。 
程序代碼 
<embed src="http://www.myfileserver.com/folder/mediaplayer.swf" width="400" height="400" 
type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" 
flashvars="file=http://www.myfileserver.com/folder/test.flv&displayheight=300" /> 
2,參數 
這些參數可以配置被嵌入到html中的播放器的行為和外觀。如果使用swfobject.js,可以用addVariable()方法來配置,如果使用的embed方式,可以通過定義"flashvars"屬性來配置變量,注意用"&"符號分割這些變量。 
被*號標注的同樣適用於 JW Image Rotator 
基本變量 
displayheight(number):顯示區域的高度.控制區域最小高度是20px,當該值大於或等於swf的高度時,播放列表會自動隱藏,否這會顯示。 
file*(url):要播放文件的地址。 支持單文件播放(MP3/FLV/RTMP/JPG/SWF/PNG/GIF),也支持播放列表。JW Image Rotator只支持列表 
height*(number):設置swf的高度,當使用embed方式插入的時候,在embed的屬性里已經設置了。但是有時候(特別是使用IE的時候)高度會變的不確定,影響了布局,這時候需要通過該參數設置下,該值的單位是px 
image(url):當你播放mp3,flv的時候,你可以通過該值設置一個預覽圖作為專輯封面,支持 JPG/SWF/PNG/GIF file. 你也可以在播放列表中對每一項進行設置。 
shownavigation*(true,false):該參數僅被JW Image Rotator支持。用來顯示或隱藏圖片導航。 
transition* (fade,bgfade,blocks,bubbles,circles,fluids,lines,random,slowfade): 該參數僅被JW Image Rotator支持。用來設置圖片替換的效果。 設置為"random" 將隨機的設置效果.默認值為 "fade". 
width*(number):設置swf的寬度,其他同height; 
顏色變量 
backcolor*(color):設置播放器的背景顏色。JW Media Player等默認為 0xFFFFFF (白色) JW Image Rotator默認為 0x000000 (黑色). 
fontcolor*(color):設置文字和按鈕的顏色。JW Media Player等默認為 0x000000 (黑色) JW Image Rotator默認為 0xFFFFFF (白色). 
lightcolor*(color):設置被被激活狀態的顏色。JW Media Player等默認為 0x000000 (黑色) JW Image Rotator默認為 0xCC0000 (紅色). 
界面參數 
autoscroll(true,false):當播放列表過長的時候,默認會自動顯示滾動條。當該值設置為'true'的時候,會自動根據鼠標滾動播放列表。 
displaywidth(number of pixes):設置顯示區域的寬度,當設置的比較小的時候,播放列表會顯示在顯示區域的右側而不是底部。 
kenburns* (true,false): 用以實現在運動的時候實現kb效果(Ken Burns effect),注意,當圖比較大,而且網速比較快的時候,建議打開,否則關閉。建議設置transition為"slowfade"來配合。 
largecontrols (true,false): 設置該值為true用來放大控制區域的按鈕。建議為視力不好的用戶打開 
logo* (url): 設置一個圖片用來作為右上角的水印,支持所有圖片格式,支持通明圖層的png效果最佳。 
overstretch* (true,false,fit,none): 設置圖片/影片在顯示區域的縮放。"true"等比例拉伸用來符合顯示區域。"false"僅拉伸合顯示區域。"fit"全屏顯示。"none"顯示原始大小。JW Media Player等默認為"fit",JW Image Rotator默認為"false" 
showdigits (true,false,total): 設置為"false"隱藏播放時間等信息用來節省控制區域的空間。設置為"total"用來顯示全部時間。 
showdownload (true,false):設置該值用來在控制區域顯示下載按鈕。鏈接到link所設置的地址。 
showeq (true,false): 用來顯示一個假的音頻波動效果。當播放mp3的時候打設置該值可以得到很好的效果 
showicons* (true,false): 用來顯示或者隱藏顯示區域中間的圖片,JW Media Player等默認為true。JW Image Rotator默認為false; 
showvolume (true,false): 用來設置是否顯示音量控制按鈕 
thumbsinplaylist (true,false): 設置列表中是否顯示預覽圖 
播放參數 
autostart (true,false,muted): 設置為ture,頁面加載完后會自動播放。設置為muted,會在靜音模式下自動播放,並且顯示區域中間有靜音圖標。bufferlength (number): 設置flv的緩存時間。默認為3秒 
repeat* (true,false,list): 默認為flase,從當前播放位置播放到列表尾部后停止。設置為list會播放列表中所有的項目,設置為true會循環播放。 
rotatetime* (number): 設置圖片的顯示時間。JW Media Player等默認為10秒,JW Image Rotator默認為5秒 
shuffle* (true,false): 設置為false順序播放,設置為true無序播 
smoothing (true,false): 設置為false關閉視頻平滑處理,推薦設置true用以得到更好效果。但對於大屏幕或者配置低的機器設置false是有好處的 
start* (second): 在使用RTMP 或 HTTP 流媒體的時候(非常規的flv/mp3),使用該變量准確的定位開始位置。該參數設置在XSPE格式的列表中以便准且的設置文件的章節。 
volume* (number): 設置音量,默認為80. 
互動參數 
audio* (url):用這個參數來添加一個mp3文件作為單獨的音頻,可以作為圖片的背景音樂解說等。 
bwfile (url):用以帶寬檢測的文件的地址,可以放一個圖片,或者rtmp流媒體。可以在右鍵菜單中查看到貸款數值。 
bwstreams (comma-separated list of bitrates): 
和bwfile配合使用,根據帶寬值來選擇不同的文件。如:你要播放video.flv並且設置該項的值為100,250,500,1000,當播放器發現帶寬為349kbps的時候,將會播放video_250.flv。所以他有一套有效的命名設置,他將會自動切換,哪怕是在采用播放列表的情況下。 
callback (url):設置這個參數為服務端程序(php/asp)地址用來回傳數據。在每個項播放和停止的時候會發送數據到服務器,以便在服務器端保存播放統計。 
captions (url): 設置該值用以載入一個文本格式的文本作為字幕。播放器至支持SMIL格式和DVD的SRT格式的字幕。如果你的flv文件內置字體你可以設置該值為"captionate".如果你有多頻道字幕,可以設置這個值為"captionate0", "captionate3"等。可以在列表中設置每一個項的值。 
enablejs* (true,false): 設置為true打開對javascript的支持。僅支持在線使用。javascript可以控制播放,加載媒體,獲得當前播放項的詳盡信息。 
fsbuttonlink (url):如果用戶的flashplayer版本高於(9.0.28)播放器會自動的顯示一個全屏按鈕。通過設置該值,你可以鏈接到另外的頁面用以全屏顯示。服務端程可以設定將要播放的文件。 
id (string): 播放器的唯一標識。將會被回傳到服務器端。 
javascriptid* (string):如果你的頁面上有多個播放器,你可以設置這個參數給每個播放器不同的id,這樣就可以方便的用javascript來控制。他將回傳到getUpdate()事件中。 
link (url): 通過這個參數用來設置一個可現在的版本,或者強制用戶通過該地址下載當前項。可以在播放列表中為每一項設置該值。 
linkfromdisplay* (true,false):設置顯示區域被點擊時要訪問的頁面。默認點擊顯示區域時會進行播放/暫停操作。 
linktarget* (frame): 設置鏈接目標,"_self"在當前頁打開。"_blank"在新頁面中打開。 
streamscript (url):設置這個參數為了兼容‘偽流媒體'FLV文件。 
type (mp3,flv,rtmp,jpg,png,gif,swf,rbs,3gp,mp4,m4v): 播放器會根據文件名的最后三個字符來判斷類型。在你使用服務器端語言進行重定向時,這種方法將不會再有效。所以你可以設置這個參數來告訴播放器文件類型。你也可以在播放列表中對每一項進行設置。如果播放器找不到文件類型將會被識別為播放列表。 
useaudio (true,false): 設置為false用來改變為靜音狀態。 
usecaptions (true,false):設置為false隱藏字幕. 
usefullscreen (true,false):如果你不希望用flashplayer9的全屏模式。可以設置"fsbuttonlink"參數用來替換全屏按鈕的事件。 
usekeys (true,false): 設置為"false"用來取消鍵盤操作(SPACE,UP,DOWN,LEFT,RIGHT) 
注意:你必須對?=&進行字符轉移。? → %3F, = → %3D, & → %26. 你的"file" 變量為getplaylist.php?id=123的時候必須設置為 getplaylist.php%3Fid%3D123. 
播放列表 
當播放列表中只有一個項目的時候,播放器會用單文件播放模式進行播放。播放器根據文件名來區分單文件和播放列表文件。如你的加載文件名為test.mp3的文件,播放器會用單文件播放模式去播放mp3,因為擴展名是mp3.如果你的文件名是getlist.php,播放器會認為這是個播放列表。如果你使用了動態腳本來加載一個單文件如 
播放器支持三種常用的播放列表格式來確保通用性。XSPF,RSS和ATOM。 
播放器所支持的XSPF/RSS/ATOM列表的通用標簽。 
表格 

*Image Rotator僅支持播放列表中的第一個'audio'項,被用來做為背景音樂來播放。播放器會播放所有的音樂項目。 

** "category" 元素可以用來支持廣告。你可以設置該值為"preroll", "postroll" 或 "overlay". 
使用"link"播放列表中單項的值為廣告地址。 

*** "start"元素只被XSPF的播放列表格式支持。該元素用來設置流媒體文件(HTTP or RTMP)的開始位置,單位為秒。 

**** XSPF列表格式中的"location"元素中如果不包含常見的擴展名(如 "mp3" or "flv"),可以使用"meta"元素指定文件格式。(如 <meta rel='"type">mp3</meta> ).在使用RSS和ATOM的情況下,文件格式被自動的根據mimetype來識別。 

RTMP streams, the additional "id" flashvar has to be sent as well. Example: "file=rtmp://my.streaming.server/mypath" and "id=video_one". 

注意,當你播放單文件的時候,你支持所有的參數,如你可以添加一個image,title,id,link等。如當你用單文件播放模式播放"video.flv"時你也想添加一個預覽圖,你可以設置參數"file=video.flv","image=preview.jpg".當你播放RTMP流媒體的時候,你可以添加參數"id".如"file=rtmp://my.streaming.server/mypath" ,"id=video_one". 

特別指出兩個容易出錯的地方。第一列表必須和播放器在同一個服務器上,這是flash的安全機制導致的。第二,要使用完整的地址格式包含http,以免播放器找不到文件。 

自定義 
有人多人要求我創建一些可自定義的版本。他們的很多要求其實已經可以通過設置參數來實現了。我做了一個在線配置向導可以簡單的配置這些參數。我沒有精力去滿足所有人的要求。不過在下一個版本中會有很多有趣的附加功能。 

如果你熟悉actionscript腳本語言,你可以自己修改程序添加功能。 

播放器在實例的時候會最近會加完配置和播放列表變量,然后進入MCV的生命周期。在MCV生命周期中,配置和列表管理器(feeder)始終是有效的。 

紅色標注的兩個對象的所有方法可以通過javascript調用。 

在另外的flash程序中是可以引用播放器的。只要從下載的flv文件中復制出圖像到你的flv中,並且確保將下載的com目錄復制到你的flv文件中,里面包含了所有的腳本。然后你就可以在時間軸的第一個幀的位置訪問變量了。注意要設置高度和寬度的變量,否則播放器會根據你的尺寸拉伸變形。 
如 

程序代碼 

// Set the flashvars (booleans and numbers should also be quoted) 
var width = "320"; 
var height = "240"; 
var file = "my_video.flv"; 
var autostart = "true"; 
// Start the player 
var mpl = new com.jeroenwijering.players.MediaPlayer(this.player); 
Additionally, I have made the controller a public object, so you can control the mediaplayer with the sendEvent() function from anywhere in your flash site (the schematic above has a list of all sendEvent() options). Let's continue the small script above: 

我為播放器創建了公開的controller對象,所以你可以在你程序的任何地方通過使用sendEvent()來控制播放器,如: 

程序代碼mpl.controller.sendEvent("volume",50); 
mpl.controller.sendEvent("playpause"); 

支持 

常見問題列表 

1.如果你在使用ie的情況下出現了布局錯亂的情況,那可能是大小沒有別設定好,你可以使用變量"width"和"height"來強行設置。 
2.注意,flash和javascript的安全機制會影響你的本地測試。當你的文件放在不同的服務器上的時候也會受到影響,你可以嘗試放在同一個服務器上。 
3.全屏功能只有在flash player9.028.0以上版本才能使用,如果你使用了swfobject來嵌入你的播放器,你可以使用他的自動升級功能。注意設置 "allowfullscreen" 為true 
4.如果你的進度條不動,或者你的視頻的長度有問題。那可能是你的flv沒有設置正確的metadata。你可以使用一個小工具www.buraks.com/flvmdi/. 

兩個版本使用起來稍有不同,具體請見里面說明 
官方下載鏈接:http://www.jeroenwijering.com/

如對本文有疑問,請提交到交流社區,廣大熱心網友會為你解答!! 點擊進入社區


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM