Partilhar via


Entradas de fluxo arbitrárias e pré-comprimidas

[A funcionalidade associada a esta página, Windows Media Format 11 SDK, é uma funcionalidade herdada. Foi substituído por Source Reader e Sink Writer. do Source Reader e Sink Writer foram otimizados para Windows 10 e 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.]

Apenas as entradas que devem ser comprimidas 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é-comprimidas. 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ários são as mesmas que os formatos de fluxo descritos no perfil. Não deve ser necessário definir formatos de entrada para esses tipos.

Entradas de fluxo pré-compactadas

Ao copiar um fluxo de um arquivo para outro, você passa amostras que já estão compactadas. Nesse caso, você deve definir o objeto de propriedades de entrada como 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 do codec para o cabeçalho do arquivo antes de gravar. Para obter as informações de codec, chame IWMHeaderInfo2::GetCodecInfoCount e IWMHeaderInfo2::GetCodecInfo enumerar os codecs associados ao arquivo no leitor. Selecione as informações do codec que correspondem à configuração do fluxo pré-compactado. Em seguida, defina as informações do codec no gravador, chamando IWMHeaderInfo3::AddCodecInfo, passando as informações obtidas do leitor.

Trabalhando com insumos