Написание исходного фильтра 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
Если вы все еще застряли, Мартовский Заяц также предоставит отличные образцы для начала работы:
Вы можете увидеть образец источника 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.