Función MFCreateMediaBufferFromMediaType (mfapi.h)

Asigna un búfer de memoria del sistema que es óptimo para un tipo de medio especificado.

Sintaxis

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

Parámetros

[in] pMediaType

Puntero a la interfaz IMFMediaType del tipo de medio.

[in] llDuration

Duración de la muestra. Este valor es necesario para los formatos de audio.

[in] dwMinLength

Tamaño mínimo del búfer, en bytes. El tamaño real del búfer puede ser mayor. Especifique cero para asignar el tamaño de búfer predeterminado para el tipo de medio.

[in] dwMinAlignment

Alineación mínima de memoria para el búfer. Especifique cero para usar la alineación de memoria predeterminada.

[out] ppBuffer

Recibe un puntero a la interfaz IMFMediaBuffer . El autor de la llamada debe liberar la interfaz .

Valor devuelto

Si esta función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT.

Comentarios

En el caso de los formatos de vídeo, si se reconoce el formato, la función crea un búfer 2D que implementa la interfaz IMF2DBuffer2 . De lo contrario, crea un búfer lineal. Para obtener la interfaz IMF2DBuffer2 , llame a QueryInterface en el puntero devuelto en ppBuffer. Si se produce un error en el método QueryInterface , use la interfaz IMFMediaBuffer para acceder a la memoria del búfer.

En el caso de los formatos de audio, la función asigna un búfer lo suficientemente grande como para contener muestras de audio llDuration o dwMinLength, lo que sea mayor.

Esta función siempre asigna memoria del sistema. Para las superficies de Direct3D, use la función MFCreateDXGISurfaceBuffer o MFCreateDXSurfaceBuffer .

Requisitos

   
Cliente mínimo compatible Windows 8 [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2012 [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado mfapi.h
Library Mfplat.lib
Archivo DLL Mfplat.dll

Consulte también

Funciones de Media Foundation