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


Метод IAMTimelineSrc::SetMediaTimes

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

Примечание

[Не рекомендуется. Этот API может быть удален из будущих выпусков Windows.]

 

Метод SetMediaTimes задает время остановки и начала носителя.

Синтаксис

HRESULT SetMediaTimes(
   REFERENCE_TIME Start,
   REFERENCE_TIME Stop
);

Параметры

Запуск

Время начала мультимедиа в единицах 100 наносекунд.

Остановить

Время остановки носителя в единицах 100 наносекунд.

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

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

Время носителя — это время остановки и начала относительно исходного файла мультимедиа. Всегда устанавливайте время мультимедиа при добавлении источника видео или звука в временная шкала. В противном случае могут возникнуть проблемы с отрисовкой. Время остановки должно быть больше времени начала.

Чтобы использовать неподвижный кадр из источника видео, установите время остановки на долю больше времени начала, например 100 наносекунд. Если задать для них одно и то же значение, возникает ошибка отрисовки.

Если длительность временная шкала не совпадает с длительностью носителя, источник растягивается или уменьшается соответствующим образом. Это приводит к тому, что клип воспроизводит медленнее или быстрее, чем автор. (Сдвиг тона будет происходить в источнике звука.) Дополнительные сведения см. в разделе Время в службах редактирования DirectShow.

Вы можете указать длительность исходного файла, вызвав метод SetMediaLength . Если задано время остановки носителя, превышающее длительность, DES усекает время остановки.

Примечание

Файл заголовка Qedit.h несовместим с заголовками Direct3D более поздней версии 7.

 

Примечание

Чтобы получить Qedit.h, скачайте обновление Microsoft Windows SDK для Windows Vista и платформа .NET Framework 3.0. Qedit.h недоступен в Microsoft Windows SDK для Windows 7 и платформа .NET Framework 3.5 с пакетом обновления 1 (SP1).

 

Требования

Требование Значение
Заголовок
Qedit.h
Библиотека
Strmiids.lib

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

Интерфейс IAMTimelineSrc

Коды ошибок и успешности