Bagikan melalui


Fungsi MFCreateAggregateSource (mfidl.h)

Membuat sumber media yang menggabungkan kumpulan sumber media.

Sintaks

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

Parameter

[in] pSourceCollection

Penunjuk ke antarmuka IMFCollection dari objek koleksi yang berisi daftar sumber media.

[out] ppAggSource

Menerima pointer ke antarmuka IMFMediaSource dari sumber media agregat. Pemanggil harus merilis antarmuka.

Nilai kembali

Fungsi mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.

Menampilkan kode Deskripsi
S_OK
Metode berhasil.
E_INVALIDARG
Koleksi pSourceCollection tidak berisi elemen apa pun.

Keterangan

Sumber media agregat berguna untuk menggabungkan aliran dari sumber media terpisah. Misalnya, Anda dapat menggunakannya untuk menggabungkan sumber pengambilan video dan sumber pengambilan audio.

Contoh

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;    
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header mfidl.h
Pustaka Mf.lib
DLL Mf.dll

Lihat juga

IMFMediaSource

Fungsi Media Foundation