Condividi tramite


Metodo IEnumMediaTypes::Next (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.

Il metodo Next recupera un numero specificato di tipi multimediali.

Sintassi

HRESULT Next(
  [in]  ULONG         cMediaTypes,
  [out] AM_MEDIA_TYPE **ppMediaTypes,
  [out] ULONG         *pcFetched
);

Parametri

[in] cMediaTypes

Numero di tipi multimediali da recuperare.

[out] ppMediaTypes

Indirizzo di una matrice di puntatori AM_MEDIA_TYPE . Il numero di elementi nella matrice viene specificato nel parametro cMediaTypes .

[out] pcFetched

Riceve il numero di tipi multimediali restituiti in ppMediaTypes. Questo parametro può essere NULL se cMediaTypes è 1.

Valore restituito

Restituisce uno dei valori HRESULT seguenti.

Codice restituito Descrizione
S_FALSE
Non è stato recuperato il numero di tipi multimediali richiesti.
S_OK
Operazione completata.
E_INVALIDARG
Argomento non valido.
E_POINTER
Argomento puntatore NULL.
VFW_E_ENUM_OUT_OF_SYNC
Lo stato del pin è cambiato ed è ora incoerente con l'enumeratore.

Commenti

Il chiamante passa una matrice di puntatori AM_MEDIA_TYPE in ppMediaTypes. Il metodo alloca un numero AM_MEDIA_TYPE strutture uguali a cMediaTypes o al numero di tipi di supporti che rimangono nell'enumerazione, minore. Il numero di strutture allocate viene restituito in pcFetched. Eliminare ogni struttura chiamando la funzione DeleteMediaType .

Se il set di tipi di supporti cambia, l'enumeratore diventa incoerente con il pin proprietario. In tal caso, il metodo restituisce VFW_E_ENUM_OUT_OF_SYNC. Eliminare tutti i dati ottenuti dalle chiamate precedenti all'enumeratore, perché potrebbe non essere valido. Aggiornare l'enumeratore chiamando il metodo IEnumMediaTypes::Reset . È quindi possibile chiamare il metodo Next in modo sicuro.

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)
Libreria Strmiids.lib

Vedi anche

Enumerazione dei tipi di supporti

Codici errore e esito positivo

Interfaccia IEnumMediaTypes