方法: VideoDrawing を使用してメディアを再生する
オーディオまたはビデオ ファイルを再生するには、VideoDrawing と MediaPlayerを使用します。 メディアを読み込んで再生するには、2 つの方法があります。 1 つ目は、MediaPlayer と VideoDrawing を単独で使用することです。2 つ目の方法は、MediaPlayer と VideoDrawingで使用する独自の MediaTimeline を作成することです。
手記
アプリケーションでメディアを配布する場合、イメージのように、メディア ファイルをプロジェクト リソースとして使用することはできません。 プロジェクト ファイルでは、代わりにメディアの種類を Content
に設定し、CopyToOutputDirectory
を PreserveNewest
または Always
に設定する必要があります。
VideoDrawing と MediaPlayer を使用する
次の例では、VideoDrawing と MediaPlayer を使用してビデオ ファイルを 1 回再生します。
//
// 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();
メディアのタイミング制御を強化するには、MediaPlayer オブジェクトと VideoDrawing オブジェクトで MediaTimeline を使用します。 MediaTimeline を使用すると、ビデオを繰り返す必要があるかどうかを指定できます。
MediaTimeline を使用する
次の例では、MediaPlayer オブジェクトと VideoDrawing オブジェクトを含む 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;
MediaTimelineを使用する場合は、MediaPlayerの対話型メソッドではなく、MediaClock の Controller プロパティから返される対話型 ClockController を使用してメディアの再生を制御します。
関連項目
.NET Desktop feedback