Расследовать DirectShowSpy с сайта alax.info. Это позволит вам «шпионить» за запуском графиков DirectShow. Очень полезно в сочетании с таким инструментом, как GraphStudio .
Я - разработчик C ++, пишу приложения для DirectShow и постоянно использую оба инструмента, они являются незаменимыми инструментами отладки.
Google - тема таблицы бегущих объектов. Графики DirectShow (обычно) добавляются в таблицу запущенных объектов, так что вы можете перечислить ROT, чтобы определить, какие графики выполняются в системе.
Ваша видеокарта будет использовать фильтр визуализации DirectShow для воспроизведения видео в графе Directshow. Рендерер обычно питается фильтром декодера. Фильтр декодера выполняет работу по декодированию видео, и именно декодер должен быть проинструктирован использовать ускорение DXVA.
Так, например, у вас может быть фильтр декодера H.264 в графике воспроизведения, вы должны указать ему использовать ускорение DXVA.
По моему опыту, фильтр декодера будет иметь возможность включить / выключить ускоренное декодирование видео DXVA, но это будет характерно для данного декодера, и поэтому будет гораздо сложнее универсально обнаружить.
Так, например, вы можете написать код, чтобы определить, включен ли DXVA, запросив фильтр декодера в рабочем графике, который декодирует поток H.264, но код для запроса фильтра декодера для графика VP8, скорее всего, будет отличаться код.
Эта ссылка MSDN поддерживает мой опыт, что ускорение DXVA переключается через фильтр декодера; может быть какой-то способ сделать запрос к графической карте, но я думаю, что это будет зависеть от производителя карты gfx.
Извините, ответы не были более конкретными, но я надеюсь, что это укажет вам правильное направление ...