IMFMediaSource::P ause method (mfidl.h)
Приостанавливает все активные потоки в источнике мультимедиа.
Синтаксис
HRESULT Pause();
Возвращаемое значение
Метод возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.
Код возврата | Описание |
---|---|
|
Метод выполнен успешно. |
|
Недопустимый переход состояния. Источник мультимедиа должен находиться в запущенном состоянии. |
|
Был вызван метод Shutdown источника мультимедиа. |
Комментарии
Этот метод является асинхронным. После завершения операции источник мультимедиа отправляет событие и MESourcePaused , и каждый активный поток отправляет событие MEStreamPaused . Если метод возвращает код сбоя, события не создаются.
Источник мультимедиа должен находиться в запущенном состоянии. Метод завершается ошибкой, если источник мультимедиа приостановлен или остановлен.
Пока источник приостановлен, вызовы IMFMediaStream::RequestSample завершатся успешно, но потоки не будут доставлять образцы до тех пор, пока источник не будет запущен снова. Обратите внимание, что очередь событий источника не сериализуется с очередями событий потока, поэтому клиент может получить некоторые примеры после события MESourcePaused из-за проблем с многопотоковой передачей. Но клиент не будет получать образцы из потока после события MEStreamPaused .
Не каждый источник мультимедиа может приостановить работу. Если источник мультимедиа может приостановиться, метод IMFMediaSource::GetCharacteristics возвращает флаг MFMEDIASOURCE_CAN_PAUSE.
Требования
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | mfidl.h |
Библиотека | Mfuuid.lib |