如何:使用 VideoDrawing 播放媒體

若要播放音訊或視訊檔案,您可以使用 VideoDrawingMediaPlayer 。 有兩種方法可以載入及播放媒體。 第一個是單獨使用 MediaPlayerVideoDrawing ,第二種方式是建立您自己的 MediaTimeline 來搭配 MediaPlayerVideoDrawing 使用。

注意

利用您的應用程式散發媒體時,您無法跟散發影像一樣,使用媒體檔案當作專案資源。 在您的專案檔中,您必須改為將媒體類型設定為 Content,並將 CopyToOutputDirectory 設定為 PreserveNewestAlways

使用 VideoDrawing 和 MediaPlayer

下列範例會使用 VideoDrawingMediaPlayer 來播放視訊檔案一次。

//
// 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();

若要取得媒體的其他計時控制,請搭配 MediaPlayerVideoDrawing 物件使用 MediaTimelineMediaTimeline可讓您指定影片是否應該重複。

使用 MediaTimeline

下列範例會搭配 MediaPlayerVideoDrawing 物件使用 MediaTimeline 來重複播放視訊。

//
// 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;

請注意,當您使用 時,會使用 MediaTimelineController 屬性傳回的 MediaClock 互動式 ClockController ,以控制媒體播放,而不是 的 MediaPlayer 互動式方法。

另請參閱