共用方式為


影片範例

影片範例對象是 IMFSample 介面的專門實作,用於與 增強式視訊轉譯器 (EVR)搭配使用。 若要建立此對象的實例,請呼叫 MFCreateVideoSampleFromSurface 函式。 函式會接收 Direct3D 表面的指標,並傳回 IMFSample 介面的指標。 下列類型的物件應該使用此函式來設定範例:

影片範例物件會實作下列介面:

如果 MFCreateVideoSampleFromSurfacepUnkSurface 參數為非NULL,則產生的影片範例會包含封裝 Direct3D 介面的單一媒體緩衝區。 此緩衝區物件的功能有限:

從緩衝區存取表面的唯一方法是使用服務標識符MR_BUFFER_SERVICE來呼叫 IMFGetService::GetService

如果 pUnkSurface 參數為 NULL,影片範例將以零個媒體緩衝區建立。 若要為範例新增緩衝區,請執行下列動作:

  1. 建立 Direct3D 介面。

  2. 呼叫 MFCreateDXSurfaceBuffer來建立介面緩衝區。 如需詳細資訊,請參閱 DirectX Surface Buffer

  3. 呼叫IMFSample::AddBuffer ,以將緩衝區新增至範例。

如果您需要透過IMF2DBuffer介面存取表面記憶體,請使用此方法。

媒體緩衝區

媒體範例