Building DirectShow Filters
9/8/2008
Para compilar um filtro do DirectShow, você deve configurar o ambiente adequado e, em seguida, siga as etapas neste tópico.
Para todas as plataformas
Se você compilar um filtro do DirectShow, você deve primeiro configurar seu ambiente conforme descrito em Criando Aplicativos do DirectShow bem como executar o seguinte etapas:
Use o __stdcall convenção chamado.
Definir a entrada-símbolo apontar para DllMainCRTStartup@12.
Se você implementar o filtro como um DLL, incluir um arquivo definição (.DEF) que exporta as funções DLL. A seguinte é um exemplo de um arquivo definição. Arquivo saída do filtro de é considerado Filter.dll.
LIBRARY FILTER.DLL DESCRIPTION 'Description of my filter' EXPORTS DllGetClassObject DllCanUnloadNow DllRegisterServer DllUnregisterServer
Além disso, se você estiver usando as classes de base o DirectShow, faça o seguinte:
Crie o biblioteca de classes de base.
Inclua o arquivo cabeçalho Streams.h.
Para versão compilações, adicionar o pré-processador sinalizador Versão. Para depuração compilações, adicionar o pré-processador sinalizador Debug.
Link para a seguinte biblioteca arquivos.
Arquivo de biblioteca Descrição Strmiids.lib
Exporta classe identificadores (CLSIDs) e interface identificadores (IIDs). Todos os aplicativos do DirectShow exigem essa biblioteca.
UUID.lib Ole32auth.lib OLE32.lib
Esses são bibliotecas COM que são geralmente exigido quando compilação filtros. Dependendo das necessidades do projeto você, talvez não seja necessário todas essas bibliotecas.
Para Windows incorporado CE
- Também link para o seguinte arquivo biblioteca adicionais.
Arquivo de biblioteca | Descrição |
---|---|
Strmbase.lib |
Se você não usar o DirectShow Classes de base, esta biblioteca não é exigido. |
Quando você compilar o executar-imagem tempo, Strmbase.lib é gerado a partir de publicamente disponível codificar origem localizado em % _WINCEROOT%\Public\DirectX\Sdk\Samples\Dshow\Baseclasses. Este arquivo biblioteca irá conter quaisquer alterações ou extensões que você fizer o padrão classes de base do DirectShow. Qtzbase.lib contém a biblioteca do padrão DirectShow baseia classes. Ele não pode ser modificado durante a processo de criação. Você pode usar Qtzbase.lib em casos onde você desejar ter certeza que seu aplicativo recebe o comportamento usar como padrão de classes de de base do DirectShow. Se você não tiver feito qualquer personalizado modificações para o DirectShow baseia classes, Strmbase.lib e Qtzbase.lib ambos fornecerá exatamente os mesmos resultados. **
See Also
Concepts
Building DirectShow Applications
Setting Up the Build Environment