Использование сплиттера MPEG-2

Примечание

Начиная с Microsoft® Windows ® XP фильтр разделителей MPEG-2 устарел. Вместо этого используйте демультиплексер MPEG-2 .

 

Фильтр splitter MPEG-2 поддерживает воспроизведение потоков программы MPEG-2 в режиме извлечения, которые содержат по крайней мере один из следующих типов потоков.

  • Видео MPEG-2
  • Звук MPEG-2
  • Звук Dolby AC-3 закодирован как определенный для DVD-Video
  • Звук LPCM (линейная модуляция кода импульса) закодирован в соответствии с определением для DVD-Video

Список типов носителей, поддерживаемых сплитером MPEG-2, см. в разделе MPEG-2 Splitter Media Types.

Разделитель MPEG-2 не анализирует транспортные потоки. Используйте фильтр MPEG-2 Demultiplexer для транспортных потоков (только в режиме принудительной отправки).

Метки времени

При воспроизведении потоков программы MPEG-2 фильтр splitter MPEG-2 обрабатывает первую системную ссылку на часы, с которыми он сталкивается как источник времени любого потока. Это отличается от сплиттера потока MPEG-1, в котором используются метки времени презентации. Метод IAMParse::GetParseTime возвращает (возможно, предполагаемое) время потоковой передачи системных часов для обработанных данных.

Если фильтр разделителя MPEG-2 обнаруживает входной образец с набором свойств прекращения (свойство прекращения можно задать с помощью IMediaSample::SetDiscontinuity или IMediaSample2::SetProperties), он пропускает данные, пока не найдет первый пакет в данных и настроит метки времени так, чтобы системная ссылка на часы (SCR) для этого пакета считалась идентичной времени SCR до прекращения. Если часы SCR появляются либо для перехода назад, либо для перехода вперед более чем на секунду, то (в соответствии со спецификацией потока программы MPEG-2), это также рассматривается как разрыв часов, и очевидное несоответствие часов вычитается из меток времени, передаваемых в подчиненные фильтры.

Выбор потока

При воспроизведении потока программы MPEG-2 выбирается первый видеопоток и первый аудиопоток, который проходит через программный поток. Поддерживается до одного аудио и одного пин-кода вывода видео. С помощью интерфейса IAMStreamSelect различные потоки одного типа можно выбрать до числа, указанного ограничением звука в заголовке системы. Для звука MPEG-2 предполагается, что потоки образуют непрерывный диапазон, начиная с потока 0xC0.

Поддерживаемые интерфейсы

Фильтр разделения MPEG-2 поддерживает следующие интерфейсы.

  • IAMParse. Только поток программы MPEG-2.
  • IAMStreamSelect. Только поток программы MPEG-2, только аудиопотоки.
  • IMediaSeeking. Включает поиск в режиме байтов.

Поддержка MPEG-2 в DirectShow