Procedura: riprodurre contenuti multimediali utilizzando un oggetto VideoDrawing
Per riprodurre un file audio o video, usare e VideoDrawing .MediaPlayer È possibile caricare e riprodurre contenuti multimediali in due modi diversi. Il primo consiste nell'usare un MediaPlayer oggetto e da VideoDrawing soli e il secondo consiste nel creare un oggetto personalizzato MediaTimeline da usare con MediaPlayer e VideoDrawing.
Nota
Quando si distribuiscono contenuti multimediali con l'applicazione, non è possibile usare un file multimediale come risorsa di progetto, come avviene invece per un'immagine. È necessario invece impostare il tipo di contenuto multimediale su Content
nel file del progetto e CopyToOutputDirectory
su PreserveNewest
o su Always
.
Usare un VideoDrawing e un MediaPlayer
Nell'esempio seguente viene usato un VideoDrawing e un MediaPlayer per riprodurre un file video una sola volta.
//
// 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();
Per ottenere un controllo di tempo aggiuntivo sui supporti, usare un MediaTimeline oggetto con gli MediaPlayer oggetti e VideoDrawing . MediaTimeline Consente di specificare se il video deve essere ripetuto.
Usare un oggetto MediaTimeline
Nell'esempio seguente viene utilizzato un MediaTimeline oggetto con gli MediaPlayer oggetti e VideoDrawing per riprodurre ripetutamente un video.
//
// 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;
Si noti che, quando si usa un MediaTimelineoggetto , si usa l'oggetto interattivo restituito ClockController dalla proprietà di MediaClock per controllare la Controller riproduzione multimediale anziché i metodi interattivi di MediaPlayer.
Vedi anche
.NET Desktop feedback