MF_MEDIA_ENGINE_EVENT列舉 (mfmediaengine.h)
定義媒體引擎的事件代碼。
Syntax
typedef enum MF_MEDIA_ENGINE_EVENT {
MF_MEDIA_ENGINE_EVENT_LOADSTART = 1,
MF_MEDIA_ENGINE_EVENT_PROGRESS = 2,
MF_MEDIA_ENGINE_EVENT_SUSPEND = 3,
MF_MEDIA_ENGINE_EVENT_ABORT = 4,
MF_MEDIA_ENGINE_EVENT_ERROR = 5,
MF_MEDIA_ENGINE_EVENT_EMPTIED = 6,
MF_MEDIA_ENGINE_EVENT_STALLED = 7,
MF_MEDIA_ENGINE_EVENT_PLAY = 8,
MF_MEDIA_ENGINE_EVENT_PAUSE = 9,
MF_MEDIA_ENGINE_EVENT_LOADEDMETADATA = 10,
MF_MEDIA_ENGINE_EVENT_LOADEDDATA = 11,
MF_MEDIA_ENGINE_EVENT_WAITING = 12,
MF_MEDIA_ENGINE_EVENT_PLAYING = 13,
MF_MEDIA_ENGINE_EVENT_CANPLAY = 14,
MF_MEDIA_ENGINE_EVENT_CANPLAYTHROUGH = 15,
MF_MEDIA_ENGINE_EVENT_SEEKING = 16,
MF_MEDIA_ENGINE_EVENT_SEEKED = 17,
MF_MEDIA_ENGINE_EVENT_TIMEUPDATE = 18,
MF_MEDIA_ENGINE_EVENT_ENDED = 19,
MF_MEDIA_ENGINE_EVENT_RATECHANGE = 20,
MF_MEDIA_ENGINE_EVENT_DURATIONCHANGE = 21,
MF_MEDIA_ENGINE_EVENT_VOLUMECHANGE = 22,
MF_MEDIA_ENGINE_EVENT_FORMATCHANGE = 1000,
MF_MEDIA_ENGINE_EVENT_PURGEQUEUEDEVENTS = 1001,
MF_MEDIA_ENGINE_EVENT_TIMELINE_MARKER = 1002,
MF_MEDIA_ENGINE_EVENT_BALANCECHANGE = 1003,
MF_MEDIA_ENGINE_EVENT_DOWNLOADCOMPLETE = 1004,
MF_MEDIA_ENGINE_EVENT_BUFFERINGSTARTED = 1005,
MF_MEDIA_ENGINE_EVENT_BUFFERINGENDED = 1006,
MF_MEDIA_ENGINE_EVENT_FRAMESTEPCOMPLETED = 1007,
MF_MEDIA_ENGINE_EVENT_NOTIFYSTABLESTATE = 1008,
MF_MEDIA_ENGINE_EVENT_FIRSTFRAMEREADY = 1009,
MF_MEDIA_ENGINE_EVENT_TRACKSCHANGE = 1010,
MF_MEDIA_ENGINE_EVENT_OPMINFO = 1011,
MF_MEDIA_ENGINE_EVENT_RESOURCELOST = 1012,
MF_MEDIA_ENGINE_EVENT_DELAYLOADEVENT_CHANGED = 1013,
MF_MEDIA_ENGINE_EVENT_STREAMRENDERINGERROR = 1014,
MF_MEDIA_ENGINE_EVENT_SUPPORTEDRATES_CHANGED = 1015,
MF_MEDIA_ENGINE_EVENT_AUDIOENDPOINTCHANGE = 1016
} ;
常數
MF_MEDIA_ENGINE_EVENT_LOADSTART 值: 1 媒體引擎已開始載入來源。 請參閱 IMFMediaEngine::Load。 |
||||||
MF_MEDIA_ENGINE_EVENT_PROGRESS 值: 2 媒體引擎正在載入來源。 |
||||||
MF_MEDIA_ENGINE_EVENT_SUSPEND 值: 3 媒體引擎已暫停載入作業。 |
||||||
MF_MEDIA_ENGINE_EVENT_ABORT 值: 4 媒體引擎已取消進行中的載入作業。 |
||||||
MF_MEDIA_ENGINE_EVENT_ERROR 值: 5 發生錯誤。
|
||||||
MF_MEDIA_ENGINE_EVENT_EMPTIED 值: 6 媒體引擎已切換至 MF_MEDIA_ENGINE_NETWORK_EMPTY 狀態。 呼叫 IMFMediaEngine::Load 方法時,或 Load 方法期間 發生錯誤時,就會發生這種情況。 請參閱 IMFMediaEngine::GetNetworkState。 |
||||||
MF_MEDIA_ENGINE_EVENT_STALLED 值: 7 載入演算法已停止,正在等候資料。 |
||||||
MF_MEDIA_ENGINE_EVENT_PLAY 值: 8 媒體引擎正在切換至播放狀態。 請參閱 IMFMediaEngine::P lay。 |
||||||
MF_MEDIA_ENGINE_EVENT_PAUSE 值: 9 媒體引擎已暫停。 請參閱 IMFMediaEngine::P ause。 |
||||||
MF_MEDIA_ENGINE_EVENT_LOADEDMETADATA 值: 10 媒體引擎已載入足夠的來源資料,以判斷來源的持續時間和維度。 |
||||||
MF_MEDIA_ENGINE_EVENT_LOADEDDATA 值: 11 媒體引擎已載入足夠的資料來轉譯某些內容 (,例如視訊畫面) 。 |
||||||
MF_MEDIA_ENGINE_EVENT_WAITING 值: 12 播放已停止,因為下一個畫面無法使用。 |
||||||
MF_MEDIA_ENGINE_EVENT_PLAYING 值: 13 播放已啟動。 請參閱 IMFMediaEngine::P lay。 |
||||||
MF_MEDIA_ENGINE_EVENT_CANPLAY 值: 14 播放可以啟動,但媒體引擎可能需要停止以緩衝更多資料。 |
||||||
MF_MEDIA_ENGINE_EVENT_CANPLAYTHROUGH 值: 15 媒體引擎可能會在資源結束時播放,而不會停止緩衝資料。 |
||||||
MF_MEDIA_ENGINE_EVENT_SEEKING 值: 16 媒體引擎已開始搜尋新的播放位置。 請參閱 IMFMediaEngine::SetCurrentTime。 |
||||||
MF_MEDIA_ENGINE_EVENT_SEEKED 值: 17 媒體引擎已尋求新的播放位置。 請參閱 IMFMediaEngine::SetCurrentTime。 |
||||||
MF_MEDIA_ENGINE_EVENT_TIMEUPDATE 值: 18 播放位置已變更。 請參閱 IMFMediaEngine::GetCurrentTime。 |
||||||
MF_MEDIA_ENGINE_EVENT_ENDED 值: 19 播放已到達來源的結尾。 如果 GetLoop 為 TRUE,則不會傳送此事件。 |
||||||
MF_MEDIA_ENGINE_EVENT_RATECHANGE 值: 20 播放速率已變更。 請參閱 IMFMediaEngine::SetPlaybackRate。 |
||||||
MF_MEDIA_ENGINE_EVENT_DURATIONCHANGE 值: 21 媒體來源的持續時間已變更。 請參閱 IMFMediaEngine::GetDuration。 |
||||||
MF_MEDIA_ENGINE_EVENT_VOLUMECHANGE 值: 22 音訊音量已變更。 請參閱 IMFMediaEngine::SetVolume。 |
||||||
MF_MEDIA_ENGINE_EVENT_FORMATCHANGE 值: 1000 媒體來源的輸出格式已變更。
|
||||||
MF_MEDIA_ENGINE_EVENT_PURGEQUEUEDEVENTS 值: 1001 媒體引擎已從其佇列排清任何擱置的事件。 |
||||||
MF_MEDIA_ENGINE_EVENT_TIMELINE_MARKER 值: 1002 播放位置已到達時間軸標記。 請參閱 IMFMediaEngineEx::SetTimelineMarkerTimer。 |
||||||
MF_MEDIA_ENGINE_EVENT_BALANCECHANGE 值: 1003 音訊平衡已變更。 請參閱 IMFMediaEngineEx::SetBalance。 |
||||||
MF_MEDIA_ENGINE_EVENT_DOWNLOADCOMPLETE 值: 1004 媒體引擎已完成下載來源資料。 |
||||||
MF_MEDIA_ENGINE_EVENT_BUFFERINGSTARTED 值: 1005 媒體來源已開始緩衝處理資料。 |
||||||
MF_MEDIA_ENGINE_EVENT_BUFFERINGENDED 值: 1006 媒體來源已停止緩衝處理資料。 |
||||||
MF_MEDIA_ENGINE_EVENT_FRAMESTEPCOMPLETED 值: 1007 IMFMediaEngineEx::FrameStep方法已完成。 |
||||||
MF_MEDIA_ENGINE_EVENT_NOTIFYSTABLESTATE 值: 1008 媒體引擎的 載入 演算法正在等候啟動。
如果使用MF_MEDIA_ENGINE_WAITFORSTABLE_STATE旗標建立媒體引擎,媒體引擎會在Load演算法開始時傳送MF_MEDIA_ENGINE_EVENT_NOTIFYSTABLESTATE事件。 param1參數是可等候事件的控制碼。 Load執行緒會等候應用程式呼叫SetEvent來發出事件訊號。 如果未使用 MF_MEDIA_ENGINE_WAITFORSTABLE_STATE建立媒體引擎,它就不會傳送此事件,而且 Load 執行緒不會等候發出訊號。 |
||||||
MF_MEDIA_ENGINE_EVENT_FIRSTFRAMEREADY 值: 1009 媒體來源的第一個畫面已準備好轉譯。 |
||||||
MF_MEDIA_ENGINE_EVENT_TRACKSCHANGE 值: 1010 新增或移除新曲目時引發。 Windows 8.1和更新版本中支援。 |
||||||
MF_MEDIA_ENGINE_EVENT_OPMINFO 值: 1011 當 輸出保護管理員 (OPM) 有新的資訊時引發。 發生 OPM 失敗時,將會引發此事件,但 ITA 允許在沒有 OPM 的情況下進行後援。 在此情況下,可以套用限制。 發生 OPM 失敗且後援也會失敗時,將不會引發此事件。 例如,如果 ITA 會在無法建立 OPM 時完全封鎖播放。 Windows 8.1和更新版本中支援。 |
||||||
MF_MEDIA_ENGINE_EVENT_RESOURCELOST 值: 1012 |
||||||
MF_MEDIA_ENGINE_EVENT_DELAYLOADEVENT_CHANGED 值: 1013 |
||||||
MF_MEDIA_ENGINE_EVENT_STREAMRENDERINGERROR 值: 1014 當媒體資料流程的其中一個元件資料流程失敗時引發。 只有當媒體資料流程包含其他未失敗的元件資料流程時,才會引發此事件。 |
||||||
MF_MEDIA_ENGINE_EVENT_SUPPORTEDRATES_CHANGED 值: 1015 |
||||||
MF_MEDIA_ENGINE_EVENT_AUDIOENDPOINTCHANGE 值: 1016 |
備註
應用程式會透過 IMFMediaEngineNotify::EventNotify 方法接收媒體引擎事件。 EventNotify方法包含兩個事件參數:param1和param2。 參數的意義取決於事件程式碼。 如果事件描述未列出任何參數,請忽略 param1 和 param2的值。
低於 1000 的值會對應至媒體元件的 HTML 5 中所定義的事件。
需求
最低支援的用戶端 | Windows 8 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2012 [傳統型應用程式 |UWP 應用程式] |
標頭 | mfmediaengine.h |