ICodecAPI::Metode RegisterForEvent (strmif.h)

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine , dan Pengambilan Audio/Video di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Metode RegisterForEvent mendaftarkan aplikasi untuk menerima peristiwa dari codec.

Sintaks

HRESULT RegisterForEvent(
  [in]  const GUID *Api,
  [out] LONG_PTR   userData
);

Parameter

[in] Api

Penunjuk ke GUID yang menentukan peristiwa. Ada tiga kategori peristiwa:

Nilai Makna
CODECAPI_CHANGELISTS
Codec memberi tahu aplikasi ketika properti codec berubah. Data peristiwa adalah daftar GUID untuk properti yang berubah.
Salah satu GUID properti yang ditentukan dalam codecapi.h. (Lihat Properti API Codec.)
Codec memberi tahu aplikasi ketika properti yang ditentukan berubah. Biasanya, codec akan mendukung jenis pemberitahuan ini untuk sekumpulan properti terbatas, jika ada.
GUID peristiwa kepemilikan yang ditentukan oleh codec.
Dependen implementasi.

[out] userData

Arahkan ke data yang ditentukan pemanggil. Aplikasi menerima pointer ini dalam parameter peristiwa lParam1 .

Nilai kembali

Metode ini dapat mengembalikan salah satu nilai ini.

Menampilkan kode Deskripsi
S_OK
Metode berhasil.
E_NOTIMPL
Tidak diterapkan. Codec tidak mendukung pemberitahuan peristiwa, atau tidak mendukung GUID peristiwa yang ditentukan dalam parameter Api .

Keterangan

Aplikasi menerima pemberitahuan peristiwa EC_CODECAPI_EVENT setiap kali codec encoder mengirim peristiwa. Untuk mendapatkan peristiwa, gunakan antarmuka IMediaEventEx .

Parameter lParam2 dari peristiwa adalah penunjuk ke struktur CodecAPIEventData . Struktur ini dapat diikuti oleh data tambahan, tergantung pada GUID peristiwa. Ukuran data ini diberikan oleh anggota dataLength .

GUID Data Peristiwa
CODECAPI_CHANGELISTS Array GUID. Setiap GUID menentukan properti codec yang nilainya saat ini atau rentang valid telah berubah. Ukuran array adalah dataLength / sizeof(GUID).
GUID properti yang ditentukan dalam codecapi.h. Tidak ada.
GUID peristiwa kepemilikan. Dependen implementasi.
 

Jika codec tidak mendukung peristiwa yang ditentukan, metode akan mengembalikan E_NOTIMPL. Codec mungkin mendukung peristiwa lain.

Untuk menonaktifkan pemberitahuan untuk suatu peristiwa, panggil ICodecAPI::UnregisterForEvent.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP dengan SP2 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2003 R2 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header strmif.h (termasuk Dshow.h)
Pustaka Strmiids.lib

Lihat juga

Referensi API Codec

Encoder API

ICodecAPI