Využití streamovaného videa ve výukových kurzech
Technická zpráva CESNETu
číslo 17/2005
k dispozici též ve formátech PDF,
PostScript a
XML.
Ivo Bažant
1. prosince 2005
1 Úvod
Elektronická podpora výuky je v dnešní době velice často využívána. Studenti i učitelé mají z tohoto způsobu výuky mnoho výhod (pro studenty je to např. studium libovolným tempem kdykoli a kdekoli, pro učitele je to, po vynaložení jistého počátečního úsilí, pomoc a ulehčení práce např. při opravování úkolů). Elektronickou podporu výuky lze zevrubně rozdělit na dvě části - online a offline výuku. Offline přístup je založen na distribuci výukových materiálů na určitých datových médiích (v současné době nejčastěji na CD), zatímco online výuka nejčastěji využívá funkcí implementovaných v systémech pro řízení výuky (LMS - Learning Management System). Tyto systémy jsou softwarové aplikace určené pro řízení a dohled všech aktivit vztahujích se k výukovému procesu organizace. Mezi základní vlastnosti LMS patří: administrace uživatelů a tříd, distribuce výukových materiálů, automatické vyhodnocování testů, podpora různých komunikačních nástrojů (např. diskuzní fórum, e-mail, videokonference) a další. Tato zpráva je zaměřena na využití streamovaného videa, a proto uvažujeme jen online podporu výuky.
Základem elektronické podpory výuky jsou samozřejmě elektronické výukové kurzy. Aby byl výukový kurz úspěšný, je nutné studenta zaujmout; student nesmí být jen pasivní příjemce informací, ale musí být průběžně aktivizován a musí být zavedena jistá forma zpětné vazby. Toho lze docílit pomocí různých interaktivních prvků ve výukovém kurzu (např. slepé mapy) nebo jinými prostředky (např. diskusní fórum, chat).
Tato zpráva je zaměřena na možnosti využití streamovaného videa v elektronické podpoře výuky, zejména ve spolupráci s dalšími typy médií (obrázky, animace a text), protože samostatné přehrávání streamovaného videa nebývá problém. Příkladem takovéto spolupráce mohou být např. přednášky, které jsou doprovázeny prezentacemi a animacemi. Všechny níže uvedené metody jsou hodnoceny s ohledem na elektronickou podporu výuky a na možnosti distribuování pomocí systému pro řízení výuky, protože tyto systémy mívají jistá omezení, která mohou znemožnit použití dané metody. Na Katedře telekomunikační techniky se jako LMS používá produkt Microsoft Class Server, a proto možnosti spolupráce videa s ostatními typy médií jsou zohledněny právě pro tento LMS.
Pro zhodnocení vhodnosti použití některé z metod v našich podmínkách jsem uvažoval několik kritérií (vycházel jsem aktuálních podmínek, takže např. na CESNETu je již provozován streamovací server, a proto není potřeba pořizovat další).
-
Softwarové a hardwarové požadavky. V tomto kritériu jsou uvažovány požadavky na softwarové a hardwarové vybavení potřebné pro poskytování synchronizace streamovaného videa. Dále je třeba uvažovat také potřebné programové vybavení na straně klienta nutné pro využití dané metody.
-
Tvorba kurzů. Sebelepší metoda spolupráce videa s ostatními médii nemá šanci na úspěch, pokud tvorba materiálů využívající danou metodu bude tak náročná, že ji uživatelé nebudou používat. Proto je potřeba, aby tvorba kurzů byla po nainstalovaní potřebného programového vybavení byla co nejjednodušší.
-
Podpora v prohlížečích. Výukové kurzy jsou distribuovány studentům prostřednictvím LMS přes Internet, kde si je po přihlášení může student prohlédnout. Studenti si mohou prohližet kurzy na mnoha systémech, a proto je důležitá podpora použité metody alespoň v nejpoužívanějších prohlížečích.
V následujících kapitolách jsou popsány způsoby, které byly vyzkoušeny pro spolupráci streamovaného videa s dalšími typy medií. Jsou to následující možnosti: Macromedia Flash a Macromedia Flash Media Server, Synchronized Multimedia Integration Language (SMIL) a použití pluginů pro přehrávání videa ve spojení s JavaScriptem.
2 Macromedia Flash
Využití aplikací vytvořených v prostředí Macromedia Flash streamovaného videa a dalších médií je z pohledu elektronické podpory výuky dobrá volba, protože v něm lze vytvořit efektní multimediální a interaktivní výukové materiály a navíc lze přehrávač Flash aplikací nainstalovat pro téměř všechny prohlížeče, takže vytvořené aplikace si může student prohlédnout kdekoli. Streamované video je možné v aplikacích Flash využít díky relativně novému produktu firmy Macromedia, který se nazývá Flash Media Server.
2.1 Macromedia Flash Media Server
Macromedia Flash Media Server (dále jen FMS) kombinuje v sobě mnoho funkcí, které umožňují vytvářet mnoho různých interaktivních multimediálních aplikací pracujících v reálném čase (např. video na přání, videokonference), jejichž výhodou je, že tvoří kompaktní celek a nenastávají případy, kdy se např. video otevře v novém okně, či samostatně v přehrávači. S ohledem na téma této zprávy je ale pro nás podstatná podpora funkcí streamovacího serveru. Pro streamování videa používá FMS svůj vlastní kodek (soubory mají příponu flv), který je kvalitativně srovnatelný s běžně používanými kodeky. Pro překodování videa do tohoto proprietárního formátu lze použít kodér dodávaný s vývojovým prostředím Flash. Při vlastním přenosu FMS detekuje kvalitu připojení klienta a podle výsledku automaticky přizpůsobuje kvalitu přenášeného videa a tím i potřebnou přenosovou rychlost.
Flash Media Server může být provozován na následujících operačních systémech:
-
Windows 2000 Server;
-
Windows 2003 Server Standard Edition;
-
Linux Red Hat Enterprise Version 3.0;
-
Linux Red Hat Enterprise Version 4.0.
Hardwarové požadavky na server jsou následující:
-
Pentium 4, 3.2GHz (Dual Xeon nebo lepší);
-
1 GB paměti RAM;
-
1 Gb/s ethernetová síťová karta.
2.2 Flash aplikace a streamované video
Pro vytvoření výukového kurzu, který bude obsahovat Flash animace či aplikace, je potřeba mít nainstalovaný software Macromedia Flash. S využitím funkcí výše zmíněného Flash Media Serveru je možné v těchto aplikacích jednoduše spouštět streamovaná videa, která jsou umístěna na FMS. Současně s tím je, díky již vytvořeným komponentám, možné toto video snadno ovládat (spouštět, zastavovat, spouštět od jisté pozice apod.) Je tedy možné všechny animace a aplikace provázat s odpovídajícím videem a reagovat tak na aktuální pozici videa nebo změnit pozici videa podle interakce uživatele.
Ukázka využití streamovaného videa a prezentace ve výukovém kurzu s použitím technologie Macromedia Flash je zobrazena na obrázku 1. Protože jsme neměli nainstalovaný vlastní Macromedia Flash Media Server, použil jsem již připravenou ukázku.
Obrázek 1: Využití Macromedia Flash
Použití této metody v elektronické podpoře výuky oproti ostatním zde zmíněným metodám má jednu velkou výhodu: vlastní Flash aplikaci je možné spustit téměř ve všech typech prohlížečů. Výhodou je také to, že celá aplikace a tedy i veškerá synchronizace je prováděna v rámci jednoho objektu (Flash aplikace), takže si Flash přehrávač veškeré řízení provádí sám. Nevýhodou je, že pro tvorbu vlastní aplikace je potřeba mít nainstalován program Macromedia Flash a pro rychlou tvorbu výukových kurzů je potřeba dobrá znalost tohoto prostředí. Další drobnou nevýhodou je to, že video, které má být streamováno musí být ve formátu flv. Ale protože se s Macromedia Flash dodává i kodér do flv formátu, který umožňuje překodovat formáty asf, avi, dv, mov, mpeg a wmv, považuji tuto nevýhodu za drobnost. S tím souvisí i to, že nelze použít běžné streamovací servery, ale musí být použit FMS.
3 Synchronized Multimedia Integration Language
Synchronized Multimedia Integration Language (SMIL) je jazyk vydaný konzorciem W3C, který je specializovaný na multimédia. První specifikace SMIL 1.0 byla vydána v roce 1999. SMIL se snaží odstranit nedostatky běžných HTML stránek (jejich "statičnost") a umožňuje tvorbu interaktivních aplikací a animací. SMIL umožňuje integrovat multimediální objekty do HTML stránek. Pracuje již s vytvořenými multimediálními objekty a "jen" popisuje jejich pozici, dobu zobrazení a jejich chování. Základní funkce jazyka lze shrnout do následujících bodů:
-
přesný popis vzhledu prezentace a umístění jednotlivých objektů;
-
popis změn prezentace v čase;
-
popis interaktivity objektů;
-
parametrizace prezentace.
SMIL je značkovací jazyk a celý je založen na specifikaci XML. Z toho vyplývají jistá specifika:
-
nutnost rozlišovat malá a velká písmena;
-
všechny tagy musí být řádně ukončeny ( <tag> ... </tag> nebo <tag />).
SMIL je vybaven relativně malým počtem různých XML elementů. Přesto je s ním možné vytvořit bohaté interaktivní multimediální prezentace. Kořenovým uzlem je tag <smil>. Ten obsahuje dvě části: <head> a <body>.
Sekce <head> popisuje vzhled prezentace, definuje možná umístění objektů a charakterizuje různé možnosti zobrazování a skrývání mediálních objektů. Dále mohou být v této části umístěna meta-data (např. informace o autorovi prezentace, době platnosti, klíčová slova).
V sekci <body> jsou pak uvedeny všechny použité objekty a jejich vzájemná synchronizace - objekty se mohou buď zobrazovat paralelně nebo sekvenčně (tagy <par> a <seq>). Tyto možnosti se dají různým způsobem kombinovat.
SMIL rozlišuje několik typů médií. Typy médií, používaný tag a používané formáty pro dané médium (možnosti použití závisí na použitém přehrávači) jsou uvedeny v následujících bodech:
-
text (<text>) ... txt, html;
-
streamovaný text (<textstream>) ... jen pro Real Player;
-
obrázek (<img>) ... gif, jpg, png;
-
animace (<animation>);
-
zvuk (<audio>) ... wav, au, mp3;
-
video (<video>) ... mpg, avi, mov, rm.
SMIL umožňuje také řízení chodu prezentace pomocí událostí. To umožňuje určitý objekt spustit (ukončit) v případě, že jiný objekt byl spuštěn, ukončen nebo že na něj uživatel kliknul. Použití událostí se definuje atributy begin a end u odpovídajících objektů.
Další funkcí jazyka SMIL je možnost přizpůsobit prezentaci určitým vstupním parametrům. Těmi parametry mohou být: použité rozlišení a barevná hloubka nastavení zobrazení, rychlost připojení k Internetu, jazyk uživatele a další. Tato parametrizace umožňuje např. přehrávat videa odpovídající rychlosti připojení, zobrazit texty v jazyce, kterému uživatel rozumí, a mnoho dalších možností, které vylepšují kvalitu celkové prezentace.
Ukázka výukového kurzu s využitím jazyka SMIL je zobrazena na obrázku 2.
Obrázek 2: Využití jazyka SMIL
Pozn. U tohoto a následujícího obrázku bylo obrázek videa vložen do obrázku ve Photoshopu, protože při uložení obrazu se obrázek videa neuloží.
Prezentace vytvořené pomocí jazyka SMIL mohou být přehrávány buď pomocí java apletu přímo v prohlížeči (v tomto případě jsou zde omezení týkající se možných zobrazovaných formátů - např. nelze zobrazit videa) nebo pomocí externího programu (např. Real Player). Tento externí program může být implementován jako plug-in v prohlížeči a pak lze přehrávat prezentace také přímo v okně prohlížeče.
Díky tomu, že jazyk SMIL pracuje s jednostlivými objekty jako s celkem (nezajímá se o obsah jednotlivých objektů) a že je popisován jazykem založeným na XML, lze vytvořené prezentace velice snadno měnit a pro tvorbu a editaci prezentací si lze vystačit s obyčejným textovým editorem (to samozřejmě neplatí pro úpravu samotných objektů). Oproti předchozí metodě je tu ale větší problém s rozšiřitelností. V současné době existuje Real Player pro většinu operačních systémů, takže jediným problémem zůstává, že v nekterých případech se musí prezentace otvírat v externím okně, což není pro výukový kurz nejlepší řešení.
4 JavaScript
JavaScript je skriptovací programovací jazyk, který je zpracováván a prováděn na straně klienta, a umožňuje řídit chování prohlížeče. Vkládá se buď přímo do HTML kódu nebo se zapisuje do externích souborů, na které je pak v HTML kódu odkaz. Základní vlastnosti JavaScriptu jsou:
-
pracuje pouze na straně klienta (má omezené funkce - např. nemůže přistupovat k souborům);
-
rozlišuje malá a velká písmena;
-
má základní podporu objektového programování;
-
je interpretovaný - nemusí se kompilovat;
-
nepoužívá typovou kontrolu.
S využitím JavaScriptu lze docílit podobných výsledků jako při použití jazyka SMIL a java apletu. Navíc je při této kombinaci možné použít i video, které je spouštěno přehrávačem (je ale potřeba, aby bylo možné tento přehrávač ovládat pomocí JavaScriptu).
Ukázka synchronizace streamovaného videa s ostatními typy medií s využitím JavaScriptu je na obrázku 3.
Obrázek 3: Využití JavaScriptu pro synchronizaci videa a prezentací
Při využití JavaScriptu je největší problém se správnou funkcí napsaného kódu v různých prohlížečích. Zatím se podařilo úspěšně propojit streamované video s dalšími typy médií jen v Internet Exploreru, což je i přes to, že je tento prohlížeč nejčastěji používaný, nepostačující. Proto by se měly najít možnosti pro zobrazování v jiných prohlížečích. Další nevýhodou používání JavaScriptu je náročná úprava ve výsledné prezentaci. Nejlepším řešením je vynaložení určitého počátečního úsilí a vytvoření API rozhraní, které by zajišťovalo správnou funkci ve většině prohlížečích a zároveň by umožňovalo jednoduše vytvářet a měnit požadované prezentace. Při použití JavaScriptu není potřeba speciální programové vybavení a je možné používat jednoduchý textový editor.
5 Závěr
Cílem této zprávy nebylo popsat všechny možnosti synchronizace streamovaného videa s ostatními typy médií (textem, obrázky, animacemi), ale vyzkoušet funkčnost některých z možných metod v prostředí systému pro řízení výuky (v našem případě Microsoft Class Serveru). Všechny tři výše uvedené metody jsou použitelné, ale každá z nich má jisté výhody a nevýhody a volba nejvhodnější metody záleží na volbě hodnotících kritérií.
Využití JavaScriptu se nabízí jako jedno z možných a celkem jednoduchých řešení. Při této metodě není nutné instalovat nějaké zvláštní programové vybavení, JavaScript je prohlížeči podporován a jeho schopnosti jsou pro jednoduché prezentace postačující. Při použití JavaScriptu však narazíme na několik problémů. Každý prohlížeč může interpretovat JavaScript vlastním způsobem (největší rozdíly jsou asi mezi Internet Explorerem a ostatními prohlížeči), dále je pro možnost synchronizace streamovaného videa s ostatními položkami pomocí JavaScriptu nutný přehrávač videa, který je možné pomocí JavaScriptu ovládat.
Budeme-li hodnotit metody z hlediska použitelnosti v různých prohlížečích a operačních systémech, bude nejlepším řešením Macromedia Flash Media Server, protože Flash přehrávače jsou dostupné do téměř všech typů prohlížečů. Další výhodou je široké pole různých možností, které lze vytvořit (např. vytvořit interaktivní animaci a podle interakce spouštět video od určité pozice). Nevýhodou této metody je, že vyžaduje dobrou znalost prostředí Macromedia Flash, ve kterém se výukové materiály vytvářejí. Dále je nutné mít nainstalovaný Flash Media Server. Protože je v současné době na CESNETu provozován streamovací server, nejeví se pořízení MFS jako vhodné, a proto tuto metodu musíme z našeho pohledu zavrhnout. Pokud si ale organizace musí pořídit vlastní streamovací server a má programátory, kteří ovládají tvorbu Flash animací, je FMS pro tento případ asi nejlepší volbou.
Z pohledu jednoduchosti tvorby a editace výukových kurzů je z uvedených metod jednoznačně nejlepší jazyk SMIL. Díky jeho struktuře založené na XML je velice jednoduché upravovat jednotlivé prezentace a nabízené možnosti jsou obvykle postačující. Nevýhodou je zatím menší rozšiřitelnost oproti Macromedia Flash a případné zobrazování prezentace do nového okna v externí aplikaci (např. Real Player). Pokud dojde k výraznějšímu rozšíření tohoto jazyka, je SMIL velmi vhodným kandidátem pro synchronizaci streamovaného videa s ostatními typy médií.
Použitá literatura
| [Gul04] |
Andrew Guldman: >Building a Video Presentation with Macromedia Flash MX
Professional 2004 Media Components. http://www.macromedia.com/devnet/flash/articles/media_components.html |