Partilhar via


Como: Reproduzir mídia usando um VideoDrawing

Para reproduzir um arquivo de áudio ou vídeo, você utiliza um VideoDrawing e um MediaPlayer. Há duas formas de carregar e reproduzir mídia. A primeira é utilizar um MediaPlayer e um VideoDrawing por si só, e a segunda forma é criar seu próprio MediaTimeline para utilizar com o MediaPlayer e VideoDrawing.

ObservaçãoObservação:

Ao distribuir mídia com o seu aplicativo, y ocê não é possível usar um arquivo de mídia sistema autônomo um recurso do projeto, sistema autônomo faria com uma imagem. No arquivo de projeto, você deve em vez disso Defina o tipo de mídia Content e conjunto CopyToOutputDirectory para PreserveNewest ou Always.

Exemplo

O exemplo a seguir utiliza um VideoDrawing e um MediaPlayer para reproduzir um arquivo de vídeo uma vez.

//
// Create a VideoDrawing.
//      
MediaPlayer player = new MediaPlayer();

player.Open(new Uri(@"sampleMedia\xbox.wmv", UriKind.Relative));

VideoDrawing aVideoDrawing = new VideoDrawing();

aVideoDrawing.Rect = new Rect(0, 0, 100, 100);

aVideoDrawing.Player = player;

// Play the video once.
player.Play();        

Para ganhar controle adicional sobre o tempo da mídia, utilize um MediaTimeline com os objetos MediaPlayer e VideoDrawing. O MediaTimeline permite que você especifique se o vídeo deve repetir.

O exemplo a seguir utiliza um MediaTimeline com os objetos MediaPlayer e VideoDrawing para executar um vídeo repetidamente.

//
// Create a VideoDrawing that repeats.
//

// Create a MediaTimeline.
MediaTimeline mTimeline = 
    new MediaTimeline(new Uri(@"sampleMedia\xbox.wmv", UriKind.Relative)); 

// Set the timeline to repeat.
mTimeline.RepeatBehavior = RepeatBehavior.Forever;

// Create a clock from the MediaTimeline.
MediaClock mClock = mTimeline.CreateClock();

MediaPlayer repeatingVideoDrawingPlayer = new MediaPlayer();
repeatingVideoDrawingPlayer.Clock = mClock;

VideoDrawing repeatingVideoDrawing = new VideoDrawing();
repeatingVideoDrawing.Rect = new Rect(150, 0, 100, 100);
repeatingVideoDrawing.Player = repeatingVideoDrawingPlayer;  

Observe que, quando você utiliza um MediaTimeline, você utiliza o ClockController interativo retornado da propriedade Controller do MediaClock para controlar a reprodução de mídia em vez dos métodos interativos do MediaPlayer.

Consulte também

Conceitos

Visão Geral de Objetos de Desenho

Referência

VideoDrawing