ASF 檔案結構

本主題描述進階系統格式 (ASF) 檔案的結構。

如需 ASF 檔案的詳細資訊,請下載 ASF 規格

ASF 檔案的組織基底單位稱為 物件。 ASF 檔案物件包含下列數據。

資料 大小
識別物件的 GUID。 128 位
物件的大小。 64 位。
對象數據。 對象數據可以包含其他 ASF 物件。 變動。

注意

ASF 檔案物件只是數據的區塊。 它不是計算機程式設計意義上的物件。

ASF 檔案包含三種類型的最上層檔案物件。

ASF 檔案物件 描述
Header 物件
包含 ASF 檔案的相關信息。
Data 物件
包含媒體數據的封包。
Index 物件(s)
包含一或多個索引。 (選用。)

下圖顯示 ASF 檔案結構。

顯示 asf 檔案結構的圖表,包括標頭、數據和索引內的專案

此圖表未繪製為縮放比例;通常數據物件包含大部分的檔案。

Header 物件

Header 對像是必要專案,並出現在每個 ASF 檔案的開頭。 其中包含 ASF 檔案中數據流的全域檔案屬性和相關信息。 這項資訊可用來解譯和播放檔案中的數據。

Header 物件包含數個瘋狂的子物件:

  • File Properties 物件描述檔案的全域屬性,例如檔案大小、播放持續時間、數據封包數目、封包大小下限和上限,以及最大比特率。
  • 標頭擴充物件可讓其他功能新增至 ASF 檔案,同時維持回溯相容性。
  • Stream Properties 物件描述檔案中的一個數據流。 ASF 檔案必須至少包含一個數據流,因此至少有一個 Stream Properties 物件。

Header 物件可以包含其他選擇性資訊,包括檔案的相關元數據(例如標題和作者)、用來編碼檔案的編解碼器清單,以及內容保護資訊。

資料物件

ASF 資料物件包含 ASF 檔案的所有媒體數據。 此物件為必要物件,且必須遵循 ASF 標頭物件。

數據物件分成數據 封包。 每個封包都包含檔案中一或多個數據流的數據。 數據封包包含提供封包剖析信息的數據封包標頭,後面接著承載數據實際數位媒體數據。 所有數據封包都有與其相關聯的呈現時間,並依收到的順序排列。

數據對象的內容相關信息,例如封包大小和封包計數,會儲存在 Header 物件中。

Index 物件

Index 對像是選擇性的,而且是 ASF 檔案中的最後一個物件。 ASF 檔案可以包含一個以上的 Index 物件。 Index 物件提供 ASF 資料物件的時間型隨機存取。

簡單索引物件是另一種索引類型。

媒體基礎中的 ASF 支援