Codici di notifica eventi
Queste sezioni elencano gli eventi DirectShow non specifici del DVD. Per gli eventi specifici del DVD, vedere Codici di notifica eventi DVD.
I filtri inviano eventi a Filter Graph Manager chiamando il metodo IMediaEventSink::Notify. Filtro Graph Manager gestisce alcuni eventi e code per l'applicazione. L'applicazione li recupera chiamando il metodo IMediaEvent::GetEvent .
Nelle sezioni seguenti ogni voce elenca il codice evento, il significato dei parametri dell'evento e l'azione predefinita Filtro Graph Manager per l'evento. Per eseguire l'override dell'azione predefinita, chiamare IMediaEvent::CancelDefaultHandling. I codici evento sono definiti nei file di intestazione Evcode.h e Audevcod.h. Se non è presente alcuna azione predefinita, Il filtro Graph Manager inoltra automaticamente l'evento all'applicazione (tramite la coda di eventi).
Eventi personalizzati
I filtri possono definire eventi personalizzati con codici eventi nell'intervallo EC_USER e versioni successive. Il filtro Graph Manager lo inserisce direttamente nella coda degli eventi. Tuttavia, le seguenti avvertenze si applicano:
- Filter Graph Manager non può liberare i parametri dell'evento usando il normale metodo IMediaEvent::FreeEventParams. L'applicazione deve liberare qualsiasi numero di memoria o di riferimento associato ai parametri dell'evento.
- Il filtro deve inviare l'evento solo dall'interno di un'applicazione preparata per gestire l'evento. Eventualmente l'applicazione può impostare una proprietà personalizzata sul filtro per indicare che è sicuro inviare l'evento.
Codice di notifica dell'evento | Descrizione |
---|---|
EC_ACTIVATE | Viene attivata o disattivata una finestra video. |
EC_BANDWIDTHCHANGE | Non supportata. |
EC_BUFFERING_DATA | Il grafico esegue il buffering dei dati o ha arrestato i dati di buffering. |
EC_BUILT | Invia dal controllo video quando è stato creato un grafico. Non inoltrato alle applicazioni. |
EC_CLOCK_CHANGED | L'orologio di riferimento è cambiato. |
EC_CLOCK_UNSET | Il provider di clock è stato disconnesso. |
EC_CODECAPI_EVENT | Inviato da un codificatore per segnalare un evento di codifica. |
EC_COMPLETE | Tutti i dati di un determinato flusso sono stati sottoposti a rendering. |
EC_CONTENTPROPERTY_CHANGED | Non supportata. |
EC_DEVICE_LOST | Un dispositivo Plug and Play è stato rimosso o è di nuovo disponibile. |
EC_DISPLAY_CHANGED | La modalità di visualizzazione è stata modificata. |
EC_END_OF_SEGMENT | La fine di un segmento è stata raggiunta. |
EC_EOS_SOON | Non supportata. |
EC_ERROR_STILLPLAYING | Un comando asincrono per eseguire il grafico non è riuscito. |
EC_ERRORABORT | Un'operazione è stata interrotta a causa di un errore. |
EC_ERRORABORTEX | Un'operazione è stata interrotta a causa di un errore. |
EC_EXTDEVICE_MODE_CHANGE | Non supportata. |
EC_FILE_CLOSED | Il file di origine è stato chiuso a causa di un evento imprevisto. |
EC_FULLSCREEN_LOST | Il renderer video sta disattivando la modalità schermo intero. |
EC_GRAPH_CHANGED | Il grafico del filtro è cambiato. |
EC_LENGTH_CHANGED | La lunghezza di un'origine è stata modificata. |
EC_LOADSTATUS | Notifica all'applicazione di stato durante l'apertura di un file di rete. |
EC_MARKER_HIT | Non supportata. |
EC_NEED_RESTART | Un filtro richiede che il grafico venga riavviato. |
EC_NEW_PIN | Non supportata. |
EC_NOTIFY_WINDOW | Notifica un filtro della finestra del renderer video. |
EC_OLE_EVENT | Un filtro passa una stringa di testo all'applicazione. |
EC_OPENING_FILE | Il grafico apre un file o ha completato l'apertura di un file. |
EC_PALETTE_CHANGED | La tavolozza video è cambiata. |
EC_PAUSED | È stata completata una richiesta di sospensione. |
EC_PLEASE_REOPEN | Il file di origine è stato modificato. |
EC_PREPROCESS_COMPLETE | Inviato dal filtro writer WM ASF quando completa la pre-elaborazione per la codifica multipass. |
EC_PROCESSING_LATENCY | Indica la quantità di tempo che un componente sta prendendo per elaborare ogni esempio. |
EC_QUALITY_CHANGE | Il grafico elimina campioni, per il controllo qualità. |
EC_RENDER_FINISHED | Non supportata. |
EC_REPAINT | Un renderer video richiede un repository. |
EC_SAMPLE_LATENCY | Specifica la distanza di pianificare un componente per l'elaborazione di esempi. |
EC_SAMPLE_NEEDED | Richiede un nuovo esempio di input dal filtro EVR (Enhanced Video Renderer). |
EC_SCRUB_TIME | Specifica il timestamp per il passaggio di frame più recente. |
EC_SEGMENT_STARTED | È stato avviato un nuovo segmento. |
EC_SHUTTING_DOWN | Il grafico del filtro viene arrestato, prima di essere distrutto. |
EC_SNDDEV_IN_ERROR | Si è verificato un errore del dispositivo in un filtro di acquisizione audio. |
EC_SNDDEV_OUT_ERROR | Si è verificato un errore del dispositivo in un filtro del renderer audio. |
EC_STARVATION | Un filtro non riceve dati sufficienti. |
EC_STATE_CHANGE | Il grafico del filtro ha modificato lo stato. |
EC_STATUS | Contiene due stringhe di stato arbitrarie. |
EC_STEP_COMPLETE | Un filtro che esegue l'esecuzione del passaggio del frame ha eseguito l'esecuzione del passaggio del fotogramma al numero specificato di fotogrammi. |
EC_STREAM_CONTROL_STARTED | Un comando start del controllo di flusso ha avuto effetto. |
EC_STREAM_CONTROL_STOPPED | Un comando di arresto del controllo di flusso ha avuto effetto. |
EC_STREAM_ERROR_STILLPLAYING | Si è verificato un errore in un flusso. Il flusso è ancora in riproduzione. |
EC_STREAM_ERROR_STOPPED | Un flusso è stato arrestato a causa di un errore. |
EC_TIMECODE_AVAILABLE | Non supportata. |
EC_UNBUILT | Invia dal controllo video quando un grafico è stato eliminato. Non inoltrato alle applicazioni. |
EC_USERABORT | L'utente ha terminato la riproduzione. |
EC_VIDEO_SIZE_CHANGED | Le dimensioni del video nativo sono state modificate. |
EC_VIDEOFRAMEREADY | Un frame video è pronto per la visualizzazione. |
EC_VMR_RECONNECTION_FAILED | Inviato da VMR-7 e vmR-9 quando non è stato in grado di accettare una richiesta di modifica del formato dinamico dal decodificatore upstream. |
EC_VMR_RENDERDEVICE_SET | Inviato quando vmR ha selezionato il meccanismo di rendering. |
EC_VMR_SURFACE_FLIPPED | Inviato quando il relatore dell'allocatore vmR-7 ha chiamato il metodo DirectDraw Flip sulla superficie da presentare. |
EC_WINDOW_DESTROYED | Il renderer video è stato distrutto o rimosso dal grafico. |
EC_WMT_EVENT | Inviato dal filtro lettore WM ASF quando legge i file ASF protetti da Digital Rights Management (DRM). |
EC_WMT_INDEX_EVENT | Inviato quando un'applicazione usa WM ASF Writer per indicizzare Windows file video multimediali. |
Argomenti correlati