Metode IMFASFContentInfo::P arseHeader (wmcontainer.h)

Mengurai informasi di header ASF dan menggunakan informasi tersebut untuk mengatur nilai dalam objek ContentInfo. Anda dapat meneruskan seluruh header dalam satu buffer atau mengirimkannya dalam beberapa bagian.

Sintaks

HRESULT ParseHeader(
  [in] IMFMediaBuffer *pIHeaderBuffer,
  [in] QWORD          cbOffsetWithinHeader
);

Parameter

[in] pIHeaderBuffer

Penunjuk ke antarmuka IMFMediaBuffer dari objek buffer yang berisi beberapa atau semua header. Buffer harus berisi setidaknya 30 byte, yang merupakan ukuran Objek Header, tidak termasuk objek yang terkandung dalam Objek Header (yaitu, semuanya hingga dan termasuk bidang Reserved2 di Objek Header).

[in] cbOffsetWithinHeader

Offset, dalam byte, dari byte pertama dalam buffer relatif terhadap awal header.

Mengembalikan nilai

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

Menampilkan kode Deskripsi
S_OK
Header sepenuhnya diurai dan divalidasi.
MF_E_ASF_INVALIDDATA
Buffer input tidak berisi data ASF yang valid.
MF_E_BUFFERTOOSMALL
Buffer input terlalu kecil.
MF_S_ASF_PARSEINPROGRESS
Metode berhasil, tetapi header yang dilewatkan tidak lengkap. Ini adalah kode pengembalian yang berhasil untuk semua panggilan tetapi yang terakhir saat meneruskan header dalam potongan-potongan.

Keterangan

Jika Anda meneruskan header dalam potongan-potongan, objek ContentInfo akan menyimpan referensi ke objek buffer hingga seluruh header diurai. Oleh karena itu, jangan menulis melalui buffer yang diteruskan ke metode ini.

Awal objek Header memiliki tata letak berikut dalam memori:

Nama Bidang Ukuran dalam byte
ID Objek 16
Ukuran Objek 8
Jumlah Objek Header 4
Dicadangkan1 1
Dicadangkan2 1
 

Panggilan pertama ke ParseHeader membaca semuanya hingga dan termasuk Rerserved2, sehingga membutuhkan minimal 30 byte. (Perhatikan bahwa metode IMFASFContentInfo::GetHeaderSize hanya membaca bidang ID Objek dan Ukuran Objek, sehingga metode tersebut memerlukan minimal 24 byte.)

Persyaratan

   
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header wmcontainer.h
Pustaka Mfuuid.lib

Lihat juga

IMFASFContentInfo

Menginisialisasi Objek ContentInfo dari File ASF Baru