О "Использование фильтров DirectShow вне DirectShow?" - PullRequest
2 голосов
/ 16 мая 2011

У меня точно такой же вопрос по следующей ссылке, Использование фильтров DirectShow вне DirectShow? Я новичок в прямом шоу, и два ответа в этом стеке мне не совсем понятны. И я не могу найти способ связаться с автором, чтобы спросить, решил ли он свою проблему. Есть ли способ сделать это?

Или кто-нибудь может дать более подробное объяснение об этих двух ответах? Что означает «вручную» называть различные фильтры »и что означает« оборачивать весь график фильтра »?

1 Ответ

2 голосов
/ 08 июня 2011

Я не могу комментировать метод «от руки» (плохая идея, IMO), но один из вариантов использования DirectShow - это обернуть весь граф фильтра в объекте Media Foundation.Так что да, внутри объекта Media Foundation будет полный граф направленного шоу вместе с интересующим вас фильтром (ами).

Это, конечно, нетривиально - для графа направленного шоу,вам понадобится некоторый входной фильтр, а затем, вероятно, фильтр граббера сэмплов, чтобы получить сэмплы из графика.Ваш график будет выглядеть примерно так:

Source Filter -> Some DMO Decoder -> Sample Grabber -> Null Renderer

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

Если ваш фильтр декодера является DMO, то это становится намного проще.Я так понимаю, вы не используете фильтр DMO?

...