Silverlight 3.0 : Prehrávanie multimediálnych súborov

Published Friday, November 06, 2009 10:21 AM

Nástup televízie s vysokým rozlíšením, si vyžiadal nasadiť účinnejšie kompresné metódy, aby sa existujúca kapacita prenosových pásiem lepšie využila. Preto Silverlight 3 podporuje komprimačný algoritmu videa H.264, MPEG-4 AVC, pri ktorom je komprimované video prenášané v transportnom toku (kontajneri) MPEG-2. Kodeky H.264 umožnia oproti MPEG-2 znížiť nároky na kapacitu pri prenose videa dva až trikrát. Podporované sú aj formáty videa, ktoré využívajú YouTube, iPhone a Flash. Grafický výkon aplikácií môže podstatne stúpnuť nakoľko Silverlight 3 podporuje GPU akceleráciu, teda akceleráciu na úrovni grafickej karty. Vyšší grafický výkon potom umožní aj najnáročnejšie aplikácie spúšťať v celoobrazovkovom režime.

V našom príklade sme využili súbor „Wildlife.wmv“, ktorý je implicitne umiestnený do knižnice dokumentov, konkrétne videí v operačnom systéme Microsoft Windows 7. Súbor prekopírujte napríklad do priečinka aplikácie. V záložke okna „Project“ v pravej časti obrazovky aktivujte kontextové menu a vyberte položku „Add Existing Item...“. Takto pridáte video súbor do projektu. Súbor sa zobrazí v okne „Project“. Dvojitým kliknutím na ikonu súboru, alebo presunom symbolu videa na plochu aplikácie sa pridá do XAML kódu objekt MediaElement pre prehrávanie videa:

<MediaElement x:Name="Wildlife_wmv" Margin="318,239,-958,-479"
Source="/Wildlife.wmv" Stretch="Fill"/>

 

Všimnite si, že pri tomto návrhovom úkone bol vytvorený prvok typu MediaElement s názvom „Wildlife_wmv“. Názov bol odvodený od mena multimediálneho súboru, ktorý sa bude prostredníctvom prvku MediaElement prehrávať. Tento názov potom budete používať v kóde, keď budete chcieť doplniť ovládanie prehrávania.

Teraz môžeme klávesom „F5“ projekt spustiť a otestovať. Po otvorení prehľadávača sa automaticky začne prehrávať videosúbor, zatiaľ bez možnosti ovládania. Preto je v ďalšej fáze príkladu potrebné do projektu pridať aspoň základné ovládacie prvky, pre zastavenie a pre opätovné spustenie prehrávania:

<Grid x:Name="LayoutRoot" Background="White">
	<Grid.ColumnDefinitions>
		<ColumnDefinition Width="*" />
		<ColumnDefinition Width="*" />
		<ColumnDefinition Width="*"/>
	</Grid.ColumnDefinitions>

	<Grid.RowDefinitions>
		<RowDefinition Height="*" />
		<RowDefinition Height="Auto" />
	</Grid.RowDefinitions>

	<MediaElement x:Name="media" Source="wildlife.wmv" Width="300" Height="300" 
	Grid.Column="0" Grid.Row="0" Grid.ColumnSpan="3" />
	<Button Click="StopMedia" 
	Grid.Column="0" Grid.Row="1" Content="Stop" />
	<Button Click="PauseMedia" 
	Grid.Column="1" Grid.Row="1" Content="Pause" />
	<Button Click="PlayMedia" 
	Grid.Column="2" Grid.Row="1" Content="Play" />
</Grid>

 

Obslužný kód udalostí:

private void StopMedia(object sender, RoutedEventArgs e)
{
    Wildlife_wmv.Stop();
}
private void PauseMedia(object sender, RoutedEventArgs e)
{
    Wildlife_wmv.Pause();
}
private void PlayMedia(object sender, RoutedEventArgs e)
{
    Wildlife_wmv.Play();
}

 

Prehrávanie videa s tlačidlovým ovládaním

Prehrávanie videa s tlačidlovým ovládaním

 

Späť na obsah

Komentáre

Bez komentárov

Tento blog

Štítky

Ešte neboli vytvorené žiadne štítky.

Predplatné