Kode Pemberitahuan Peristiwa
[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan 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 Audio/Video Capture 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.]
Bagian ini mencantumkan peristiwa DirectShow yang tidak spesifik untuk DVD. Untuk peristiwa khusus DVD, lihat Kode Pemberitahuan Peristiwa DVD.
Filter mengirim peristiwa ke Filter Graph Manager dengan memanggil metode IMediaEventSink::Notify . Filter Graph Manager menangani beberapa peristiwa dan mengantre yang lain untuk aplikasi. Aplikasi mengambilnya dengan memanggil metode IMediaEvent::GetEvent .
Di bagian berikut, setiap entri mencantumkan kode peristiwa, arti parameter peristiwa, dan tindakan default Filter Graph Manager untuk peristiwa tersebut, jika ada. Untuk mengambil alih tindakan default, panggil IMediaEvent::CancelDefaultHandling. Kode peristiwa didefinisikan dalam file header Evcode.h dan Audevcod.h. Jika tidak ada tindakan default, Filter Graph Manager secara otomatis meneruskan peristiwa ke aplikasi (melalui antrean peristiwa).
Kejadian Kustom
Filter dapat menentukan peristiwa kustom dengan kode peristiwa dalam rentang EC_USER dan yang lebih tinggi. Filter Graph Manager akan menempatkan ini langsung dalam antrean peristiwa. Namun, peringatan berikut berlaku:
- Filter Graph Manager tidak dapat membebaskan parameter peristiwa menggunakan metode IMediaEvent::FreeEventParams normal. Aplikasi harus membebaskan memori atau jumlah referensi apa pun yang terkait dengan parameter peristiwa.
- Filter hanya boleh mengirim peristiwa dari dalam aplikasi yang disiapkan untuk menangani peristiwa. (Mungkin aplikasi dapat mengatur properti kustom pada filter untuk menunjukkan bahwa aman untuk mengirim peristiwa.)
Kode pemberitahuan peristiwa | Deskripsi |
---|---|
EC_ACTIVATE | Jendela video sedang diaktifkan atau dinonaktifkan. |
EC_BANDWIDTHCHANGE | Tidak didukung. |
EC_BUFFERING_DATA | Grafik adalah data buffering, atau telah menghentikan buffering data. |
EC_BUILT | Kirim oleh Kontrol Video saat grafik telah dibuat. Tidak diteruskan ke aplikasi. |
EC_CLOCK_CHANGED | Jam referensi telah berubah. |
EC_CLOCK_UNSET | Penyedia jam terputus. |
EC_CODECAPI_EVENT | Dikirim oleh encoder untuk memberi sinyal peristiwa pengodean. |
EC_COMPLETE | Semua data dari aliran tertentu telah dirender. |
EC_CONTENTPROPERTY_CHANGED | Tidak didukung. |
EC_DEVICE_LOST | Perangkat Plug and Play telah dihapus atau telah tersedia lagi. |
EC_DISPLAY_CHANGED | Mode tampilan telah berubah. |
EC_END_OF_SEGMENT | Akhir segmen telah tercapai. |
EC_EOS_SOON | Tidak didukung. |
EC_ERROR_STILLPLAYING | Perintah asinkron untuk menjalankan grafik gagal. |
EC_ERRORABORT | Operasi dibatalkan karena kesalahan. |
EC_ERRORABORTEX | Operasi dibatalkan karena kesalahan. |
EC_EXTDEVICE_MODE_CHANGE | Tidak didukung. |
EC_FILE_CLOSED | File sumber ditutup karena kejadian tak terduga. |
EC_FULLSCREEN_LOST | Perender video beralih dari mode layar penuh. |
EC_GRAPH_CHANGED | Grafik filter telah berubah. |
EC_LENGTH_CHANGED | Panjang sumber telah berubah. |
EC_LOADSTATUS | Memberi tahu aplikasi kemajuan saat membuka file jaringan. |
EC_MARKER_HIT | Tidak didukung. |
EC_NEED_RESTART | Filter meminta agar grafik dimulai ulang. |
EC_NEW_PIN | Tidak didukung. |
EC_NOTIFY_WINDOW | Memberi tahu filter jendela perender video. |
EC_OLE_EVENT | Filter meneruskan string teks ke aplikasi. |
EC_OPENING_FILE | Grafik sedang membuka file, atau telah selesai membuka file. |
EC_PALETTE_CHANGED | Palet video telah berubah. |
EC_PAUSED | Permintaan jeda telah selesai. |
EC_PLEASE_REOPEN | File sumber telah berubah. |
EC_PREPROCESS_COMPLETE | Dikirim oleh filter Penulis WM ASF ketika menyelesaikan pra-pemrosesan untuk pengodean multipass. |
EC_PROCESSING_LATENCY | Menunjukkan jumlah waktu yang dibutuhkan komponen untuk memproses setiap sampel. |
EC_QUALITY_CHANGE | Grafik menghilangkan sampel, untuk kontrol kualitas. |
EC_RENDER_FINISHED | Tidak didukung. |
EC_REPAINT | Perender video memerlukan repaint. |
EC_SAMPLE_LATENCY | Menentukan seberapa jauh di belakang jadwal komponen untuk memproses sampel. |
EC_SAMPLE_NEEDED | Meminta sampel input baru dari filter Enhanced Video Renderer (EVR). |
EC_SCRUB_TIME | Menentukan stempel waktu untuk langkah bingkai terbaru. |
EC_SEGMENT_STARTED | Segmen baru telah dimulai. |
EC_SHUTTING_DOWN | Grafik filter dimatikan, sebelum dihancurkan. |
EC_SNDDEV_IN_ERROR | Terjadi kesalahan perangkat dalam filter tangkapan audio. |
EC_SNDDEV_OUT_ERROR | Terjadi kesalahan perangkat dalam filter perender audio. |
EC_STARVATION | Filter tidak menerima data yang cukup. |
EC_STATE_CHANGE | Grafik filter telah berubah status. |
EC_STATUS | Berisi dua string status arbitrer. |
EC_STEP_COMPLETE | Filter yang melakukan langkah bingkai telah melangkah ke jumlah bingkai yang ditentukan. |
EC_STREAM_CONTROL_STARTED | Perintah mulai kontrol aliran telah berlaku. |
EC_STREAM_CONTROL_STOPPED | Perintah penghentian kontrol aliran telah berlaku. |
EC_STREAM_ERROR_STILLPLAYING | Terjadi kesalahan dalam aliran. Aliran masih diputar. |
EC_STREAM_ERROR_STOPPED | Aliran berhenti karena kesalahan. |
EC_TIMECODE_AVAILABLE | Tidak didukung. |
EC_UNBUILT | Kirim oleh Kontrol Video ketika grafik telah ditimpa. Tidak diteruskan ke aplikasi. |
EC_USERABORT | Pengguna telah menghentikan pemutaran. |
EC_VIDEO_SIZE_CHANGED | Ukuran video asli telah berubah. |
EC_VIDEOFRAMEREADY | Bingkai video siap untuk ditampilkan. |
EC_VMR_RECONNECTION_FAILED | Dikirim oleh VMR-7 dan VMR-9 ketika tidak dapat menerima permintaan perubahan format dinamis dari dekoder upstream. |
EC_VMR_RENDERDEVICE_SET | Dikirim ketika VMR telah memilih mekanisme penyajiannya. |
EC_VMR_SURFACE_FLIPPED | Dikirim ketika presenter alokator VMR-7 telah memanggil metode DirectDraw Flip pada permukaan yang disajikan. |
EC_WINDOW_DESTROYED | Perender video dihancurkan atau dihapus dari grafik. |
EC_WMT_EVENT | Dikirim oleh filter Pembaca WM ASF saat membaca file ASF yang dilindungi oleh manajemen hak digital (DRM). |
EC_WMT_INDEX_EVENT | Dikirim ketika aplikasi menggunakan Penulis WM ASF untuk mengindeks file Windows Media Video. |
Topik terkait
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