Decodificador de vídeo MPEG-4 Part 2

O decodificador de vídeo MPEG4 Part 2 decodifica fluxos de vídeo que foram codificados de acordo com o padrão MPEG4 Part 2.

Você pode criar uma instância do decodificador de vídeo MPEG4 Part 2 chamando CoCreateInstance. Para criar uma instância do decodificador que se comporta como um DirectX Media Object (DMO), use o identificador de classe CLSID_CMpeg4sDecMediaObject. Para criar uma instância do decodificador que se comporta como MFT (Transformações do Media Foundation), use o identificador de classe CLSID_CMpeg4sDecMFT.

Tipos de entrada

O decodificador de vídeo MPEG4 Part 2 dá suporte aos seguintes tipos de mídia de entrada.

  • MEDIASUBTYPE_M4S2
  • MEDIASUBTYPE_m4s2
  • MEDIASUBTYPE_MP4V
  • MEDIASUBTYPE_mp4v
  • MEDIASUBTYPE_MP4S (preterido)
  • MEDIASUBTYPE_mp4s (preterido)

Tipos de saída

O decodificador de vídeo MPEG4 Part 2 dá suporte aos seguintes subtipos de mídia de saída quando atua como um DMO.

  • MEDIASUBTYPE_YV12
  • MEDIASUBTYPE_NV12
  • MEDIASUBTYPE_YUY2
  • MEDIASUBTYPE_UYVY
  • MEDIASUBTYPE_YVYU
  • MEDIASUBTYPE_NV11
  • MEDIASUBTYPE_RGB32
  • MEDIASUBTYPE_RGB24
  • MEDIASUBTYPE_ RGB565
  • MEDIASUBTYPE_RGB555
  • MEDIASUBTYPE_RGB8

O decodificador de vídeo MPEG4 Part 2 dá suporte aos seguintes subtipos de mídia de saída quando atua como MFT.

  • MEDIASUBTYPE_NV12
  • MEDIASUBTYPE_YV12

Formatos

O decodificador de vídeo MPEG4 Part 2 aceita os seguintes formatos.

Interfaces para o DMO

Se você criar uma instância do decodificador de vídeo MPEG4 Part 2 como um DMO, o decodificador irá expor as interfaces a seguir.

Você pode obter uma interface IMediaObject chamando CoCreateInstance e obter uma interface ICodecAPI chamando QueryInterface .

Interfaces para MFT

Se você criar uma instância do decodificador de vídeo MPEG2 Part 2 como MFT, o decodificador irá expor as interfaces a seguir.

Você pode obter um ponteiro para a interface IMFTransform chamando CoCreateInstance e obter um ponteiro para a interface IMFAttributes chamando IMFTransform::GetAttributes. Você pode obter um ponteiro para a interface IMFQualityAdvise ou IMFQualityAdvise2 chamando QueryInterface na MFT. Você pode obter um ponteiro para a interface IMFRateControl ou IMFRateSupport chamando MFGetService e passando o identificador de serviço MF_RATE_CONTROL_SERVICE.

Perfis e níveis

A especificação MPEG4 define vários perfis, cada um dos quais especifica as ferramentas que um codificador pode usar para gerar um fluxo codificado. O Decodificador de Vídeo MPEG4 Part 2 dá suporte a dois desses perfis: Perfil Visual Simples e Perfil Simples Avançado. Em outras palavras, o decodificador de vídeo MPEG4 Part 2 pode decodificar fluxos que foram codificados de acordo com o Perfil Visual Simples ou o Perfil Simples Avançado.

O Perfil Visual Simples dá suporte à transmissão básica de vídeo de baixa taxa de bits no modo progressivo. Ele dá suporte apenas a quadros Intra ou de Previsão. Ele também dá suporte ao modo de cabeçalho curto, que é compatível com versões anteriores do perfil de linha de base H.263. A partir do Windows 10, o Decodificador de Vídeo MPEG-4 Part 2 também dá suporte a H.263v2 (H.263+), que é compatível com tamanhos de imagem personalizados.

O Perfil Simples Avançado dá suporte a todas as ferramentas do Perfil Visual Simples e, também a vídeos entrelaçados, quadros B, compensação de movimento de quarto de pixel, tabelas de quantização adicionais e compensação de movimento global.

A especificação MPEG4 também define vários níveis, cada um dos quais especifica restrições no fluxo de saída gerado por um codificador.

A tabela a seguir mostra os perfis e níveis, juntamente com as resoluções típicas, compatíveis com o decodificador de video MPEG4 Part 2.

Perfil Nível Resolução típica
Visual simples 0 176 x 144
Visual simples 1 176 x 144
Visual simples 2 352 x 288
Visual simples 3 352 x 288
SimpleVisual 4a 640 x 480
Visual simples 5 720 x 576
Simples avançado 0 176 x 144
Simples avançado 1 176 x 144
Simples avançado 2 352 x 288
Simples avançado 3 352 x 288
Simples avançado 3b 352 x 288
Simples avançado 4 352 x 756
Simples avançado 5 720 x 576

 

Para obter mais informações sobre perfis e níveis, consulte a especificação do MPEG4 Part 2 (ISO/IEC 14496-2): Tecnologia da informação -- Codificação de objetos audiovisuais -- Parte 2: Visual.

Propriedades do decodificador

Para definir propriedades no decodificador de vídeo MPEG4 Part 2, use a interface ICodecAPI ou a interface IMFAttributes.

O decodificador de vídeo MPEG4 Part 2 dá suporte às propriedades a seguir.

Propriedade Descrição Valor Padrão
CODECAPI_AVDecVideoSWPowerLevel Especifica o nível de energia.
Windows 7.
Somente gravação.
100
CODECAPI_AVDecVideoThumbnailGenerationMode Especifica o modo de geração de miniaturas.
Windows 7.
Somente gravação.
VARIANT_FALSE

 

Comentários

Os GUIDs (identificadores globais exclusivos) para subtipos de mídia RGB diferem dependendo se um decodificador está atuando como um DMO ou MFT. Os GUIDs para subtipos de mídia não RGB são os mesmos, independentemente de um decodificador estar atuando como um DMO ou MFT. Para obter informações sobre os GUIDs que representam subtipos de mídia, consulte Tipos de mídia.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Cabeçalho
Wmcodecdsp.h
DLL
MP4SDecd.dll

Confira também

Objetos codec