Поделиться через


перечисление MF_MEDIA_ENGINE_EVENT (mfmediaengine.h)

Определяет коды событий для обработчика мультимедиа.

Синтаксис

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
Произошла ошибка.














Параметр событияОписание
param1Член перечисления MF_MEDIA_ENGINE_ERR .
param2Код ошибки HRESULT или нуль.
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
Формат выходных данных источника мультимедиа изменился.














Параметр событияОписание
param1Ноль, если формат видео изменился, 1 , если формат звука изменился.
param2Ноль.
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
Алгоритм загрузки обработчика мультимедиа ожидает запуска.














Параметр событияОписание
param1Дескриптор ожидающего события типа HANDLE.
param2Ноль.

 

Если компонент Media Engine создается с флагом MF_MEDIA_ENGINE_WAITFORSTABLE_STATE , обработчик мультимедиа отправляет событие 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

См. также раздел

IMFMediaEngineNotify::EventNotify

Перечисления Media Foundation