Compartilhar via


Entradas de fluxo arbitrárias e pré-compactadas

[O recurso associado a esta página, do SDK do Windows Media Format 11, é um recurso herdado. Foi substituído por de Leitor de Origem e do Gravador do Coletor de. de Leitor de Origem e Gravador do Coletor foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use de Leitor de Origem e o Gravador do Coletor em vez de do SDK do Windows Media Format 11, quando 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.]

Somente as entradas que devem ser compactadas por um dos codecs do Windows Media têm várias entradas possíveis. Os outros tipos de entradas possíveis são entradas arbitrárias e entradas pré-compactadas. Os requisitos para formatos de entrada para esses tipos são descritos nesta seção.

Entradas de fluxo arbitrárias

As entradas para tipos de fluxo arbitrário são iguais aos formatos de fluxo descritos no perfil. Você não deve ter que definir formatos de entrada para esses tipos.

Entradas de fluxo pré-compactadas

Ao copiar um fluxo de um arquivo para outro, você passa exemplos que já estão compactados. Nesse caso, você deve definir o objeto de propriedades de entrada para NULL para informar ao gravador que ele não precisa validar os dados que você está passando. Para definir o formato de entrada como NULL, chame IWMWriter::SetInputProps e passe NULL como o segundo parâmetro. Ao chamar esse método com um parâmetro NULL, você deve fazer a chamada antes de chamar BeginWriting.

Ao usar fluxos pré-compactados, você deve copiar manualmente as informações de codec para o cabeçalho do arquivo antes de gravar. Para obter as informações de codec, chame IWMHeaderInfo2::GetCodecInfoCount e IWMHeaderInfo2::GetCodecInfo para enumerar os codecs associados ao arquivo no leitor. Selecione as informações de codec que correspondem à configuração de fluxo do fluxo pré-compactado. Em seguida, defina as informações de codec no gravador chamando IWMHeaderInfo3::AddCodecInfo, passando as informações obtidas do leitor.

trabalhando com entradas