Как отладить фильтр DirectShow C++

Какие средства отладки доступны для фильтров directshow? В настоящее время у меня есть проект, который компилирует и регистрирует фильтр источника видеосигнала, что я затем устанавливаю график в GraphEdit. Я использую C++ в Visual Studio 2008. Действительно ли возможно подключить отладчик к фильтру всегда, где я мог установить точки останова, осмотреть переменные и т.д.? Запрет, который является там способом зарегистрировать диагностическую информацию где-нибудь, что я могу просмотреть в режиме реального времени?

9
задан Mr Bell 9 June 2010 в 03:07
поделиться

2 ответа

Проблем с подключением отладчика быть не должно. Установите graphedt.exe в качестве цели отладки в проекте Visual Studio вашего фильтра, и вы сможете устанавливать точки останова в своем коде. Если у вас возникли трудности с этим, возможно, это связано с логикой защиты от отладки в некоторых декодерах - вам следует избегать их использования.

Вы также можете получить полезную отладочную информацию, регистрируя доставки, их временные метки и задержку. На мой взгляд, лучший способ сделать это - использовать сквозной фильтр. Существует пример такого фильтра монитора, доступный в исходной и двоичной форме на сайте www.gdcl.co.uk/mobile (win32 и win mobile).

G

12
ответ дан 4 December 2019 в 09:35
поделиться

Лучший способ отладки приложений в реальном времени - это создание файлов журналов. Если вы хотите просматривать журнальную информацию в реальном времени, просто создайте журнал на основе сокетов клиент-сервер. Например, ваше приложение может начать прослушивать порт. Внешнее приложение-просмотрщик (клиент) может подключиться к этому порту и начать получать информацию из журнала в реальном времени.

0
ответ дан 4 December 2019 в 09:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: