Совершенно не разбираясь в программировании, озаботился однако проблемой захвата видео с видеокамер и ТВ карт, чисто из любопытства. Зацепило вот и следующий вопрос не дает покоя - каким образом приложение (пусть на C++) взаимодействует с фильтрами DirectShow? Например, построил я с помощью GraphEdit фильтровый граф хватающий сигнал с ТВ карты и выводящий его на экран, все работает, картинка и звук есть, каналы переключаются и все такое прочее. Но, граф графом, но нужно же как-то управлять устройством захвата не прибегая к GraphEdit, насколько я понимаю, фильтровый граф всего лишь пример того, как должны соединятся фильтры для реализации той или иной задачи выполняемой с помощью DirectShow. Как же управлять компонентами DirectShow из программы? Как с помощью приложения соединять фильтры необходимым образом и как менять их свойства посредством графического интерфейса реализованного в программе?
Поясните пожалуйста без лишних подробностей (напомню, в программировании я полный ньюб), интересует только принцип реализации программ с использованием DirectShow, желательно пояснение "на пальцах".