MediaPlayer 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供媒體播放功能的存取,例如播放、暫停、快速轉送、倒轉和音量。
public ref class MediaPlayer sealed
public ref class MediaPlayer sealed : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class MediaPlayer final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(196608, "Windows.Foundation.UniversalApiContract")]
class MediaPlayer final : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class MediaPlayer
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(196608, "Windows.Foundation.UniversalApiContract")]
public sealed class MediaPlayer : System.IDisposable
function MediaPlayer()
Public NotInheritable Class MediaPlayer
Public NotInheritable Class MediaPlayer
Implements IDisposable
- 繼承
- 屬性
- 實作
Windows 需求
裝置系列 |
Windows 10 (已於 10.0.10240.0 引進)
|
API contract |
Windows.Foundation.UniversalApiContract (已於 v1.0 引進)
|
備註
檔的 媒體播放 區段包含操作說明文章,提供將媒體播放功能新增至應用程式的詳細指引。 下表列出一些可用的文章。
主題 | 描述 |
---|---|
使用 MediaPlayer 播放音訊和視訊 | 示範如何利用 UWP app 媒體播放系統的新功能和改進功能。 |
媒體項目、播放清單與曲目 | 示範如何使用 MediaSource 類別,其提供從本機或遠端檔案等不同來源參考和播放媒體的常見方式,並公開一般模型來存取媒體資料,而不論基礎媒體格式為何。 |
與系統媒體傳輸控制項整合 | 示範如何將應用程式與系統媒體傳輸控制項 (SMTC) 整合。 |
系統支援的定時中繼資料提示 | 描述如何利用數種格式的計時中繼資料,這些格式可能會內嵌在媒體檔案或資料流程中。 |
建立、排程與管理媒體中斷 | 示範如何建立、排程和管理媒體播放應用程式的媒體中斷。 |
在背景播放媒體 | 示範如何設定應用程式,讓媒體在應用程式從前景移至背景時繼續播放。 |
自適性串流 | 描述如何將調適型串流多媒體內容的播放新增至通用 Windows 平臺 (UWP) app。 |
媒體傳播 | 示範如何從通用 Windows 應用程式將媒體轉換成遠端裝置。 |
PlayReady DRM | 說明如何將 PlayReady 保護的媒體內容新增至您的 通用 Windows 平臺 (UWP) app。 |
媒體播放 SDK 範例
下列的 SDK 範例示範 Windows 10 上 UWP 應用程式可用的媒體播放功能。 使用這些範例查看內容中使用的媒體播放 API 或者做為您應用程式的起點。
版本歷程記錄
Windows 版本 | SDK 版本 | 新增值 |
---|---|---|
1511 | 10586 | AddAudioEffect |
1511 | 10586 | RemoveAllEffects |
1607 | 14393 | AddVideoEffect |
1607 | 14393 | AudioBalance |
1607 | 14393 | AudioDevice |
1607 | 14393 | BreakManager |
1607 | 14393 | CommandManager |
1607 | 14393 | GetAsCastingSource |
1607 | 14393 | GetSurface |
1607 | 14393 | IsMutedChanged |
1607 | 14393 | PlaybackSession |
1607 | 14393 | RealTimePlayback |
1607 | 14393 | SetSurfaceSize |
1607 | 14393 | SourceChanged |
1607 | 14393 | StepBackwardOneFrame |
1607 | 14393 | StepForwardOneFrame |
1607 | 14393 | StereoscopicVideoRenderMode |
1607 | 14393 | TimelineController |
1607 | 14393 | TimelineControllerPositionOffset |
1703 | 15063 | CopyFrameToStereoscopicVideoSurfaces |
1703 | 15063 | CopyFrameToVideoSurface (IDirect3DSurface) |
1703 | 15063 | CopyFrameToVideoSurface (IDirect3DSurface,Rect) |
1703 | 15063 | IsVideoFrameServerEnabled |
1703 | 15063 | VideoFrameAvailable |
1709 | 16299 | RenderSubtitlesToSurface (IDirect3DSurface) |
1709 | 16299 | RenderSubtitlesToSurface (IDirect3DSurface,Rect) |
1709 | 16299 | SubtitleFrameChanged |
1803 | 17134 | AudioStateMonitor |
建構函式
MediaPlayer() |
初始化 MediaPlayer 物件的新實例。 |
屬性
AudioBalance |
取得或設定跨身歷聲喇叭的音量比例。 |
AudioCategory |
取得或設定目前現正播放的音訊類型。 |
AudioDevice |
取得或設定 DeviceInformation 物件,代表 MediaPlayer 用來呈現音訊的音訊裝置。 |
AudioDeviceType |
取得或設定值,這個值描述用來播放音訊之裝置的主要使用方式。 |
AudioStateMonitor |
取得 AudioStateMonitor 物件,可讓 UWP app 判斷任何應用程式的音訊串流目前是否為靜音,或讓系統減少其音量。 |
AutoPlay |
取得或設定布林值,指出是否在載入媒體之後自動開始播放。 |
BreakManager |
取得與MediaPlayer相關聯的MediaBreakManager,其提供播放程式媒體中斷的相關資訊和控制。 |
BufferingProgress |
取得媒體內容完成的緩衝量,以百分比表示。 注意 MediaPlayer.BufferingProgress可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.BufferingProgress 屬性。 |
CanPause |
取得布林值,指出是否可以暫停媒體。 注意 MediaPlayer.CanPause可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.CanPause 屬性。 |
CanSeek |
取得布林值,指出媒體是否支援搜尋特定位置。 注意 MediaPlayer.CanSeek可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.CanSeek 屬性。 |
CommandManager |
取得與MediaPlayer相關聯的MediaPlaybackCommandManager,這個控制項會指定 和 從系統媒體傳輸控制項接收事件的行為。 |
CurrentState |
取得媒體播放的目前狀態。 注意 MediaPlayer.CurrentState可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.PlaybackState 屬性。 |
IsLoopingEnabled |
取得或設定布林值,指出媒體是否會在重複迴圈中播放。 |
IsMuted |
取得或設定布林值,指出音訊是否為靜音。 |
IsProtected |
取得布林值,指出內容是否受到數位版權管理系統的保護。 注意 MediaPlayer.IsProtected可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 IsProtected 屬性。 |
IsVideoFrameServerEnabled |
取得值,指出是否啟用 MediaPlayer 實例的視訊畫面伺服器模式。 |
NaturalDuration |
取得媒體的實際持續時間,而不套用 PlaybackRate。 注意 MediaPlayer.NaturalDuration可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.NaturalDuration 屬性。 |
PlaybackMediaMarkers |
取得媒體的時間軸標記集合。 注意 MediaPlayer.PlaybackMediaMarkers可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlaybackItem.TimedMetadataTracks 來管理資料或文字提示。如需詳細資訊,請參閱 使用 MediaSource 播放媒體。 |
PlaybackRate |
取得或設定播放速率,以比率表示。 注意 mediaPlayer.PlaybackRate可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.PlaybackRate 屬性。 |
PlaybackSession |
取得與MediaPlayer相關聯的MediaPlaybackSession,其提供目前播放會話狀態的相關資訊,並提供回應播放會話狀態變更的事件。 |
Position |
取得或設定媒體內的播放位置。 注意 MediaPlayer.Position可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.Position 屬性。 |
ProtectionManager |
取得或設定媒體的內容保護管理員。 |
RealTimePlayback |
取得或設定值,這個值會針對即時串流視訊等即時案例設定 MediaPlayer 。 |
Source |
設定媒體播放程式的播放來源。 |
StereoscopicVideoRenderMode |
取得或設定值,指出目前的身歷聲轉譯模式。 |
SystemMediaTransportControls |
取得 SystemMediaTransportControls 類別的實例,可讓使用者控制 MediaPlayer 的播放,並允許應用程式顯示目前在系統 UI 中播放內容的相關資訊。 |
TimelineController |
取得或設定與MediaPlayer相關聯的MediaTimelineController。 使用此屬性以單一時間軸控制項操作多個 MediaPlayer 實例。 |
TimelineControllerPositionOffset |
取得或設定套用至與MediaPlayer相關聯之 MediaTimelineController位置的位移。 |
Volume |
取得或設定媒體播放的音訊音量。 |
方法
事件
BufferingEnded |
當緩衝完成時發生。 注意 MediaPlayer.BufferingEnded可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.BufferingEnded 事件。 |
BufferingStarted |
當緩衝啟動時發生。 注意 MediaPlayer.BufferingStarted可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.BufferingStarted 事件。 |
CurrentStateChanged |
發生于媒體播放機的狀態變更時。 注意 MediaPlayer.CurrentStateChanged可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.PlaybackStateChanged 事件。 |
IsMutedChanged |
發生于 MediaPlayer 的目前靜音狀態變更時。 |
MediaEnded |
媒體完成播放時發生。 |
MediaFailed |
遇到錯誤時發生。 |
MediaOpened |
媒體開啟時發生。 |
MediaPlayerRateChanged |
發生于媒體播放速率變更時。 注意 MediaPlayer.MediaPlayerRateChanged可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.PlaybackRateChanged 事件。 |
PlaybackMediaMarkerReached |
在播放期間到達媒體標記時發生。 注意 MediaPlayer.PlaybackMediaMarkerReached可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlaybackItem.TimedMetadataTracks 來管理資料或文字提示。如需詳細資訊,請參閱 使用 MediaSource 播放媒體。 |
SeekCompleted |
發生于搜尋作業完成時。 注意 mediaPlayer.SeekCompleted可能會在 Windows 10 1607 版之後變更或無法使用。 請改用 MediaPlayer.PlaybackSession 屬性來取得 MediaPlaybackSession 物件,然後使用 MediaPlaybackSession.SeekCompleted 事件。 |
SourceChanged |
發生于 MediaPlayer 的媒體來源變更時。 |
SubtitleFrameChanged |
當 MediaPlayer 處於畫面伺服器模式時,目前的副標題內容已變更時發生。 |
VideoFrameAvailable |
當 IsVideoFrameServerEnabled 設定為 true 且有新的視訊畫面可供處理時發生。 |
VolumeChanged |
發生于音訊音量已變更時。 |