Bagikan melalui


Membuat Objek Pemisah ASF

Objek pemisah ASF adalah objek lapisan WMContainer yang mengurai Objek Data ASF dari file Advanced Systems Format (ASF). Untuk membuat instans baru objek pemisah ASF, panggil fungsi MFCreateASFSplitter . Fungsi ini mengembalikan penunjuk ke antarmuka IMFASFSplitter yang mewakili objek pemisah kosong.

Sebelum pemisah dapat mulai mengurai, aplikasi harus menginisialisasi pemisah dengan informasi dari Objek Header ASF. Untuk menginisialisasi pemisah, panggil metode IMFASFSplitter::Initialize . Metode ini mengambil penunjuk ke Objek ContentInfo ASF yang berisi informasi header file ASF untuk diurai. Aplikasi harus menginisialisasi objek ContentInfo sebelum meneruskannya ke pemisah sehingga karakteristik file media diketahui oleh aplikasi. Metode Inisialisasi pemisah mengekstrak informasi aliran dari objek ContentInfo, seperti nomor aliran, sehingga pemisah dapat mengurai paket data.

Contoh

Contoh kode berikut menunjukkan cara membuat pemisah dan menginisialisasinya dengan objek ContentInfo yang ada.

// Create and initialize the ASF splitter.

HRESULT CreateASFSplitter (IMFASFContentInfo* pContentInfo, 
    IMFASFSplitter** ppSplitter)
{
    IMFASFSplitter *pSplitter = NULL;

    // Create the splitter object.
    HRESULT hr = MFCreateASFSplitter(&pSplitter);

    // Initialize the splitter to work with specific ASF data.
    if (SUCCEEDED(hr))
    {
        hr = pSplitter->Initialize(pContentInfo);
    }
    if (SUCCEEDED(hr))
    {
        // Return the object to the caller.
        *ppSplitter = pSplitter;
        (*ppSplitter)->AddRef();
    }
    SafeRelease(&pSplitter);
    return hr;
}

Catatan

Contoh ini menggunakan fungsi SafeRelease untuk merilis pointer antarmuka.

 

Pemisah ASF