Compartilhar via


Para recuperar exemplos compactados com o leitor síncrono

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

Assim como o leitor assíncrono, o leitor síncrono também pode recuperar amostras compactadas. Amostras compactadas devem ser usadas ao copiar fluxos de um arquivo para outro.

O SDK do Windows Media Format não fornece métodos para decodificar dados depois que eles são extraídos de um arquivo ASF. Se você receber amostras compactadas e posteriormente quiser descompactá-las, precisará fornecer seu próprio código para fazer isso. Uma maneira de contornar essa limitação é gravar os exemplos compactados em um novo arquivo ASF e lê-los novamente em amostras normais e descompactadas.

Para receber exemplos compactados com o leitor síncrono, chame IWMSyncReader::SetReadStreamSamples antes ou durante a reprodução. Passe true para fCompressed.

Observação

Fluxos de imagem não são válidos para entrega de fluxo compactado. Se você copiar um fluxo de imagem de um arquivo para outro, ele não funcionará no novo arquivo. Para copiar um fluxo de imagens de arquivo para arquivo, recupere os exemplos de fluxo de imagem por número de saída e inclua-os no novo arquivo como se estivesse incluindo um novo fluxo de imagem.

 

Lendo arquivos com o leitor síncrono