Metodo IAMStreamConfig::GetFormat (strmif.h)

[La funzionalità associata a questa pagina, DirectShow, è una funzionalità legacy. È stata sostituita da MediaPlayer, IMFMediaEngine 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, IMFMediaEngine e Audio/Video Capture in Media Foundation invece di DirectShow, quando possibile. Microsoft suggerisce che il codice esistente che usa le API legacy venga riscritto per usare le nuove API, se possibile.

Il GetFormat metodo recupera il formato di output corrente o preferito.

Sintassi

HRESULT GetFormat(
  [out] AM_MEDIA_TYPE **ppmt
);

Parametri

[out] ppmt

Indirizzo di un puntatore a una struttura AM_MEDIA_TYPE .

Valore restituito

Restituisce un valore HRESULT . Di seguito sono indicati alcuni valori possibili.

Codice restituito Descrizione
S_OK
Operazione completata.
E_OUTOFMEMORY
Memoria insufficiente.
E_POINTER
Valore del puntatore NULL.
VFW_E_NOT_CONNECTED
Il pin di input non è connesso.

Commenti

Se il pin è connesso, questo metodo restituisce il formato attualmente utilizzato dal pin. In caso contrario, il metodo restituisce il formato preferito del pin per la connessione pin successiva. Se il metodo IAMStreamConfig::SetFormat è già stato chiamato per impostare il formato, GetFormat restituisce lo stesso formato. In caso contrario, restituisce il primo formato nell'elenco dei formati preferiti del pin, come determinato dal metodo IPin::EnumMediaTypes .

Il metodo alloca la memoria per la struttura AM_MEDIA_TYPE , riempie la struttura e la restituisce nel parametro pmt . Il chiamante deve rilasciare la memoria, incluso il blocco di formato. È possibile usare la funzione helper DeleteMediaType nella libreria di classi di base.

In alcuni filtri di compressione, il metodo ha esito negativo se il pin di input del filtro non è connesso.

Esempio

C++
IAMStreamConfig *pConfig = NULL;
// Query the output pin for IAMStreamConfig (not shown).
AM_MEDIA_TYPE *pmt = NULL;
hr = pConfig->GetFormat(&pmt);
if (SUCCEEDED(hr))
{
    /* Examine the media type for any information you need. */
    DeleteMediaType(pmt);
}
pConfig->Release();

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

Codici di errore e di esito positivo

Interfaccia IAMStreamConfig