Метод CBaseReferenceClock.AdviseTime
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод AdviseTime
создает одноразовый запрос на консультирование. Этот метод реализует метод IReferenceClock::AdviseTime .
Синтаксис
HRESULT AdviseTime(
REFERENCE_TIME baseTime,
REFERENCE_TIME streamTime,
HEVENT hEvent,
DWORD_PTR *pdwAdviseToken
);
Параметры
-
baseTime
-
Базовое эталонное время в единицах 100 наносекунд.
-
streamTime
-
Время смещения потока в единицах 100 наносекунд.
-
hEvent
-
Дескриптор события, созданного вызывающим.
-
pdwAdviseToken
-
Указатель на переменную, которая получает идентификатор для запроса на получение рекомендаций.
Возвращаемое значение
Возвращает одно из значений HRESULT , показанных в следующей таблице.
Код возврата | Описание |
---|---|
|
Успешное завершение |
|
Недопустимые значения времени |
|
Failure |
|
Аргумент указателя NULL |
Комментарии
Этот метод создает одноразовый запрос на получение рекомендаций для ссылочного времени baseTime + streamTime. Сумма должна быть больше нуля и меньше MAX_TIME, иначе метод возвращает E_INVALIDARG. В запрошенное время часы сигналит о событии, указанном в параметре hEvent .
Чтобы отменить уведомление до достижения времени, вызовите метод CBaseReferenceClock::Unadvise и передайте значение pdwAdviseToken , возвращенное этим вызовом. После получения уведомления часы автоматически очищают его, поэтому не нужно вызывать Unadvise. Однако это не является ошибкой.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|