Udostępnij przez


Informacje o źródle programu Sequencer

Źródło programu Sequencer umożliwia aplikacji odtwarzanie kolekcji źródeł multimediów sekwencyjnie z bezproblemowymi przejściami między źródłami. Źródło programu Sequencer może być używane w następujących scenariuszach:

  • Utwórz listę odtwarzania, która bezproblemowo przełącza się z jednego źródła multimediów do następnego.
  • Odtwarzanie strumieni z wielu źródeł jednocześnie; na przykład odtwórz dźwięk z jednego pliku za pomocą wideo z innego.
  • Przełączaj się między strumieniami w różnych źródłach multimedialnych w kolejnych pozycjach listy odtwarzania. Na przykład, lista odtwarzania może mieć pozycje, które dzielą to samo źródło wideo, podczas gdy każda pozycja zawiera inne źródło dźwięku.

Dla każdego elementu listy odtwarzania aplikacja tworzy oddzielną topologię. Źródła multimediów w tych topologiach są nazywane źródłami natywnymi, aby je odróżnić od źródła sekwencera. Podczas odtwarzania cała sekwencja topologii jest nazywana prezentacją , a każda topologia w sekwencji jest nazywana segmentem .

Odtwarzanie jest kontrolowane przez Sesja multimediów, która zapewnia kontrolki transportu, takie jak odtwarzanie, wstrzymywanie i zatrzymywanie. Sesja multimediów zarządza również czasem prezentacji i wysyła zdarzenia do aplikacji. (Zdarzenia ze źródła programu Sequencer są przekazywane do aplikacji za pośrednictwem sesji multimediów).

Aby utworzyć listę odtwarzania, aplikacja tworzy co najmniej jedną topologię odtwarzania i kolejkuje je w źródle programu Sequencer w żądanej kolejności odtwarzania. Wewnętrznie źródło programu Sequencer modyfikuje topologie, tak aby węzły źródłowe wskazywały źródło programu Sequencer zamiast źródła natywnego. Aplikacja wysyła te zmodyfikowane topologie, a nie oryginalne topologie, do sesji multimediów. Dzięki temu źródło programu Sequencer może agregować źródła natywne i komunikować się z sesją multimediów.

Aby zapewnić bezproblemowe przechodzenie między segmentami, źródło programu Sequencer wstępnie odtwarza każdy segment. Podczas odtwarzania jednego segmentu i zanim nadejdzie czas na odtwarzanie następującego segmentu, źródło sekwencjonatora generuje zdarzenie MENewPresentation, które zawiera deskryptor prezentacji. Aplikacja używa tego deskryptora prezentacji, aby uzyskać topologię dla następnego segmentu w prezentacji i kolejkuje topologię w sesji multimediów.

Poniższa ilustracja przedstawia przepływ danych dla wpisów listy odtwarzania za pośrednictwem źródła programu Sequencer. Aplikacja używa narzędzia rozpoznawania źródła do tworzenia źródeł natywnych, tworzy topologie dla każdego segmentu i kolejkuje topologie w źródle programu Sequencer.

diagram przedstawiający przepływ danych z imfmediasession, imfsequencersource i segmentów listy odtwarzania, prowadzących do imfmediasource

Jak utworzyć listę odtwarzania

Topologie

Używanie źródła Sequencera

Źródło sequencera