方法: VideoDrawing を使用してメディアを再生する

オーディオ ファイルまたはビデオ ファイルを再生するには、VideoDrawingMediaPlayer を使用します。 メディアを読み込んで再生するには、2 つの方法があります。 1 つ目の方法は、MediaPlayerVideoDrawing を単独で使用することです。2 つ目の方法は、MediaPlayerVideoDrawing で使用する独自の MediaTimeline を作成することです。

注意

アプリケーションでメディアを配布するときは、イメージのようにプロジェクト リソースとしてメディア ファイルを使うことはできません。 プロジェクト ファイルで、メディアの種類を Content に設定し、CopyToOutputDirectoryPreserveNewest または Always に設定する必要があります。

VideoDrawing と MediaPlayer を使用する

次の例では、VideoDrawingMediaPlayer を使用して、ビデオ ファイルを 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();

メディアに対する追加のタイミング制御を取得するには、MediaPlayerVideoDrawing オブジェクトで 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 の対話型メソッドではなく、MediaClockController プロパティから返された対話型の ClockController を使用して、メディアの再生を制御します。

関連項目