MFCreateAggregateSource 函式 (mfidl.h)

建立可匯總媒體來源集合的媒體來源。

語法

HRESULT MFCreateAggregateSource(
  [in]  IMFCollection  *pSourceCollection,
  [out] IMFMediaSource **ppAggSource
);

參數

[in] pSourceCollection

集合物件之 IMFCollection 介面的指標,其中包含媒體來源的清單。

[out] ppAggSource

接收匯總媒體來源之 IMFMediaSource 介面的指標。 呼叫端必須釋放 介面。

傳回值

函式會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。

傳回碼 描述
S_OK
此方法已成功。
E_INVALIDARG
pSourceCollection 集合不包含任何專案。

備註

匯總的媒體來源適用於合併來自不同媒體來源的數據流。 例如,您可以使用它來結合視訊擷取來源和音訊擷取來源。

範例

HRESULT CreateAggregatedSource(
    IMFMediaSource *pSource1,
    IMFMediaSource *pSource2,
    IMFMediaSource **ppAggSource
    )
{
    *ppAggSource = NULL;

    IMFCollection *pCollection = NULL;

    HRESULT hr = MFCreateCollection(&pCollection);

    if (SUCCEEDED(hr))
    {
        hr = pCollection->AddElement(pSource1);
    }
    if (SUCCEEDED(hr))
    {
        hr = pCollection->AddElement(pSource2);
    }
    if (SUCCEEDED(hr))
    {
        hr = MFCreateAggregateSource(pCollection, ppAggSource);
    }
    SafeRelease(&pCollection);
    return hr;    
}

規格需求

需求
最低支援的用戶端 Windows 7 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 mfidl.h
程式庫 Mf.lib
Dll Mf.dll

另請參閱

IMFMediaSource

媒體基礎函式