Compartilhar via


Por que usar o DirectShow?

[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 de 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 de 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.]

Há duas main razões pelas quais um aplicativo pode usar o DirectShow em vez do SDK de Formato de Mídia do Windows diretamente: para a conveniência da arquitetura de streaming do DirectShow e para o acesso ao hardware.

Conveniência

Com a arquitetura de streaming do DirectShow, são necessárias apenas algumas chamadas de método para reproduzir arquivos de Áudio do Windows Media ou Vídeo do Windows Media. A criação de arquivos também é simplificada. Você simplesmente especifica um perfil usando a interface IConfigAsfWriter no filtro e o DirectShow carrega automaticamente os componentes necessários para renderizar ou gravar os fluxos e fornece os mecanismos para transferir e sincronizar o fluxo de dados de mídia. O DirectShow é especialmente útil ao converter conteúdo de formatos variados em Formato de Mídia do Windows. Você pode criar grafos de filtro do DirectShow que decodificam uma ampla variedade de tipos de arquivo e compactação e, em seguida, alimentar os fluxos decodificados no filtro Gravador ASF do WM . Em comparação, o exemplo UncompAVItoWMV neste SDK funciona apenas com arquivos AVI não compactados. Fluxos de texto e fluxos de dados arbitrários também podem ser criados e/ou renderizados por meio do DirectShow, mas isso pode exigir que você crie filtros DirectShow personalizados para processar esses fluxos.

Acesso ao hardware

O DirectShow é a única maneira de o código do aplicativo acessar dispositivos de hardware baseados em WDM (Modelo de Driver do Windows), como câmeras 1394 DV, sintonizadores de TV e webcams USB. Se o aplicativo precisar capturar dados diretamente de um dispositivo de hardware baseado em WDM e transcodificá-los para o Formato de Mídia do Windows e o SDK do Codificador de Mídia do Windows não atender às suas necessidades, o DirectShow será a única alternativa. O DirectShow também pode ser usado para acessar dispositivos herdados com base em Vídeo para Windows.