Metodo IPersistMediaPropertyBag::Load (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 Load metodo carica le proprietà dal contenitore delle proprietà multimediali nel filtro.

Sintassi

HRESULT Load(
  [in] IMediaPropertyBag *pPropBag,
  [in] IErrorLog         *pErrorLog
);

Parametri

[in] pPropBag

Puntatore all'interfaccia IMediaPropertyBag di un contenitore di proprietà multimediale creato dal chiamante.

[in] pErrorLog

Riservato. Impostare il valore su NULL.

Valore restituito

Restituisce un valore HRESULT . I possibili valori sono i seguenti:

Codice restituito Descrizione
S_OK
Operazione completata.
E_POINTER
Argomento puntatore NULL.
STG_E_ACCESSDENIED
Accesso negato.
VFW_E_WRONG_STATE
Il grafico del filtro non è in uno stato arrestato.

Commenti

Chiamare questo metodo nel filtro AVI Mux per scrivere le proprietà nel flusso AVI. Chiamare il metodo quando il filtro viene arrestato, prima di eseguire il grafico del filtro per creare il file. Quando viene eseguito il grafico, il filtro scrive i blocchi DI INFO nell'intestazione AVI.

Nell'esempio di codice seguente viene aggiunto un blocco di INFO IART (nome autore) a un file:

C++
IPersistMediaPropertyBag *pPersist = NULL; IMediaPropertyBag *pBag = NULL; VARIANT val;

Eseguire una query sul filtro AVI Mux per IPersistMediaPropertyBag (non visualizzato).

CoCreateInstance(CLSID_MediaPropertyBag, NULL, CLSCTX_INPROC, IID_IMediaPropertyBag, (LPVOID *)&pBag);

val.vt = VT_BSTR; val.bstrVal = SysAllocString(OLESTR("Author Name")); pBag->Write(OLESTR("INFO/IART"), &val); pPersist->Load(pBag, NULL); VariantClear(&val);

Il filtro AVI Splitter e il parser WAVE non supportano questo metodo.

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 errore e esito positivo

Interfaccia IPersistMediaPropertyBag