Compartir a través de


Descodificador de vídeo H.264

El descodificador de vídeo de Media Foundation H.264 es una transformación de Media Foundation que admite la descodificación de perfiles de línea base, principal y alto, hasta el nivel 5.1.

El descodificador de vídeo H.264 expone las siguientes interfaces.

Para crear una instancia del descodificador, realice una de las acciones siguientes:

Tipos de entrada

El tipo de entrada debe contener al menos los dos atributos siguientes:

Atributo Descripción
MF_MT_MAJOR_TYPE MFMediaType_Video
MF_MT_SUBTYPE MFVideoFormat_H264 o MFVideoFormat_H264_ES

 

Si el tipo de entrada contiene solo estos dos atributos, el descodificador ofrecerá un tipo de salida predeterminado, que actúa como marcador de posición. Cuando el descodificador recibe suficientes muestras de entrada para generar un marco de salida, señala un cambio de formato devolviendo MF_E_TRANSFORM_STREAM_CHANGE de IMFTransform::P rocessOutput. Consulte la documentación de ProcessOutput para obtener más información sobre cómo controlar los cambios de formato.

Para evitar un cambio de formato inicial, proporcione tanta información en el tipo de entrada como sea posible, entre las que se incluyen:

Atributo Descripción
MF_MT_FRAME_RATE Velocidad de fotogramas.
MF_MT_FRAME_SIZE Dimensiones de marco.
MF_MT_INTERLACE_MODE Modo de interlace. Nota: En el vídeo H.264, la estructura de interlace puede cambiar dinámicamente, por lo que el valor recomendado de este atributo es MFVideoInterlace_MixedInterlaceOrProgressive. La intercalación de la información en la secuencia elemental de vídeo tiene prioridad sobre el tipo de medio. Para obtener más información, vea Video Interlacing.
MF_MT_PIXEL_ASPECT_RATIO Relación de aspecto de píxeles.

 

El tipo de entrada debe establecerse antes del tipo de salida. Hasta que se establece el tipo de entrada, el método IMFTransform::SetOutputType del codificador devuelve MF_E_TRANSFORM_TYPE_NOT_SET.

Tipos de salida

El descodificador admite los siguientes subtipos de salida:

  • MFVideoFormat_I420
  • MFVideoFormat_IYUV
  • MFVideoFormat_NV12
  • MFVideoFormat_YUY2
  • MFVideoFormat_YV12

Para obtener más información sobre estos subtipos, vea Guid de subtipo de vídeo.

Transformar atributos

El descodificador H.264 implementa el método IMFTransform::GetAttributes . Las aplicaciones pueden usar este método para obtener o establecer los siguientes atributos.

Atributo Descripción
CODECAPI_AVDecVideoAcceleration_H264 Habilita o deshabilita la aceleración de hardware.
CODECAPI_AVDecVideoThumbnailGenerationMode Habilita o deshabilita el modo de generación de miniaturas.
MF_SA_D3D_AWARE Indica que el descodificador admite la aceleración de vídeo directX (DXVA). Trate como de solo lectura.

 

En Windows 8, el descodificador H.264 también admite los siguientes atributos.

Atributo Descripción
CODECAPI_AVLowLatencyMode Habilita o deshabilita el modo de descodificación de baja latencia.
CODECAPI_AVDecNumWorkerThreads Establece el número de subprocesos de trabajo usados por el descodificador.
CODECAPI_AVDecVideoMaxCodedWidth Establece el ancho máximo de imagen que el descodificador aceptará como un tipo de entrada.
CODECAPI_AVDecVideoMaxCodedHeight Establece el alto máximo de imagen que el descodificador aceptará como un tipo de entrada.
MF_SA_MINIMUM_OUTPUT_SAMPLE_COUNT Especifica el número máximo de muestras de salida.
MFT_DECODER_EXPOSE_OUTPUT_TYPES_IN_NATIVE_ORDER Especifica si un descodificador expone tipos de salida IYUV/I420 (adecuados para transcodificación) antes de otros formatos.

 

En Windows 8, el descodificador H.264 admite la interfaz ICodecAPI . Esta interfaz proporciona una API alternativa para establecer las siguientes propiedades de códec.

Restricciones de formato

El descodificador admite los siguientes formatos:

Configuración Formato
Perfiles o niveles Perfiles de línea base, principal y alto, hasta el nivel 5.1. (Véase la especificación UIT-T H.264 para obtener más información).
Formatos cromáticos 4:2:0 cromática o monocromática
Resolución mínima 48 × 48 píxeles
Resolución máxima 4096 × 2304 píxeles
La resolución máxima garantizada para la aceleración DXVA es de 1920 × 1088 píxeles; en resoluciones superiores, la descodificación se realiza con DXVA, si es compatible con el hardware subyacente; de lo contrario, la descodificación se realiza con software.
Nota: En Windows 7, la resolución máxima admitida es de 1920 × 1088 píxeles para la descodificación de DXVA y software.
DXVA El descodificador admite la versión 2 de DXVA, pero no la versión 1 de DXVA. La descodificación de DXVA solo se admite para secuencias de bits de línea base compatibles con Main, Main y High Profile. (Las secuencias de bits de línea base compatibles con main se definen como profile_idc=66 y constrained_set1_flag=1).

 

Los datos de entrada deben cumplir con el anexo B de ISO/IEC 14496-10. Los datos deben incluir los códigos de inicio. El descodificador omite bytes hasta que encuentra un conjunto de parámetros de secuencia (SPS) válido y un conjunto de parámetros de imagen (PPS) en la secuencia de bytes.

El descodificador no admite la tecnología de grano de película.

Nota:

Una versión anterior de la documentación incorrectamente indicó que el descodificador es compatible con Windows Server 2008 R2.

 

Si se instala Platform Update Supplement para Windows Vista, el descodificador de vídeo H.264 está disponible en Windows Vista, pero solo es accesible en Windows Vista mediante el Lector de origen.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible
No se admite ninguno
Archivo DLL
Msmpeg2vdec.dll

Consulte también

Objetos de códec

Compatibilidad con MPEG-4 en Media Foundation

Formatos de medios admitidos en Media Foundation

Tipos de medios de vídeo