Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Para reproduzir um ficheiro de áudio ou vídeo, utilize um VideoDrawing e um MediaPlayer. Há duas maneiras de carregar e reproduzir mídia. A primeira é usar um MediaPlayer e um VideoDrawing por si só, e a segunda maneira é criar seu próprio MediaTimeline para usar com o MediaPlayer e VideoDrawing.
Observação
Ao distribuir mídia com seu aplicativo, você não pode usar um arquivo de mídia como um recurso de projeto, como faria com uma imagem. No arquivo de projeto, você deve, em vez disso, definir o tipo de mídia como Content e definir CopyToOutputDirectory como PreserveNewest ou Always.
Usar um VideoDrawing e um MediaPlayer
O exemplo a seguir usa 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 obter controle adicional de tempo sobre a mídia, use um MediaTimeline com os objetos MediaPlayer e VideoDrawing. O MediaTimeline permite especificar se o vídeo deve ser repetido.
Utilizar um MediaTimeline
O exemplo a seguir usa um MediaTimeline com os objetos MediaPlayer e VideoDrawing para reproduzir 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, ao utilizar um MediaTimeline, se usa o ClockController interativo, que é retornado pela propriedade Controller do MediaClock, para controlar a reprodução de mídia em vez dos métodos interativos de MediaPlayer.
Ver também
.NET Desktop feedback