Я весь день разбираюсь и не очень далеко. Я нахожусь в окнах 7, используя directx 11. (Мой конечный вывод должен быть кадром видео на текстуре DX11) Я хочу декодировать некоторые очень большие видеофайлы H.264, а CPU (с помощью libav) не сокращает его.
Я просмотрел возможности libav с использованием DXVA2, но попал в дорожный блок, когда мне нужно создать IDirectXVideoDecoder, который может быть создан только с помощью интерфейса D3D9. (который у меня нет с DX11)
Всякий раз, когда я просматривал документацию DXVA, он не ссылается на DX11, было ли это удалено в DX10 или 11? (Не можете найти подтверждения об этом, ни где-нибудь, что говорит о том, что DXVA2 избыточен, возможно, что он превосходил DXVA-HD?)
Затем я просмотрел SDK для медиафайлов, поскольку это похоже на то, что я должен использовать для DX11... Но ни один из типов не существует в моих заголовках (Документы говорят просто включить, но это ничего не дает). Они также указывают минимум Windows 8, чтобы использовать его.
Я считаю, что для использования MF мне нужен SDK Windows 8, который теперь включает в себя все directx libs/headers.
Итак, это оставляет пробел с окнами 7... Возможно ли получить аппаратное ускоренное декодирование видео? и если да, какой API я должен использовать?