關於 Sequencer 來源
排序器來源可讓應用程式循序播放 媒體來源 集合,在來源之間順暢地轉換。 排序器來源可用於下列案例:
- 建立可順暢地從一個媒體來源切換至下一個媒體來源的播放清單。
- 同時播放來自多個來源的資料流程;例如,使用來自另一個檔案的視訊播放音訊。
- 在連續播放清單專案中不同媒體來源的串流之間切換;例如,播放清單可以有共用相同視訊來源的專案,而每個專案都包含不同的音訊來源。
針對播放清單的每個元素,應用程式會建立個別的拓撲。 這些拓撲中的媒體來源稱為 原生來源,以區別它們與排序器來源。 在播放期間,整個拓撲序列稱為 簡報,而序列中的每個拓撲稱為區 段。
播放是由 媒體會話控制,可提供傳輸控制項,例如播放、暫停和停止。 媒體會話也會管理簡報時間,並將事件傳送至應用程式。 (來自排序器來源的事件會透過媒體會話轉送至應用程式。)
若要建立播放清單,應用程式會建立一或多個播放拓撲,並以所需的播放順序,將它們排入排序器來源上。 在內部,排序器來源會修改拓撲,讓來源節點指向排序器來源,而不是原生來源。 應用程式會將這些修改過的拓撲,而不是原始拓撲傳送至媒體會話。 這可讓排序器來源匯總原生來源,並與媒體會話通訊。
為了在區段之間達到順暢的轉換,排序器來源會預先註冊每個區段。 當一個區段現正播放,而且在播放下列區段之前,排序器來源會引發包含簡報描述元的 MENewPresentation 事件。 應用程式會使用此簡報描述項來取得簡報中下一個區段的拓撲,並將媒體會話上的拓撲排入佇列。
下圖顯示透過排序器來源的播放清單專案資料流程。 應用程式會使用來源解析程式來建立原生來源、建置每個區段的拓撲,並將排序器來源上的拓撲排入佇列。
相關主題