次の方法で共有


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
Library Mf.lib
[DLL] Mf.dll

こちらもご覧ください

IMFMediaSource

メディア ファンデーション機能