Я должен масштабировать растровое изображение (например, от 1280 x 720 до 1920 X 180 и наоборот).
Я использую это масштабирование в захвате видео с экрана. Масштабирование на основе программного обеспечения потребляет много ресурсов ЦП и медленнее.
Есть ли аппаратное ускорение API или библиотеки для масштабирования?
Некоторые методы обсуждаются в теме Как использовать аппаратные видео скейлеры?. Но не окончательный вывод.
Необходима поддержка: Windows 7 и выше
Если у вас есть IDirect3DTexture9
изображения для масштабирования, вы можете использовать StretchRect.
В D3D11 нет эквивалентной функции, однако, если у вас есть ID3D11Texture2D
из масштабируемого изображения вы можете просто создать цель рендеринга с желаемым целевым размером, полноэкранным квадратором и рендерить на цель с помощью простого шейдера, который просто выбирает исходную текстуру. Полученная цель рендеринга будет масштабированным изображением ввода. Примечание: этот полноэкранный четырехугольный метод также будет работать в D3D9.
Других решений пока нет …