這裡是分站,目前不再維護,主站請至http://hung.tw
之前在 【亂談】音樂播放器 這篇文章
有許多使用者藉由搜尋引擎都爬到這裡來...

看的出來,其實這是為了找語法,或者找其他的播放器
而不是要聽hung 在那邊說 鼓勵不要自動播放等廢話 XD
所以,決定寫一篇最基本的embad 的語法教學
不過,剛剛再網路上看到一篇非常詳細的教學
所以hung 覺得就沒這個必要自己寫一篇了...

好啦,廢話不多說,切回正題吧







embed是個很簡便的語法,可以用來播放影音檔,通常它是用來播放Windows Media
Player支援的格式,但也可用來播放一些其他格式,只是要注意更多細節,本文最後再略微提一下這些其他格式,主要還是針對播放Media
Player支援的格式來討論。(如WMA、WMV、ASF、MPG、AVI)



<embed src=檔案位址>



上面這便是embed最簡單、最簡潔的寫法,只要這樣寫便可播放影音檔了,以下再開始討論各注意事項及設定參數。



註:本文為了讓語法呈現出來,採用全形的括弧<>,各位要自行寫語法時記得改回使用半形括弧< >。
hung: 已經改為可直接顯示的語法,不需再修改為半行括弧


 





關於結束標籤:



通常語法標籤都是成對的,有開始就有結束,有<b>就有</b>,有<font>就有</font>。可是embed語法可以不用寫</embed>,完全不會有任何影響,又省事。







關於尺寸:



如上的最簡潔寫法,尺寸可以完全不設定,這是最理想的。播放音樂檔時,會自動呈現一條完整的播放Bar,如右圖所示
(Windows Media Player版本若不同播放Bar外觀也可能不同)。播放影片時 (WMV、ASF、MPG、AVI),除了播放Bar,還會以影片的原始尺寸播放出畫面,畫面大小會自動調整。



如果因各種因素而想設定尺寸,例如想刻意拉大縮小影片的畫面,或是想改變播放Bar的大小,只要加進尺寸參數 width=寬度 height=高度 即可,範例如下:



<embed src=檔案位址 width=寬度 height=高度>



無論設定任何尺寸,都是包含播放Bar也算在內的,試一下便可瞭解。







關於自動播放:



如上的最簡潔寫法,其預設就是會自動播放。如果不想自動播放,加入參數 autostart=false 即可,範例如下:



<embed src=檔案位址 autostart=false>







關於循環播放:



如上的最簡潔寫法,其預設就是不會循環播放的,就只播放一次。如果要循環播放,加入參數 loop=true 即可,範例如下:



<embed src=檔案位址 loop=true>







關於Tracker:



嗯,Tracker,中文要怎麼翻譯啊?反正如果加進這句參數
ShowTracker=false,播放Bar就會變成像右圖那樣,應該有看出少了什麼東西吧。語法範例如下:



<embed src=檔案位址 ShowTracker=false>







關於Position Controls:



嗯,跟上一篇一樣,不會翻譯啦,反正只要加入這句參數
ShowPositionControls=false,播放Bar就會變成如右圖那樣,看出少了什麼東西了嗎?語法範例如下:



<embed src=檔案位址 ShowPositionControls=false>







關於Audio Controls:



就是關於音量控制,只要加入這句參數
ShowAudioControls=false,控制音量的tracker跟靜音鈕都會消失。語法範例如下:



<embed src=檔案位址 ShowAudioControls=false>







關於預設的音量大小:



在語法裡面如果沒有寫任何關於音量大小的設定,播放時預設的音量大小如右上圖,大約是50%的音量。



如果希望一開始播放就以100%的最大音量播放,可以加入這句參數 Volume=0,請注意,是等於「零」,不是英文字母的大寫
O。播放時的情況如右下圖,語法範例如下:



<embed src=檔案位址 Volume=0>







關於資訊視窗 (part 1):



只要加進這句參數
ShowStatusBar=true,播放Bar下方便會多出一行資訊視窗,如右圖。語法範例如下:



<embed src=檔案位址 ShowStatusBar=true>



這個參數是非常實用的,因為這行資訊視窗會秀出很多有用資訊如下載進度、播放進度、曲名、藝人名稱.......等等。秀出下載進度、播放進度尤其體貼,可以讓瀏覽者大概掌握到底要等多久才會開始播放,不用癡癡望著螢幕像個傻子一樣。我個人建議用embed語法播放影音檔時最好都加上這句參數。







關於資訊視窗 (part 2):



還有另外一種秀出資訊視窗的參數
ShowDisplay=true,會一口氣秀出四行資訊,每行各秀出一種資訊,如右圖。語法範例如下:



<embed src=檔案位址 ShowDisplay=true>



這個參數我認為很無謂!因為這些資訊,用上一個參數 ShowStatusBar=true 便可全部呈現出來,單行資訊,但用交替出現的方式呈現所有資訊。這個
ShowDisplay=true 參數占空間,一行顯示一種資訊,而最有用的下載進度、播放進度等卻不會顯示,大而不當!







關於防右鍵:



各位可以試試在播放Bar上按右鍵看內容,便可看到檔案的真實位址!或是在播放影片時也可以在畫面上按右鍵看內容,也可看到檔案真實位址。加上這句參數
EnableContextMenu=false 便可防止在播放Bar或影片畫面上按右鍵。語法範例如下:



<embed src=檔案位址 EnableContextMenu=false>



可是這語法有一點點無謂,因為光是在播放面版上防堵意義不大,還要搭配整個頁面的防堵才能收到效果。所以,自己看著辦吧。







關於隱藏面版:



隱藏面版是件很有趣的事情,只要加上這句參數 hidden=true,整個播放面版就會不見,什麼都看不到,但還是會播放歌曲
(只要你沒有取消自動播放)。語法範例如下:



<embed src=檔案位址 hidden=true>



什麼東西都沒有,卻又會播放歌曲,想到什麼了嗎?沒錯,就是最傳統的背景音樂語法<bgsound src=檔案位址>!embed加上 hidden=true
後,看不到播放面版,也不會影響版面 (完全不佔位置就對了),表面上的確和bgsound語法一模一樣,兩者可以互相取代。但在功能上,兩者還是有差別的!



用bgsound 語法播放歌曲沒有串流功能,即使播WMA也沒有,一定要檔案完全下載完畢才會開始播放。embed加 hidden=true
就有串流功能。有串流就比較好嗎?不見得!是會比較快開始播放歌曲沒錯,但如果網路繁忙或連線速度慢,播放就會斷斷續續的。bgsound語法要整首下載完才播放,等比較久才聽的到,但開始播後就保證不會斷斷續續的。



所以,現在頁面要播背景音樂有兩種選擇了,就看你要不要串流功能。







播放清單檔:



embed並非只能直接播放影音檔,它也可以播放清單檔如M3U、ASX、WPL等,這樣就可以用一句embed語法播放多首歌曲。語法範例如下:



<embed src=檔名.m3u>



當然,想這樣運用自己就得多費心製作清單檔,影音檔跟清單檔上傳時也要注意其相對位置都要擺正確。



並非所有電腦環境都支援播放各式清單檔,如果Windows Media
Player版本不夠新,可能就無法播放一些清單檔。還有如果你電腦預設使用其他軟體來播放清單檔 (非Media
Player),也可能無法支援用embed播放清單檔,得將檔案格式連結回Media Player才行。



播放清單檔功能如果搭配上述的隱藏面版功能就很有趣了,什麼都沒看到,卻會自動播放多首背景音樂。不過這無法讓瀏覽者做任何控制,強迫接受多首歌曲,很霸道!^^







播放MP3:



用embed 可以播放MP3,但有一點要注意,通常大家電腦裡不見得是預設用Windows Media Player來播放MP3,很多人是預設MusicMatch
Jukebox、WinAmp...等等,總之只要不是預設用Media Player,embed在播放MP3便會呼叫別的軟體來播放,如QuickTime或Real
Player,而這樣播放面版都會很小,變成一定要設尺寸才可以。



只有電腦裡預設用Media Player播放MP3,embed才會呼叫Media Player來播放MP3,也才會是那個熟悉的Media Player
style的播放面版,各種設定也較為方便。Anyway,語法範例如下:



<embed src=檔名.mp3>







播放Flash檔案SWF:



embed可以播放SWF,事實上SWF好像一定要用embed才能播放出來。要注意播放時一定要設定尺寸,否則畫面會變成200*200。語法範例如下:



<embed src=檔名.swf width=寬度 height=高度>



播放SWF不會出現任何播放BAR (除非SWF檔案本身有做一個),因為播放Flash並非呼叫Media Player來播放,而是直接用IE播放。







播放Quicktime影片檔案MOV及QT:



embed可以播放MOV、QT等影片檔,但是電腦裡必須有QuickTime Player,而且版本要夠新,最好是6.3以上,這樣才能看到用embed播的MOV或QT檔。另外,播放時一定要設定尺寸,否則畫面會變很小很小。語法範例如下:



<embed src=檔名.mov width=寬度 height=高度>



播放MOV或QT會有播放Bar,是QuickTime style的播放Bar,尺寸設定亦是將播放Bar算在內的,多嘗試幾次便能掌握合適的尺寸。







播放Real檔案:



先談播放Real音樂檔。第一,用embed播放Real音樂檔一定要寫尺寸大小,否則播放面版會很小,甚至看不到。第二,關於「自動播放」若什麼都不寫不去設定,預設是「不會自動播放」,若要自動播放就要加入這句參數
autostart=true。整個綜合起來語法範例如下:(圖示如右)



<embed src=檔名.ram autostart=true width=寬度 height=高度>



還有一個秀出播放面版的語法
controls=controlpanel,若加這句進去,面版會變成像右圖這樣。這句有點雞婆,多加一句話,秀出的東西卻比上面那個圖示還少,如果就是想讓面版簡潔些,就可用這句語法,高度可以設小一點啦,不需像右圖這麼高。語法範例如下:



<embed src=檔名.ram autostart=true width=寬度 height=高度 controls=controlpanel>



再來談播放Real影片。若用上述的語法播Real影片,只能聽到聲音,看不到畫面,要加上這句參數
controls=ImageWindow 才能看到畫面。當然,尺寸還是要寫,關於自動播放的設定也同上述。語法範例如下:



<embed src=檔名.ram autostart=true width=寬度 height=高度 controls=ImageWindow>



用這語法播放影片,畫面先是Real
Player的Mark,下方會顯示檔案下載進度,開始播放後就只有畫面,沒有任何控制面版,整個情況如右圖所示。所以,用這語法播放Real影片一定要設為自動播放,否則沒有播放面版根本無法控制。



那如果想要播放出畫面又要有控制面版呢?可以的,有個特殊寫法辦的到。



原理簡單來說是將整組embed語法寫兩次,兩組語法用<br>隔開。上面那組語法加入
controls=ImageWindow 參數播出畫面,沒有控制面版。下面那組語法不要多加參數 (或是加入 controls=controlpanel
),就只有控制面版,看不到畫面。然後兩組語法都要加入一個重要參數
console=_master,有這句,兩組語法的播放才會同步並互相關連,操作下面那組語法的面版亦可控制上面那組語法的播放。整個語法範例如下:



<embed src=檔名.ram autostart=true width=影片畫面寬度 height=影片畫面高度 controls=ImageWindow
console=_master>

<br>

<embed src=檔名.ram autostart=true width=播放面版寬度 height=播放面版高度
controls=controlpanel console=_master>



上面這範例,兩組embed語法以及<br>之間我都有換行讓它呈現的更清楚,各位自行寫的時候請把它們通通連起來成為一行很長的語法,這樣呈現出來的才會如右圖,畫面下面緊接著是控制面版。如果像上面範例這樣有換行,畫面跟控制面版之間會有空行間隔出現。



資料來源:TopMuZik
創作者介紹

亂寫‧亂畫‧亂吐‧胡言亂語

hung 發表在 痞客邦 PIXNET 留言(2) 人氣()


留言列表 (2)

發表留言
  • ray
  • 有個疑問

    如題
    音樂/影片播放器-embed時
    總是會蓋住我後方的div,我應後確怎麼設定才能讓div顯示在影片前面呢
  • @ ray
    沒看到您的code 很難知道情況呢 :(

    hung 於 2009/04/03 22:26 回覆

  • Somnolentcat
  • 受益良多,偷偷收藏起來,非常感謝^^
    不只認真寫還很大方的放圖片更好了解!!
【 X 關閉 】

恭喜您是我們挑選到的讀者!希望能了解您的
【痞客邦部落格使用行為】

填問卷將有機會獲得痞客邦獨家好禮喔!(注意:關閉此視窗將不再出現。)

立即填寫取消