ASF 媒體接收

ASF 媒體接收是編碼管線中最後一個元件,可讓應用程式寫入 ASF 檔案。

媒體基礎提供兩種類型的 ASF 媒體接收:

  • ASF 檔案接收 是用來將 ASF 媒體資料封存到檔案。
  • ASF 串流接收 是用來在可透過網路串流處理之位元組資料流程中寫入 ASF 內容。

ASF 媒體接收包含一或多個資料流程接收,代表輸出 ASF 檔案中每個資料流程要寫入的資料。 針對在 Windows Vista 上執行的編碼應用程式,您必須建立和設定 ASF 媒體接收,然後將它新增至拓撲,以手動設定編碼拓撲。 在 Windows 7 中,如果您使用快速轉碼物件來建立拓撲,您就沒有直接建立媒體接收,而且應用程式不會在媒體接收或任何資料流程接收上呼叫任何方法。 快速轉碼物件會具現化所需的媒體接收,並將它新增至拓撲,再傳回呼叫端應用程式的參考。 不過,對於快速轉碼物件,視編碼類型而定,有一些套用的限制。

ASF 媒體接收物件模型

ASF 媒體接收會實作 IMFMediaSink 介面,並公開下列介面。 應用程式可以在 ASF 媒體接收上呼叫 QueryInterface 來取得這些介面的參考,其用於產生輸出範例。

介面 描述
IMFMediaSink 所有媒體接收都需要。
IMFFinalizableMediaSink 由 ASF 檔案接收實作,將產生的媒體內容寫入檔案。 您可以使用這個介面上的 方法來排清資料,並更新最終輸出檔的 ASF 標頭物件。
IMFClockStateSink 從簡報時鐘接收狀態變更通知。
IMFASFContentInfo ASF ContentInfo 物件是 WMContainer 層級物件,主要儲存 ASF 標頭物件資訊。 這是用來建立 ASF 媒體接收。
IMFMetadata 用來描述 ASF 檔案的中繼資料。
IMFMetadataProvider 擷取整個簡報的元資料集合,或針對簡報中的一個資料流程擷取。

 

ASF 檔案接收

ASF 檔案接收是媒體基礎所提供的 IMFMediaSink 實作,應用程式可用來將 ASF 媒體資料封存至檔案。

如果您使用管線層物件來寫入新的 ASF 檔案,您必須在檔案接收或任何資料流程接收上建立、設定及呼叫方法。 設定檔案接收之後,您就可以將其新增至編碼管線。

以下是使用 ASF 檔案接收的一般步驟:

  1. 建立檔案接收進程內或跨進程。
  2. 使用所有資料流程、編碼屬性和中繼資料資訊來設定檔案接收。
  3. 藉由列舉資料流程接收,或追蹤接收中的資料流程編號,將檔案接收與輸出拓撲節點產生關聯。

下列主題包含使用 ASF 檔案接收的詳細資訊:

管線層 ASF 元件

媒體基礎中的 ASF 支援