Codificador do Windows Media Video 9

O codificador do Windows Media Video 9 codifica fluxos de vídeo. O codificador dá suporte às quatro categorias de saída codificadas a seguir.

  • Perfil Simples do Windows Media Video 9
  • Perfil Principal do Windows Media Video 9
  • Perfil Avançado do Windows Media Video 9
  • Imagem do Windows Media Video 9.1

Identificador de Classe

O CLSID (identificador de classe) para o codificador de Vídeo do Windows Media é representado pela constante CLSID_CWMV9EncMediaObject. Você pode criar uma instância do codificador de vídeo chamando CoCreateInstance.

Interfaces

Um objeto codificador de vídeo expõe a interface IMediaObject para que o objeto possa ser usado como um Objeto de Mídia DirectX (DMO) e expõe a interface IMFTransform para que o objeto possa ser usado como uma MFT (Media Foundation Transform).

Um codificador de vídeo se comporta como um DMO ou um MFT, dependendo de quais interfaces você obtém e qual versão do Windows está em execução. A tabela a seguir mostra as condições sob as quais um codificador de vídeo se comporta como um DMO ou um MFT.

Sistema operacional Comportamento do codificador
Windows XP Um codificador de vídeo do Windows Media sempre se comporta como um DMO.
Windows Vista e Windows 7 Por padrão, um codificador de vídeo do Windows Media se comporta como um DMO. Se você obtiver uma interface IMFTransform em um codificador de vídeo, ela se comportará como um MFT.

 

Formatos de entrada

O codificador de Vídeo do Windows Media dá suporte aos seguintes subtipos de mídia de entrada quando ele está atuando como um DMO.

  • MEDIASUBTYPE_IYUV
  • MEDIASUBTYPE_I420
  • MEDIASUBTYPE_YV12
  • MEDIASUBTYPE_NV11
  • MEDIASUBTYPE_NV12
  • MEDIASUBTYPE_YUY2
  • MEDIASUBTYPE_UYVY
  • MEDIASUBTYPE_YVYU
  • MEDIASUBTYPE_RGB32
  • MEDIASUBTYPE_RGB24
  • MEDIASUBTYPE_RGB565
  • MEDIASUBTYPE_RGB555
  • MEDIASUBTYPE_RGB8
  • MEDIASUBTYPE_PHOTOMOTION

O codificador de Vídeo do Windows Media dá suporte aos seguintes subtipos de mídia de entrada quando ele está atuando como um MFT.

  • MFVideoFormat_IYUV
  • MFVideoFormat_I420
  • MFVideoFormat_YV12
  • MFVideoFormat_NV11
  • MFVideoFormat_NV12
  • MFVideoFormat_YUY2
  • MFVideoFormat_UYVY
  • MFVideoFormat_YVYU
  • MFVideoFormat_RGB32
  • MFVideoFormat_RGB24
  • MFVideoFormat_RGB565
  • MFVideoFormat_RGB555
  • MFVideoFormat_RGB8
  • MEDIASUBTYPE_PHOTOMOTION

Formatos de saída

A tabela a seguir mostra os FOURCCs (códigos de quatro caracteres) que correspondem às categorias de saída codificada.

Categoria FOURCC
Perfil Simples do Windows Media Video 9 "WMV3"
Perfil Principal do Windows Media Video 9 "WMV3"
Perfil Avançado do Windows Media Video 9 "WVC1"
Imagem do Windows Media Video 9.1 "WMVP" para 9.1, "WVP2" para 9.1 versão 2

 

Para distinguir entre Perfil Simples e Perfil Principal, defina a propriedade MFPKEY_DECODERCOMPLEXITYREQUESTED .

Propriedades

O codificador do Windows Media Video 9 dá suporte às propriedades a seguir.

Propriedade Descrição
MFPKEY_ASFOVERHEADPERFRAME Especifica a sobrecarga, em bytes por pacote, necessária para o contêiner usado para armazenar o conteúdo compactado.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_AVGFRAMERATE Especifica a taxa média de quadros do conteúdo de vídeo, em quadros por segundo.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente leitura.
MFPKEY_BAVG Especifica a janela de buffer, em milissegundos, de um fluxo de VBR (taxa de bits variáveis restrita) em sua taxa média de bits (especificada por MFPKEY_RAVG).
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Leitura/gravação.
MFPKEY_BDELTAQP Especifica o aumento delta entre o quantizador de imagem do quadro de âncora e o quantizador de imagem do quadro B.
Windows XP e posterior.
Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_BMAX Especifica a janela de buffer, em milissegundos, de um fluxo VBR (taxa de bits variável) restrito em sua taxa de bits de pico (especificada por MFPKEY_RMAX).
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Leitura/gravação.
MFPKEY_BUFFERFULLNESSINFIRSTBYTE Especifica se o fluxo de bits de vídeo codificado contém um valor de integridade do buffer com cada quadro-chave.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente leitura.
MFPKEY_CLOSEDENTRYPOINT Especifica o padrão de codificação a ser usado no início de um grupo de imagens.
Windows Vista e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_CODEDFRAMES Especifica o número de quadros de vídeo codificados pelo codec.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente leitura.
MFPKEY_CODEDNONZEROFRAMES Especifica o número de quadros de vídeo codificados pelo codec que realmente contêm dados.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente leitura.
MFPKEY_COMPLEXITY Essa propriedade é substituída por MFPKEY_COMPLEXITYEX.
MFPKEY_COMPLEXITYEX Especifica a complexidade do algoritmo do codificador.
Windows Vista e posterior.
Perfil Simples, Perfil Principal. Perfil Avançado.
Somente gravação.
MFPKEY_COMPRESSIONOPTIMIZATIONTYPE Especifica o tipo de otimização a ser usado para o codec de Perfil Avançado do Windows Media Video 9.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Gravação.
MFPKEY_CRISP Especifica uma representação numérica da compensação entre a suavidade do movimento e a qualidade da imagem na saída do codec.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_DATARATE Não usado.
MFPKEY_DECODERCOMPLEXITYPROFILE Especifica o modelo de conformidade do dispositivo ao qual o conteúdo codificado está em conformidade.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente leitura.
MFPKEY_DECODERCOMPLEXITYREQUESTED Especifica o modelo de conformidade do dispositivo que você deseja usar para codificação de vídeo.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_DELTAMVRANGEINDEX Especifica o método usado para codificar as informações do vetor de movimento.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_DENOISEOPTION Especifica se o codec usará o filtro de ruído durante a codificação.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_DESIRED_VBRQUALITY Especifica o nível de qualidade desejado para a codificação VBR (taxa de bits variáveis) baseada em qualidade (1 passagem).
Windows Vista e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_DROPPEDFRAMES Especifica o número de quadros de vídeo descartados durante a codificação.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente leitura.
MFPKEY_ENDOFPASS Especifica o final de uma passagem de codificação.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_FORCEFRAMEHEIGHT Especifica uma altura de quadro intermediária para vídeo codificado.
Windows XP e posterior.
Perfil Avançado.
Somente gravação.
MFPKEY_FORCEFRAMEWIDTH Especifica uma largura de quadro intermediária para vídeo codificado.
Windows XP e posterior.
Perfil Avançado.
Somente gravação.
MFPKEY_FORCEMEDIANSETTING Especifica se o codec deve usar a filtragem mediana durante a codificação.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_FOURCC Especifica o FOURCC que identifica o codificador que você deseja usar.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_FRAMECOUNT Obsoleto.
MFPKEY_FULLFRAMERATE Especifica se o codificador tem permissão para remover quadros.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_INTERLACEDCODINGENABLED Especifica se a saída do codec será entrelaçada.
Windows XP e posterior.
Perfil Avançado.
Somente gravação.
MFPKEY_KEYDIST Especifica o tempo máximo, em milissegundos, entre os quadros-chave na saída do codec.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_LIVEENCODE Não usado.
MFPKEY_LOOKAHEAD Especifica o número de quadros após o quadro atual que o codec avaliará antes de codificar o quadro atual.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_LOOPFILTER Especifica se o codec deve usar o filtro de desbloqueio em loop durante a codificação.
Windows XP e posterior.
Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_MACROBLOCKMODECOSTMETHOD Especifica o método de custo usado pelo codec para determinar qual modo de macroblock usar.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_MOTIONMATCHMETHOD Especifica o método a ser usado para correspondência de movimentos.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_MOTIONSEARCHLEVEL Especifica os tipos de informações de vídeo que são usadas em operações de pesquisa de movimento.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_MOTIONSEARCHRANGE Especifica o intervalo usado em pesquisas de movimento.
Windows XP e posterior.
Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_NOISEEDGEREMOVAL Especifica se o codec deve tentar detectar bordas de quadro ruidosas e removê-las.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_NUMBFRAMES Especifica o número de quadros preditivos bidirecionais (quadros B).
Windows XP e posterior.
Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_NUMTHREADS Especifica o número de threads que o codec usará para codificação.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_PASSESRECOMMENDED Especifica o número máximo de passagens com suporte pelo codec.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente leitura.
MFPKEY_PASSESUSED Especifica o número de passagens que o codec usará para codificar o conteúdo.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Leitura/gravação.
MFPKEY_PERCEPTUALOPTLEVEL Especifica se o codec deve usar a otimização perceptual conservadora durante a codificação.
Windows XP e posterior.
Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_PRODUCEDUMMYFRAMES Especifica se o codificador produz entradas de quadro fictícias no fluxo de bits para quadros duplicados.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_QPPERFRAME Especifica qp.
Windows Vista e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_RANGEREDUX Especifica o grau em que o codec deve reduzir o intervalo de cores efetivo do vídeo.
Windows XP e posterior.
Perfil Avançado.
Somente gravação.
MFPKEY_RAVG Especifica a taxa média de bits, em bits por segundo, usada para codificação VBR (taxa de bits variáveis) de 2 pass.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Leitura/gravação.
MFPKEY_RDSUBPIXELSEARCH Especifica se o codificador usa a pesquisa MV de sub pixel baseada em RD.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_REENCENDBUFFERSIZE Para recodificação de segmento, especifica o tamanho do buffer.
Windows Vista e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_REENCDURATION Para recodificação de segmento, especifica a duração do segmento a ser recodificado.
Windows Vista e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_REENCQPREF Para recodificação de segmento, especifica o quantizador do quadro antes do segmento inicial.
Windows Vista e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_REENCSTARTBUFFERSIZE Para a recodificação de segmento, especifica a integridade do buffer inicial.
Windows Vista e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_RMAX Especifica a taxa de bits de pico, em bits por segundo, usada para VBR (taxa de bits variáveis) restrita de 2 pass.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Leitura/gravação.
MFPKEY_TOTALFRAMES Especifica o número de quadros de vídeo passados para o codificador durante o processo de codificação.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente leitura.
MFPKEY_VBRENABLED Especifica se o codec usará a codificação VBR (taxa de bits variáveis).
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Leitura/gravação.
MFPKEY_VBRQUALITY Especifica o nível de qualidade real para a codificação VBR (taxa de bits variáveis) baseada em qualidade (1 passagem).
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_VIDEOSCALING Especifica se o codec usará a otimização de dimensionamento de vídeo.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente gravação.
MFPKEY_VIDEOWINDOW Especifica a quantidade de conteúdo, em milissegundos, que pode caber no buffer do modelo.
Windows XP e posterior.
Perfil Avançado.
Somente gravação.
MFPKEY_VOLHEADERFORREENCODE Para recodificação de segmento, especifica os dados privados de codec do arquivo que está sendo recodificado.
Windows Vista e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado, Imagem.
Somente gravação.
MFPKEY_VTYPE Especifica o tipo de lógica que o codec usará para detectar vídeo de origem entrelaçado.
Windows XP e posterior.
Perfil Avançado.
Somente gravação.
MFPKEY_ZEROBYTEFRAMES Especifica o número de quadros de vídeo que foram ignorados porque eram duplicados de quadros anteriores.
Windows XP e posterior.
Perfil Simples, Perfil Principal, Perfil Avançado.
Somente leitura

 

Requisitos

Requisito Valor
Cliente
Windows XP, Windows Vista ou Windows 7
Cabeçalho
Wmcodecdsp.h
DLL
Wmvencod.dll

Confira também

Objetos Codec

Implementação do Codec