使用動態封裝器篩選資訊清單

媒體服務標誌 v3


警告

Azure 媒體服務將於 2024 年 6 月 30 日淘汰。 如需詳細資訊,請參閱 AMS淘汰指南

當您將自適性串流內容傳遞至裝置時,有時需要發佈多個版本的資訊清單,以鎖定特定裝置功能或可用的網路頻寬。 動態封裝器可讓您指定篩選條件,可即時篩除特定轉碼器、解析度、位元速率和音訊播放軌組合。 篩選會移除建立多個復本的需求。 您只需要發佈新的 URL,並納入一組設定為目標裝置 (iOS、Android、SmartTV 或瀏覽器) 的篩選條件,以及網路功能 (高頻寬、行動或低頻寬案例)。 在此情況下,用戶端可以透過查詢字串來操作內容的串流 (透過指定可用的資產篩選條件或帳戶篩選條件),以及使用篩選條件來串流串流的特定區段。

某些傳遞案例會要求您確定客戶無法存取特定追蹤。 例如,您可能不想將包含 HD 追蹤的資訊清單發佈至特定訂閱者階層。 或者,您可能想要移除特定自適性位元速率 (ABR) 追蹤,以降低傳遞至無法從其他播放軌獲益的特定裝置成本。 在此情況下,您可以將預先建立的篩選條件清單與建立時的串流定位器建立關聯。 用戶端無法接著操作內容串流的方式,因為這是由串流定位器所定義。

您可以透過在串流定位器上指定篩選條件,外加用戶端在 URL 中指定的其他裝置特定篩選條件,以結合篩選。 這個組合有助於限制其他播放軌,例如中繼資料或事件串流、音訊語言或描述性音訊播放軌。

您可以在串流上指定不同的篩選條件,以提供功能強大的動態資訊清單操作解決方案,從而鎖定目標裝置的多個使用案例。 本主題說明動態資訊清單相關的概念,並提供您可能能夠使用此功能的案例範例。

注意

動態資訊清單不會變更資產和該資產的預設資訊清單。

資訊清單概觀

Azure 媒體服務支援 HLS、MPEG DASH 和 Smooth Streaming 通訊協定。 在動態封裝期間,串流用戶端資訊清單 (HLS 主要播放清單、DASH 媒體呈現描述 [MPD],以及 Smooth Streaming) 會根據 URL 中的格式選取器動態產生。 如需詳細資訊,請參閱一般隨選工作流程中的傳遞通訊協定。

取得並檢查資訊清單檔案

根據應將您資料流的哪個資料軌 (即時或點播視訊 [VOD]) 包含至動態建立的資訊清單中,來指定篩選器資料軌屬性條件清單。 您必須先載入 Smooth Streaming 資訊清單,才能取得並檢查資料軌的屬性。

監視視訊資料流的位元速率

您可以使用 Azure 媒體播放器示範頁面 \(英文\) 來監視視訊資料流的位元速率。 示範頁面會在 [Diagnostics] (診斷) 索引標籤上顯示診斷資訊:

azure 媒體播放器診斷

範例:查詢字串中具有篩選條件的 URL

您可以將篩選條件套用至 ABR 串流通訊協定:HLS、MPEG-DASH 和 Smooth Streaming。 下表顯示包含篩選器之 URL 的一些範例:

通訊協定 範例
HLS https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(format=m3u8-aapl,filter=myAccountFilter)
MPEG DASH https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(format=mpd-time-csf,filter=myAssetFilter)
Smooth Streaming https://amsv3account-usw22.streaming.media.azure.net/fecebb23-46f6-490d-8b70-203e86b0df58/bigbuckbunny.ism/manifest(filter=myAssetFilter)

轉譯篩選

您可以選擇將資產編碼成多個編碼設定檔 (H.264 Baseline、H.264 High、AACL、AACH、Dolby Digital Plus),及多個高品質位元速率。 不過,並非所有的用戶端裝置都支援您所有的資產和位元速率。 例如,較舊的 Android 裝置只支援 H.264 Baseline+AACL。 將較高的位元速率傳送到無法獲益的裝置,會浪費頻寬和裝置計算。 這類裝置必須將所有指定的資訊解碼,才能縮小以顯示。

您可以使用動態資訊清單建立裝置設定檔 (例如行動、主控台或 HD/SD) ,並包括您想要納入設定檔中的資料軌和品質。 這稱為轉譯篩選。 如下圖範例所示。

轉譯篩選 2 圖表

下圖頂端顯示用於不含篩選條件資產的 HLS 資訊清單。 (它包含所有七個轉譯。) 在左下角,此圖表會顯示套用名為 “ott” 篩選的 HLS 指令清單。 「ott」篩選條件會指定要移除所有不到 1 Mbps 的位元速率,因此將最差的兩個品質等級從回應中去除。 右下角圖表顯示名為「mobile」的篩選條件已套用到 HLS 資訊清單中。 「mobile」篩選條件會指定要移除的解析度大於 720p 的轉譯,因此去除兩個 1080p 的轉譯。

轉譯篩選圖表

移除語言資料軌

您的資產可能包含多個音訊語言,例如英文、西班牙文、法文等。 通常,播放程式 SDK 管理員會預設音訊資料軌選取範圍,以及每個使用者可選擇的可用音訊資料軌。

開發這類的播放程式 SDK 相當有挑戰性,因為在各個裝置特有的播放程式架構之間有不同的實作方式。 此外,在某些平台上,播放器 API 會受到限制,且不包含使用者無法選取或變更預設播放軌的音訊選取功能。透過資產篩選,您可以建立只包含所需音訊語言的篩選條件來控制行為。

語言篩選圖表

修剪資產開頭

在大部分的即時資料流事件中,操作人員必須在實際的事件前先進行測試。 例如,他們可以在事件開始前包含如下 slate 訊息:「程式將立刻開始」。

如果程式正在進行封存,則測試和靜態圖像資料也會一併封存並包含在簡報中。 但是此資訊不會對用戶端顯示。 透過動態資訊清單,您可以建立開始時間篩選器,並從資訊清單中移除不必要的資料。

修剪篩選圖表

從即時封存中建立子剪輯 (檢視)

許多即時事件的執行時間長,且即時封存可能包括多個事件。 即時事件結束後,廣播者可能想要將即時封存分解成邏輯程式的啟動和停止序列。

您可以個別發佈這些虛擬程式,但不後續處理即時封存,亦不建立個別的資產 (這無法運用 CDN 中現有快取片段的優點)。 例如足球或籃球比賽的球季、棒球賽局,或是任何體育節目的個別事件,都是此類虛擬程式的範例。

使用動態資訊清單,您便可以使用開始/結束時間建立篩選器,並在即時封存頂端建立虛擬檢視。

subsclips 篩選圖表

以下是篩選後的資產:

skiing filter diagram

調整呈現視窗 (DVR)

Azure 媒體服務目前提供迴圈封存,可在 1 分鐘到 25 小時之間設定持續時間。 資訊清單篩選可以在封存頂端建立循環 DVR 視窗封存,而不會刪除媒體。 在許多情況下,廣播者想要提供受限制的 DVR 時段以隨著即時邊緣移動,並同時保留更大的封存視窗。 廣播者可能會想要使用超出 DVR 視窗的資料來反白顯示剪輯,或者想要為不同的裝置提供不同的 DVR 視窗。 例如,大多數的行動裝置不處理大型 DVR 視窗 (您可以讓行動裝置有 2 分鐘長的 DVR 視窗,而桌上型用戶端的有一小時長)。

dvr 篩選圖表

調整 LiveBackoff (即時位置)

資訊清單篩選可用來移除即時程式其即時邊緣幾秒鐘的時間。 篩選可讓廣播者在檢視者收到資料流前 (倒退 30 秒) 先觀賞預覽發佈點的簡報,並建立廣告插入點。 廣播者接著可將這些廣告及時推送到其用戶端架構,讓廣播者能夠收到與處理資訊,才有機會播放廣告。

除了廣告支援外,LiveBackoff 設定可用來調整檢視者位置,讓用戶端移動並點閱即時邊緣時,仍然可以從伺服器取得片段。 如此一來,用戶端就不會收到 HTTP 404 或 412 錯誤。

即時輪詢篩選圖表

將多個規則結合成單一篩選器

您可以將多個篩選規則結合成單一篩選器。 例如,您可以定義一個「範圍規則」,將靜態圖像從即時封存中移除,並同時篩選出可用的位元速率。 當您套用多個篩選規則時,最終結果會是所有規則的交集。

多個規則篩選圖表

結合多個篩選條件 (篩選器組合)

您也可以將多個篩選條件結合成單一 URL。 下列案例示範您可能會想結合篩選條件的理由:

  1. 您要篩選例如 Android 或 iPad 等行動裝置的視訊品質 (以限制視訊品質)。 若要移除不必要的品質,您可以建立適用於裝置設定檔的帳戶篩選器。 您可以將帳戶篩選器用於相同媒體服務帳戶下所有的資產,而不需進一步的關聯。
  2. 您也想要修剪資產的開始和結束時間。 若要進行修剪,您可以建立資產篩選器,並設定開始/結束時間。
  3. 您想要合併這兩個篩選條件。 如果沒有組合,您必須將品質篩選新增至修剪篩選條件,這會讓篩選使用方式變得更困難。

若要結合篩選條件,請設定資訊清單/播放清單 URL 的篩選條件名稱,並使用分號分隔的格式。 假設您有一個名為 MyMobileDevice 的篩選條件可篩選品質,而且您有另一個名為 MyStartTime 的篩選來設定特定的開始時間。 您可以結合最多三個篩選。

考量與限制

  • 不應為 VOD 篩選器設定 forceEndTimestamppresentationWindowDurationliveBackoffDuration 的值。 這些僅用於即時篩選案例。

  • 動態資訊清單會在 GOP 界限 (主要畫面格) 中運作,因此修剪後能夠有精確的 GOP。

  • 您可以將相同的篩選器名稱用於帳戶和資產篩選器。 資產篩選器有較高的優先順序,因此會覆寫帳戶篩選器。

  • 如果您更新篩選器,則資料流端點需要 2 分鐘的時間來重新整理規則。 如果您使用篩選器來提供內容 (以及您在 Proxy 和 CDN 快取中快取內容),則更新這些篩選器可能會導致播放器失敗。 我們建議在更新篩選器之後清除快取。 如果這個選項無法執行,請考慮使用不同的篩選器。

  • 客戶必須手動下載資訊清單,並剖析確切的開始時間戳記和時間範圍。

    • 若要判斷 Asset 中資料軌的屬性,請取得並檢查資訊清單檔案
    • 設定資產篩選器 time-stamp 屬性的公式為:
      startTimestamp = <資訊清單中的開始時間> + <預期的篩選器開始時間 (秒)> * timescale

取得說明及支援

您可以連絡媒體服務並提出問題,或遵循下列其中一種方法來追蹤我們的更新: