EVENTO MEStreamTick
Segnala che un flusso multimediale non dispone di dati disponibili in un determinato momento.
Valori dell'evento
I valori possibili recuperati da IMFMediaEvent::GetValue includono quanto segue.
VARTYPE | Descrizione |
---|---|
VT_I8 |
Tempo in cui si verifica il divario, in unità di 100 nanosecondi. |
Commenti
Questo evento segnala un divario nei dati. L'evento notifica ai componenti downstream di non aspettarsi dati al momento specificato.
L'evento deve essere inviato da qualsiasi oggetto generi i timestamp per gli esempi multimediali nel flusso. A seconda del formato dei dati, si tratta di:
- Flusso multimediale sull'origine multimediale (interfaccia IMFMediaStream ) o
- Trasformazione del decodificatore (interfaccia IMFTransform ).
Durante la distanza, l'oggetto deve inviare l'evento con la stessa frequenza con cui normalmente produce campioni. Per il video, inviare un evento per ogni fotogramma mancante. Per l'audio, inviare l'evento almeno una volta al secondo durante il gap. Il valore dell'evento è il timestamp dell'esempio mancante. Inviare tutti gli eventi MEStreamTick necessari per colmare il gap nei dati.
Se un'origine multimediale ha più flussi e si verifica un gap in più di un flusso, ogni flusso deve inviare eventi MEStreamTick. Ad esempio, se si verifica un divario nei dati audio e video, entrambi i flussi inviano l'evento.
L'evento MEStreamTick non completa una richiesta IMFMediaStream::RequestSample . L'origine multimediale deve comunque inviare un evento MEMediaSample per ogni chiamata a RequestSample.
I sink multimediali non possono utilizzare questo evento direttamente. Per segnalare un gap nel flusso a un sink multimediale, chiamare IMFStreamSink::P laceMarker con un indicatore di MFSTREAMSINK_MARKER_TICK . La pipeline di Media Foundation converte gli eventi MEStreamTick in MFSTREAMSINK_MARKER_TICK marcatori quando necessario.
Non impostare l'attributo MFSampleExtension_Discontinuity nell'esempio multimediale successivo dopo un evento MEStreamTick. L'attributo MFSampleExtension_Discontinuity implica che il timestamp è discontinuo con i timestamp precedenti, mentre MEStreamTick implica che i timestamp sono continui, ma alcuni dati mancano.
Nota
Una versione precedente della documentazione ha erroneamente dichiarato che l'esempio dopo un evento MEStreamTick deve avere l'attributo MFSampleExtension_Discontinuity .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista [solo app desktop] |
Server minimo supportato |
Windows Server 2008 [solo app desktop] |
Intestazione |
|
Vedi anche