IMFSchemeHandler::BeginCreateObject method (mfidl.h)
Memulai permintaan asinkron untuk membuat objek dari URL.
Saat Pemecah Masalah Sumber membuat sumber media dari URL, pemecah masalah meneruskan permintaan ke handler skema. Handler skema mungkin membuat sumber media langsung dari URL, atau mungkin mengembalikan aliran byte. Jika mengembalikan aliran byte, pemecah masalah sumber menggunakan handler byte-stream untuk membuat sumber media dari aliran byte.
Sintaks
HRESULT BeginCreateObject(
[in] LPCWSTR pwszURL,
[in] DWORD dwFlags,
[in] IPropertyStore *pProps,
[out] IUnknown **ppIUnknownCancelCookie,
[in] IMFAsyncCallback *pCallback,
[in] IUnknown *punkState
);
Parameter
[in] pwszURL
String yang dihentikan null yang berisi URL untuk diatasi.
[in] dwFlags
Bitwise ATAU dari satu atau beberapa bendera. Lihat Bendera Pemecah Masalah Sumber.
[in] pProps
Penunjuk ke antarmuka IPropertyStore dari penyimpanan properti. Penangan skema dapat menggunakan penyimpanan properti ini untuk mengonfigurasi objek. Parameter ini bisa NULL. Untuk informasi selengkapnya, lihat Mengonfigurasi Sumber Media.
[out] ppIUnknownCancelCookie
Menerima pointer IUnknown atau nilai NULL. Jika nilainya bukan NULL, Anda dapat membatalkan operasi asinkron dengan meneruskan penunjuk ini ke metode IMFSchemeHandler::CancelObjectCreation . Pemanggil harus merilis antarmuka. Parameter ini bisa NULL, dalam hal ini pointer IUnknown tidak dikembalikan ke pemanggil.
[in] pCallback
Penunjuk ke antarmuka IMFAsyncCallback dari objek panggilan balik. Pemanggil harus mengimplementasikan antarmuka ini.
[in] punkState
Penunjuk ke antarmuka IUnknown dari objek status, yang ditentukan oleh pemanggil. Parameter ini bisa NULL. Anda dapat menggunakan objek ini untuk menyimpan informasi status. Objek dikembalikan ke pemanggil ketika panggilan balik dipanggil.
Menampilkan nilai
Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Metode berhasil. |
|
Tidak dapat membuka URL dengan akses yang diminta (baca atau tulis). |
|
Jenis aliran byte yang tidak didukung. |
Keterangan
Parameter dwFlags harus berisi bendera MF_RESOLUTION_MEDIASOURCE atau bendera MF_RESOLUTION_BYTESTREAM . Jika bendera MF_RESOLUTION_MEDIASOURCE diatur, penangan skema mungkin membuat sumber media langsung dari URL, atau mungkin membuat aliran byte. Jenis objek dikembalikan dalam parameter pObjectType dari metode IMFSchemeHandler::EndCreateObject . Jika handler skema mengembalikan aliran byte, pemecah masalah sumber akan meneruskan aliran byte ke handler byte-stream, yang akan membuat sumber media dari aliran byte.
Jika bendera MF_RESOLUTION_BYTESTREAM diatur, handler skema akan mencoba membuat aliran byte dari URL. Namun, jika handler skema dirancang untuk membuat sumber media secara langsung, bukan aliran byte, metode akan gagal.
Tabel berikut ini meringkas perilaku kedua bendera ini saat diteruskan ke metode ini:
Bendera | Objek dibuat |
---|---|
MF_RESOLUTION_MEDIASOURCE | Sumber media atau aliran byte |
MF_RESOLUTION_BYTESTREAM | Aliran byte |
Bendera MF_RESOLUTION_MEDIASOURCE dan MF_RESOLUTION_BYTESTREAM dapat digabungkan, meskipun dalam hal ini berlebihan.
Ketika operasi selesai, handler skema memanggil metode IMFAsyncCallback::Invoke . Metode Panggil harus memanggil IMFSchemeHandler::EndCreateObject untuk mendapatkan penunjuk ke objek yang dibuat.
Persyaratan
Klien minimum yang didukung | Windows Vista [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2008 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | mfidl.h |
Pustaka | Mfuuid.lib |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk