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


Метод CSourceSeeking.ChangeStart

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Метод ChangeStart вызывается при изменении начальной позиции.

Синтаксис

virtual HRESULT ChangeStart() = 0;

Параметры

Этот метод не имеет параметров.

Возвращаемое значение

Возвращает значение HRESULT .

Комментарии

Метод CSourceSeeking::SetPositions вызывает этот метод при изменении начальной позиции. Этот метод является чисто виртуальным; Производный класс должен реализовывать его. После операции поиска метки времени должны перезапуститься с нуля. Время мультимедиа должно отражать новое время начала. В следующем примере показана возможная реализация:

HRESULT CMyStream::ChangeStart( )
{
    m_rtSampleTime = 0;          // Reset the time stamps.
    m_rtMediaTime = m_rtStart;   // Reset the media times.
    UpdateFromSeek();
    return S_OK;
}

Требования

Требование Значение
Заголовок
Ctlutil.h (включая Streams.h)
Библиотека
Strmbase.lib (розничные сборки);
Strmbasd.lib (отладочные сборки)

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

Класс CSourceSeeking