Interval.cz
P°ehrßvaΦ mΘdiφ ve strßnce

V ji₧ uve°ejn∞n²ch Φlßncφch je ukßzßno, jak p°ehrßvat zvuk na pozadφ strßnek a jak p°idat odkaz na p°ehrßvßnφ internetovΘho rßdia. V dneÜnφm Φlßnku si ukß₧eme, jak p°φmo v naÜφ strßnce zobrazit p°ehrßvaΦ a umo₧nit tak u₧ivateli komfortn∞jÜφ prßci t°eba s katalogem videoukßzek nebo zatraktivnit zpravodajsk² server o ukßzky p°φmo v Φlßnku.

ProhlΘdn∞te si ukßzku, m∞la by vypadat podobn∞ jako na nßsledujφcφch obrßzcφch:


V zobrazenΘ strßnce se objevφ p°ehrßvaΦ, jak jej znßme z naÜich Windows. Pro u₧ivatele je pohodlnΘ, ₧e mß k dispozici ovlßdacφ prvky p°ehrßvaΦe, nemusφ nikam dßl klikat nebo otevφrat zvlßÜ¥ dalÜφ okno nebo v∙bec soubor pro p°ehrßnφ stahovat. Vlo₧enφ takovΘho p°ehrßvaΦe do strßnky dosßhneme nßsledujφcφm k≤dem:

<object id="MediaPlayer" name="MediaPlayer"
  classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"
  codebase="http://activex.microsoft.com/activex/controls/
mplayer/en/nsmp2inf.cab#Version=6,4,5,715"
  width="320" height="69"
  standby="Nahrßvajφ se souΦßsti Microsoft Windows Media..."
  type="application/x-oleobject">
  <param name="filename" value="playlist.asx" />
  <param name="autosize" value="1" />
  <param name="autostart" value="1" />
  <param name="animationatstart" value="1" />
  <param name="displaysize" value="1" />
  <param name="showcontrols" value="1" />
  <param name="showaudiocontrols" value="1" />
  <param name="showdisplay" value="0" />
  <param name="showgotobar" value="0" />
  <param name="showpositioncontrols" value="1" />
  <param name="showstatusbar" value="1" />
  <param name="showtracker" value="1" />
  <param name="transparentatstart" value="0" />
  <embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"
    src="playlist.asx" filename="playlist.asx"
    name="MediaPlayer" id="MediaPlayer"
    width="320" height="69"
    autosize="0"
    autostart="1"
    animationatstart="1"
    displaysize="1"
    showcontrols="1"
    showaudiocontrols="1"
    showdisplay="0"
    showgotobar="0"
    showpositioncontrols="1"
    showstatusbar="1"
    showtracker="1"
    transparentatstart="0">
  </embed>
</object>
<noembed>
  <a href="sound.mid" target="_blank">Stßhnout zßznam</a><br />
</noembed>

VÜimn∞te si, ₧e jsou do sebe zano°eny elementy object a embed. Jde o kompatibilitu, prohlφ₧eΦ, kter² nepodporuje ActiveX, vyu₧ije definici embed. Proti standardu je zde Φßst noembed, kterß se objevφ, pokud prohlφ₧eΦ v∙bec nepodporuje vklßdßnφ aplikacφ, vysunuta mimo cel² blok embed. D∙vod je prozaick² û mßm vyzkouÜeno, ₧e toto °eÜenφ funguje ve vÜech prohlφ₧eΦφch, pokud vÜak noembed uvedeme tak, jak by m∞lo b²t podle normy, zp∙sobφ zobrazenφ takovΘ strßnky velmi Φasto pßd prohlφ₧eΦe a strßnku je tΘm∞° nemo₧nΘ zobrazit (ov∞°eno v NN 4.51, Opera 6). Pokud pou₧φvßte pro tvorbu strßnek MS Frontpage 2000 a vyÜÜφ, m∙₧ete si usnadnit prßci vyu₧itφm pr∙vodce, kter² je zdarma k dispozici ke sta₧enφ. Uveden² trik s p°idan²m noembed vÜak tento pr∙vodce do k≤du negeneruje.

Dßle si vÜimn∞te, ₧e se °ada ·daj∙ opakuje. Jednou jsou v Φßsti object a jednou v embed. Pokud budeme pou₧φvat takov²to k≤d v dynamicky generovanΘ strßnce, hodilo by se nastavit n∞kde na zaΦßtku skriptu vhodnΘ prom∞nnΘ a ty potom vypisovat (Echo v PHP, Response.Write v ASP apod.) na pat°iΦnß mφsta k≤du.

Nynφ k jednotliv²m parametr∙m. P°ehlednß tabulka vÜech parametr∙ je uvedena nφ₧e, p°esto je vÜak dobrΘ si ty hlavnφ, kterΘ jsou i v ukßzkovΘm skriptu, trochu probrat.

Parametry width a height urΦujφ velikost zobrazenΘho p°ehrßvaΦe a to vΦetn∞ p°φpadn²ch ovlßdacφch prvk∙. Pro zvukovΘ zßznamy je tedy dobrΘ urΦit velikost napevno, a to 320 x 69 (zjiÜt∞no experimentßln∞, vyhovuje pro v∞tÜinu prohlφ₧eΦ∙ a verzφ instalovanΘho Windows Media Playeru). Pokud jde o videozßznam, pak je dobrΘ uvΘst rozm∞ry tam, kde je znßme dop°edu, pokud je neznßme, tyto parametry je lΘpe vynechat a nastavit mo₧nost autosize=1, p°ehrßvaΦ si pak nastavφ velikost automaticky.

Bohu₧el, naΦtenφ strßnky m∙₧e b²t provßzeno nep°φjemn²m bliknutφm, proto se takΘ hodφ zvolit mo₧nost transparentatstart=1. P°ehrßvaΦ pak bude viditeln² a₧ v okam₧iku, kdy mß co p°ehrßvat. Pokud uvedeme Üφ°ku menÜφ ne₧ 300, je dobrΘ vypnout n∞kterΘ ovlßdacφ prvky, jinak budou nehezky zdeformovanΘ, p°φpadn∞ je mo₧nΘ vypnout ovlßdacφ prvky ·pln∞.

parametrv²znam
allowchangedisplaysizepovolit zm∞nu velikosti zobrazenφ
autorewindpo skonΦenφ p°ehrßvßnφ p°ejφt na zaΦßtek mΘdia
autosizenastavit velikost p°ehrßvaΦe automaticky podle p°ehrßvanΘho mΘdia
autostartzahßjit p°ehrßvßnφ automaticky
animationatstartzobrazovat animovanΘ logo Windows Media p°i naΦφtßnφ nebo p°ipojovßnφ se k mΘdiu
balancenastavenφ vyvß₧enφ stereofonie, hodnoty jsou od -10000 do 10000
bufferingtimepoΦet sekund pro naΦtenφ do mezipam∞ti p°ed zahßjenφm p°ehrßvßnφ, 1-5
clicktoplayp°ehrßvanφ je mo₧nΘ zahßjit i jen kliknutφm na p°ehrßvaΦ
displaysizevelikost obrazu, 0=100%, 2=200%, 1=50%
enablecontextmenupovolit ovlßdßnφ p°es kontextovΘ menu
enablefullscreencontrolspovolit prvky pro p°epnutφ na celou obrazovku
enabletrackerpovolit ovlßdßnφ posuvu v zßznamu ukazatelem pozice v zßznamu
filenamezadßnφ cesty k mΘdiu, pro starÜφ prohlφ₧eΦe je t°eba uvΘst i "src"
loopp°ehrßvat opakovan∞
muteztlumit (vypnout) zvuk
playcounthodnota urΦuje poΦet opakovßnφ p°ehrßnφ zßznamu
raterychlost p°ehrßvßnφ, 1 je p∙vodnφ, poloviΦnφ je 0.5
selectionendpoΦet sekund od zaΦßtku mΘdia, kde mß p°ehrßvßnφ skonΦit
selectionstartpoΦet sekund od zaΦßtku mΘdia, kde mß p°ehrßvßnφ zaΦφt
showcontrolszobrazovat ovlßdacφ prvky
showaudiocontrolszobrazovat ovlßdacφ prvky pro nastavenφ zvuku (hlasitost, vypnutφ zvuku)
showdisplayzobrazovat ·daje o p°ehrßvanΘm mΘdiu
showgotobarzobrazovat adresnφ °ßdek pro mo₧nost zadßnφ cesty k mΘdiu
showpositioncontrolszobrazovat ovlßdacφ prvky pro posuv mΘdia
showstatusbarzobrazovat stavov² °ßdek p°ehrßvaΦe
showtrackerzobrazovat ukazatel pozice v p°ehrßvanΘm mΘdiu
transparentatstartzobrazovat p°ehrßvaΦ pr∙hledn² do doby, ne₧ je mΘdium p°ipraveno k p°ehrßvßnφ
videobordercolornastavuje barvu okraje zobrazovacφ Φßsti, v²chozφ je Φernß
videoborderwidthnastavφ Üφ°ku okraje zobrazovacφ Φßsti
volumep°ednastavit hlasitost p°ehrßvßnφ, -10000 je nejtiÜÜφ, 0 nejhlasit∞jÜφ

Je z°ejmΘ, ₧e nastavenφ parametr∙ je t°eba volit s rozmyslem, je zbyteΦnΘ povolovat ovlßdßnφ pomocφ ukazatele pozice, pokud nepovolφme jeho zobrazenφ. ZobrazenΘ prvky je pot°eba volit takΘ s ohledem na p°ehrßvanΘ mΘdium: zvuk, video bez zvuku, stream (nelze urΦit jeho dΘlku). Pokud skryjeme vÜechny ovlßdacφ prvky, je souΦasn∞ dobrΘ umo₧nit ovlßdßnφ kontextov²m menu a p°φpadn∞ spustit p°ehrßvßnφ kliknutφm na p°ehrßvaΦ.

Jako hodnotu filename (p°φpadn∞ src) uvßdφme jmΘno souboru mΘdia nebo i cestu k serveru se streamovan²m obsahem. Adresa m∙₧e b²t absolutnφ nebo i relativnφ, stejn∞ jako u jakΘhokoli jinΘho prvku v HTML dokumentu. Pokud jde o streamovan² formßt, m∙₧e b²t adresa uvedena i ve tvaru mms://server.cz/video.wax (viz Φlßnek o vysφlßnφ po internetu). M∙₧eme si p°ipravit i jednoduch² soubor playlistu. Dejme tomu, ₧e mßme, jako v naÜφ ukßzce, dva soubory, kterΘ chceme p°ehrßvat postupn∞. Vytvo°φme nßsledujφcφ soubor playlist.asx:

<asx version="3.0">
  <title>NßÜ playlist</title>
  <entry>
    <title>Neznßmß skladba 1</title>
    <author>Neznßm² autor 1</author>
    <copyright>Autorskß prßva neznßmß</copyright>
    <ref href="sound.mid" />
  </entry>
  <entry>
    <ref href="sound2.mid" />
  </entry>
</asx>

Pokud budeme p°ehrßvat soubor playlistu, je t°eba upravit alternativnφ odkaz na soubor ke sta₧enφ, u₧ivatel, kter² nemß k dispozici prohlφ₧eΦ, kter² podporuje Windows Media Player, toti₧ s nabφdnut²m souborem *.asx mnoho nepo°φdφ. V naÜφ ukßzce je pro zjednoduÜenφ vybrßn do odkazu prvnφ soubor, kter² je uveden v playlistu, to celΘ je ovÜem mo₧nΘ nechat dynamicky vygenerovat na serveru, vΦetn∞ dynamicky generovanΘho souboru ASX a seznamu alternativnφch odkaz∙ na soubory ke sta₧enφ. Pro kompletnφ reference ohledn∞ formßtu ASX souboru odkazuji na strßnky MSDN.

P°ehrßvaΦ lze ovlßdat takΘ pomocφ skriptu, jsou podporovßny vÜechny metody zp°φstup≥ujφcφ uvedenΘ volby a jeÜt∞ n∞kterΘ dalÜφ. (Bude-li zßjem, m∙₧eme si jejich pou₧itφ popsat v dalÜφm Φlßnku.) M∙₧eme tak vytvo°it p°ehrßvaΦ, kter² mß ·pln∞ jin² vzhled i jinΘ rozmφst∞nφ ovlßdacφch prvk∙. Zßle₧φ takΘ na verzi p°ehrßvaΦe nebo pluginu instalovanΘho v systΘmu u₧ivatele, n∞kterΘ starÜφ verze nepodporujφ vÜechny parametry, kterΘ prost∞ ignorujφ. Naopak poslednφ verze p°ehrßvaΦe Windows Media Player pro Windows XP podporuje °adu dalÜφch parametr∙.

Je lhostejnΘ, zda budeme p°ehrßvaΦ vklßdat p°φmo do strßnky, nebo si vytvo°φme zvlßÜ¥ strßnku jen pro p°ehrßvaΦ a tuto budeme otevφrat v novΘm okn∞. V ka₧dΘm p°φpad∞ bychom ale nem∞li zapomenout doplnit alternativnφ odkaz pro ty, kte°φ nemusejφ mφt Windows nebo Mac anebo jim prost∞ Windows Media Player nechutnß a nemajφ v prohlφ₧eΦi pot°ebnΘ pluginy.

Soubory ukßzky si m∙₧ete jako obvykle stßhnout.



Pavel R∙₧iΦka (16.12. 2002)
odborn² redaktor Interval.cz

Redakce Interval.cz |  Inzerce na Interval.cz |  Hledßme novΘ autory ISSN 1212-8651 
 ⌐ Zoner software, s.r.o., vÜechna prßva vyhrazena, tento server dodr₧uje prßvnφ p°edpisy o ochran∞ osobnφch ·daj∙.