Informationen zur Sequencerquelle

Die Sequencerquelle ermöglicht es einer Anwendung, eine Sammlung von Medienquellen sequenziell mit nahtlosen Übergängen zwischen den Quellen wiederzugeben. Die Sequencerquelle kann für die folgenden Szenarien verwendet werden:

  • Erstellen Sie eine Wiedergabeliste, die nahtlos von einer Medienquelle zur nächsten wechselt.
  • Wiedergeben von Streams aus mehreren Quellen gleichzeitig; Geben Sie beispielsweise die Audiodaten aus einer Datei mit dem Video aus einer anderen wieder.
  • Wechseln zwischen Streams in verschiedenen Medienquellen in aufeinanderfolgenden Wiedergabelisteneinträgen; Beispielsweise kann eine Wiedergabeliste Einträge enthalten, die dieselbe Videoquelle gemeinsam nutzen, während jeder Eintrag eine andere Audioquelle enthält.

Für jedes Element einer Wiedergabeliste erstellt die Anwendung eine separate Topologie. Die Medienquellen in diesen Topologien werden als native Quellen bezeichnet, um sie von der Sequenzerquelle zu unterscheiden. Während der Wiedergabe wird die gesamte Sequenz von Topologien als Präsentation bezeichnet, und jede Topologie innerhalb der Sequenz wird als Segment bezeichnet.

Die Wiedergabe wird von der Mediensitzung gesteuert, die Transportsteuerelemente wie Wiedergabe, Anhalten und Beenden bereitstellt. Die Mediensitzung verwaltet auch die Präsentationszeit und sendet Ereignisse an die Anwendung. (Ereignisse aus der Sequencerquelle werden über die Mediensitzung an die Anwendung weitergeleitet.)

Um eine Wiedergabeliste zu erstellen, erstellt die Anwendung eine oder mehrere Wiedergabetopologien und stellt diese in der gewünschten Reihenfolge der Wiedergabe in die Warteschlange auf der Sequencerquelle. Intern ändert die Sequencerquelle die Topologien, sodass die Quellknoten auf die Sequencerquelle statt auf die native Quelle verweisen. Die Anwendung sendet diese geänderten Topologien anstelle der ursprünglichen Topologien an die Mediensitzung. Dadurch kann die Sequencerquelle die nativen Quellen aggregieren und mit der Mediensitzung kommunizieren.

Um nahtlose Übergänge zwischen Segmenten zu erreichen, wird jedes Segment von der Sequencerquelle vorabrollt. Während ein Segment wiedergegeben wird und bevor das folgende Segment wiedergegeben werden kann, löst die Sequencerquelle ein MENewPresentation-Ereignis aus, das einen Präsentationsdeskriptor enthält. Die Anwendung verwendet diesen Präsentationsdeskriptor, um die Topologie für das nächste Segment in der Präsentation abzurufen, und stellt die Topologie in der Mediensitzung in die Warteschlange.

Die folgende Abbildung zeigt den Datenfluss für Wiedergabelisteneinträge über die Sequencerquelle. Die Anwendung verwendet den Quellrelöser, um die nativen Quellen zu erstellen, Topologien für jedes Segment zu erstellen und die Topologien in der Sequencerquelle in die Warteschlange zu stellen.

Diagramm, das den Datenfluss aus den Segmenten imfmediasession, imfsequencersource und Wiedergabelisten zeigt, die zu imfmediasource führen

Erstellen einer Wiedergabeliste

Topologien

Verwenden der Sequencerquelle

Sequencerquelle