Condividi tramite


Interfaccia IMediaSample (strmif.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation. Queste funzionalità sono state ottimizzate per Windows 10 e Windows 11. Microsoft consiglia vivamente che il nuovo codice usi MediaPlayer, FMMediaEngine e Audio/Video Capture in Media Foundation anziché DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

L'interfaccia IMediaSample imposta e recupera le proprietà negli esempi multimediali. Un esempio multimediale è un oggetto COM che contiene un blocco di dati multimediali. Gli esempi di supporti supportano l'uso dei buffer di memoria condivisi tra i filtri.

In genere, le applicazioni non chiamano metodi su questa interfaccia. I filtri usano questa interfaccia per impostare le proprietà sugli esempi e distribuire gli esempi a un filtro downstream. Il filtro downstream usa l'interfaccia per recuperare le proprietà e leggere i dati. Il filtro può modificare i dati sul posto oppure può copiare l'esempio, modificare la copia e passare la copia downstream.

L'interfaccia IMediaSample2 eredita questa interfaccia.

Ereditarietà

L'interfaccia IMediaSample eredita dall'interfaccia IUnknown . IMediaSample include anche questi tipi di membri:

Metodi

L'interfaccia IMediaSample include questi metodi.

 
IMediaSample::GetActualDataLength

Il metodo GetActualDataLength recupera la lunghezza dei dati validi nel buffer.
IMediaSample::GetMediaTime

Il metodo GetMediaTime recupera i tempi multimediali per questo esempio.
IMediaSample::GetMediaType

Il metodo GetMediaType recupera il tipo di supporto, se il tipo di supporto è diverso dall'esempio precedente.
IMediaSample::GetPointer

Il metodo GetPointer recupera un puntatore di lettura/scrittura nel buffer dell'esempio multimediale.
IMediaSample::GetSize

Il metodo GetSize recupera le dimensioni del buffer.
IMediaSample::GetTime

Il metodo GetTime recupera i tempi di flusso in cui questo esempio deve iniziare e terminare.
IMediaSample::IsDiscontinuity

Il metodo IsDiscontinuity determina se questo esempio rappresenta un'interruzione nel flusso di dati.
IMediaSample::IsPreroll

Il metodo IsPreroll determina se questo esempio è un esempio di preroll. Non deve essere visualizzato un esempio di preroll.
IMediaSample::IsSyncPoint

Il metodo IsSyncPoint determina se l'inizio di questo esempio è un punto di sincronizzazione.
IMediaSample::SetActualDataLength

Il metodo SetActualDataLength imposta la lunghezza dei dati validi nel buffer.
IMediaSample::SetDiscontinuity

Il metodo SetDiscontinuity specifica se questo esempio rappresenta un'interruzione nel flusso di dati.
IMediaSample::SetMediaTime

Il metodo SetMediaTime imposta i tempi di supporto per questo esempio.
IMediaSample::SetMediaType

Il metodo SetMediaType imposta il tipo di supporto per l'esempio.
IMediaSample::SetPreroll

Il metodo SetPreroll specifica se questo esempio è un esempio di preroll.
IMediaSample::SetSyncPoint

Il metodo SetSyncPoint specifica se l'inizio di questo esempio è un punto di sincronizzazione.
IMediaSample::SetTime

Il metodo SetTime imposta i tempi di flusso quando questo esempio deve iniziare e terminare.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione strmif.h (include Dshow.h)