次の方法で共有


方法: 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();

メディアのタイミング制御を強化するには、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の対話型メソッドではなく、MediaClockController プロパティから返される対話型 ClockController を使用してメディアの再生を制御します。

関連項目