Глупо ли не использовать DirectShow в качестве основы конвейера обработки видео CUDA для Windows? - PullRequest
3 голосов
/ 28 сентября 2011

При создании ориентированного на CUDA конвейера обработки видео для работы исключительно в Windows существует два подхода:

Вы используете DirectShow или нет.

Решение не использовать directshow - это также решение самостоятельно кодировать каждую часть конвейера.

Это включает чтение, анализ, обработку и рендеринг или повторную передачу потока.если if

С DirectShow, однако, вы получаете доступ к довольно большому массиву существующих компонентов, которые вполне способны выполнять некоторую часть работы конвейера.

Это означает, что вы можете сосредоточиться на своем devпроцесс кодирования одного или нескольких источников, фильтров или средств визуализации DirectShow, которые используют CUDA для инкапсуляции любой новой или иным образом недоступной обработки.

И в результате принятия архитектуры на основе компонентов вы находитесь в хорошем положении для разработкиальтернативные реализации т.е. OpenCL.без необходимости прикасаться к другим частям конвейера.

Существуют ли какие-либо обязательства по участию в DirectShow, которые требуют дополнительной работы, связанной с разработкой и сопровождением частей, не относящихся к CUDA?

1 Ответ

1 голос
/ 14 октября 2011

Если вы еще этого не сделали, было бы полезно взглянуть на демонстрацию «cudaDecodeD3D9» в NVidia GPU SDK (CUDA SDK).Он декодирует и рендерит видео без DirectShow (используя CUDA и DirectX9).Точно так же есть демо "cudaDecodeOpenGL", если вы предпочитаете.

...