Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
[A funcionalidade associada a esta página, Windows Media Format 11 SDK, é uma funcionalidade herdada. Foi substituído por Source Reader e Sink Writer. Source Reader e Sink Writer foram otimizados para o Windows 10 e o Windows 11. A Microsoft recomenda vivamente que o novo código utilize do Leitor de Origem e do Gravador de Separadores em vez de SDK do Windows Media Format 11, sempre que possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
Um formato de codec é um objeto de configuração de fluxo preenchido com dados de um codec. Cada formato de codec contém uma configuração de mídia suportada pelo codec. A maioria dos codecs de áudio suporta um número finito de formatos, cada um dos quais é enumerado pelo codec e pode ser acessado usando os métodos de IWMCodecInfo. Codecs de vídeo, por outro lado, fornecem apenas um único formato. Isso ocorre porque os fluxos de vídeo têm variáveis, como o tamanho do quadro, que são mais flexíveis do que as configurações de um fluxo de áudio. Com um fluxo de vídeo, você deve preencher alguns dos valores de configuração do fluxo; As configurações de fluxo de áudio só devem ser editadas para atribuir um nome, nome de conexão e número de fluxo. Para obter mais informações, consulte Configuração comum a todos os fluxos.
Os formatos de codec enumerados dependem das configurações de enumeração de codec atuais, que são definidas usando IWMCodecInfo3::SetCodecEnumerationSetting. Atualmente, apenas duas propriedades de codec são suportadas: g_wszNumPasses, que especifica o número de passos de codificação que o codec executará, e g_wszVBREnabled, que especifica se o codec usará codificação de taxa de bits variável. O número máximo de passos de codificação suportados por qualquer um dos codecs é dois, portanto, há quatro configurações distintas para as quais você pode recuperar codecs, conforme mostrado na tabela a seguir.
| Fluxo de taxa de bits constante (CBR) | Fluxo CBR de 2 passagens | Fluxo de taxa de bits variável (VBR) baseado na qualidade | Fluxo VBR baseado em bitrate (com ou sem restrições) | |
|---|---|---|---|---|
| g_wszVBREnabled | FALSO | FALSO | VERDADEIRO | VERDADEIRO |
| g_wszNumPasses | 1 | 2 | 1 | 2 |
Para enumerar os formatos suportados para um codec, use IWMCodecInfo::GetCodecFormatCount para localizar o número de codecs suportados. Em seguida, chame IWMCodecInfo::GetCodecFormat para cada formato. Os índices de formato variam de zero até menos um do número total de formatos suportados. Você pode recuperar uma descrição do formato chamando IWMCodecInfo2::GetCodecFormatDesc. Ao usar GetCodecFormatDesc, você não precisa usar GetCodecFormat, porque o objeto de configuração de fluxo é recuperado por ambos os métodos. Os formatos de codec de vídeo não incluem uma descrição. Cada codec de vídeo tem apenas um formato que é usado para todos os fluxos desse tipo.
Quando você recupera um formato de codec, você obtém a interface IWMStreamConfig de um objeto de configuração de fluxo que contém as configurações de formato.
Tópicos relacionados