Написание исходного фильтра Direct Show

Мне нужно написать фильтр Direct Show, который

  • принимает входные данные (видео, аудио) из живого источника.

  • И он должен передавать данные (видео, аудио: которые закодированы) в фильтр декодера.

MyCustomDirectShowSourceFilter ---> Декодер

Любые реальные рабочие примеры, которые я могу создать свой собственный фильтр исходного кода и какие-либо предложения для реализации?

С наилучшими пожеланиями

Обновить:

По сути, я хочу исходный фильтр, который принимает потоки из сети и позволяет обрабатывать и декодировать видеопоток другим фильтром.

Таким образом, когда я изменяю образец push-фильтра Microsoft и подключаюсь к декодеру, он не вызывает метод FilllBuffer. График просто не работает. Мне нужен пример фильтра источника, выход которого подключен к декодеру, а не к видео рендереру или мультиплексору.

2 ответа

Windows SDK (7.1) содержит пример кода фильтра DirectShow, включая фильтр исходного кода, который я успешно использовал для создания исходных фильтров для живых устройств.

Если у вас установлена ​​последняя версия Windows SDK, она должна быть здесь:

C: \ Program Files \ Microsoft SDKs \ Windows \ v7.1 \ Samples \ multimedia \ directshow \ filters \ pushsource

Кроме того, MSDN имеет большой справочный материал по этой теме:

http://msdn.microsoft.com/en-us/library/dd757807(v=vs.85).aspx

Если вы все еще застряли, Мартовский Заяц также предоставит отличные образцы для начала работы:

http://tmhare.mvps.org/downloads.htm

Вы можете увидеть образец источника push-уведомлений, упомянутый по адресу
https://docs.microsoft.com/en-us/windows/win32/directshow/push-source-filters-sample .

Исходный код пробного исходного фильтра push-уведомлений находится по адресу
https://github.com/microsoft/Windows-classic-samples/tree/master/Samples/Win7Samples/multimedia/directshow/filters/pushsource.

Другие вопросы по тегам