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


Фильтр разделения потока MPEG-1

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

Этот фильтр разбивает системный поток MPEG-1 на его компонент аудио- и видеопотоки.

Ярлык Ценность
Интерфейсы фильтров IAMMediaContent, IAMStreamSelect, IBaseFilter
Типы носителей входных закреплений Основной тип: MEDIATYPE_Stream
Подтипов:
  • MEDIASUBTYPE_MPEG1System
  • MEDIASUBTYPE_MPEG1VideoCD
  • MEDIASUBTYPE_Audio
  • MEDIASUBTYPE_Video
См. Типы носителей MPEG-1
Интерфейсы входных закреплений IMemInputPin, IPin, IQualityControl
Типы носителей выходного пин-кода Основной тип: MEDIATYPE_Audio или MEDIATYPE_Video
Подтип: MEDIASUBTYPE_MPEG1Payload или MEDIASUBTYPE_MPEG1Packet
См. Типы носителей MPEG-1
Интерфейсы выходных закреплений IPin, IMediaSeeking
Фильтрация CLSID CLSID_MPEG1Splitter
CLSID страницы свойств Нет страницы свойств
Выполнимый quartz.dll
Заслуги MERIT_NORMAL
категории фильтра CLSID_LegacyAmFilterCategory

 

Замечания

Этот файл поддерживает режим извлечения только через IAsyncReader; Он не поддерживает режим принудительной отправки.

Так как содержимое MPEG-1 не индексируется, поиск может быть очень приблизительным. Обычно это хорошо для системного потока MPEG-1 фиксированной скорости (который обычно является аппаратным оборудованием, созданным для видео CD).

Фильтр поддерживает интерфейс IAMMediaContent для получения метаданных ID3.

Не все примеры MPEG имеют метки времени. Отсутствие метки времени в образце MPEG не является ошибкой. Для разработчиков фильтров это означает, что не следует возвращать код ошибки из метода получения ввода, если IMediaSample::GetTime завершается ошибкой. Если получение возвращает любое значение, отличное от S_OK, оно приведет к остановке отправки примеров.

Если файл содержит видеопоток, mpeg-1 Stream Splitter поддерживает поиск по номеру кадра. Чтобы включить поиск на основе кадров, вызовите IMediaSeeking::SetTimeFormat на диспетчере графов со значением TIME_FORMAT_FRAME.

фильтры DirectShow