Condividi tramite


Funzione MFCreateMediaBufferFromMediaType (mfapi.h)

Alloca un buffer di memoria di sistema ottimale per un tipo di supporto specificato.

Sintassi

HRESULT MFCreateMediaBufferFromMediaType(
  [in]  IMFMediaType   *pMediaType,
  [in]  LONGLONG       llDuration,
  [in]  DWORD          dwMinLength,
  [in]  DWORD          dwMinAlignment,
  [out] IMFMediaBuffer **ppBuffer
);

Parametri

[in] pMediaType

Puntatore all'interfaccia FMMediaType del tipo di supporto.

[in] llDuration

Durata dell'esempio. Questo valore è obbligatorio per i formati audio.

[in] dwMinLength

Dimensioni minime del buffer, in byte. Le dimensioni effettive del buffer potrebbero essere maggiori. Specificare zero per allocare le dimensioni predefinite del buffer per il tipo di supporto.

[in] dwMinAlignment

Allineamento minimo della memoria per il buffer. Specificare zero per usare l'allineamento predefinito della memoria.

[out] ppBuffer

Riceve un puntatore all'interfaccia FMMediaBuffer . Il chiamante deve rilasciare l'interfaccia.

Valore restituito

Se questa funzione ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Per i formati video, se il formato viene riconosciuto, la funzione crea un buffer 2D che implementa l'interfaccia FMI2DBuffer2 . In caso contrario, crea un buffer lineare. Per ottenere l'interfaccia FMI2DBuffer2 , chiamare QueryInterface sul puntatore restituito in ppBuffer. Se il metodo QueryInterface ha esito negativo, usare l'interfaccia IMFMediaBuffer per accedere alla memoria del buffer.

Per i formati audio, la funzione alloca un buffer abbastanza grande per contenere esempi audio llDuration o dwMinLength, che tuttavia è più grande.

Questa funzione alloca sempre la memoria di sistema. Per le superfici Direct3D, usare la funzione MFCreateDXGISurfaceBuffer o MFCreateDXSurfaceBuffer .

Requisiti

   
Client minimo supportato Windows 8 [app desktop | App UWP]
Server minimo supportato Windows Server 2012 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione mfapi.h
Libreria Mfplat.lib
DLL Mfplat.dll

Vedi anche

Funzioni di Media Foundation