Метод CBaseControlVideo.GetImageSize

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Метод GetImageSize извлекает сведения о размере изображения видео.

Синтаксис

HRESULT GetImageSize(
   VIDEOINFOHEADER *pVideoInfo,
   long            *pBufferSize,
   RECT            *pSourceRect
);

Параметры

pVideoInfo

Указатель на заполняемую структуру VIDEOINFOHEADER .

pBufferSize

Указатель на размер буфера видео.

pSourceRect

Указатель на размеры прямоугольника исходного видео.

Возвращаемое значение

Возвращает значение HRESULT , которое зависит от реализации; Может быть одним из следующих значений или другими значениями, не указанными в списке.

Код возврата Описание
E_FAIL
Ошибка.
E_INVALIDARG
Недопустимый аргумент. Формат данных несовместим.
E_UNEXPECTED
Произошла непредвиденная ошибка. Один или несколько аргументов имеют значение NULL.
NOERROR
Успешно.

Комментарии

Эта функция-член является вспомогательной функцией, используемой для создания отрисовки изображений в памяти для образов DIB. Он вызывается из реализации базового класса CBaseControlVideo::GetCurrentImage , когда параметр nullpVideoImage передается этой функции-члену. В результате эта функция-член создает и возвращает структуру VIDEOINFOHEADER , используя сведения в pBufferSize и pSourceRect.

Требования

Требование Значение
Заголовок
Ctlutil.h (включая Streams.h)
Библиотека
Strmbase.lib (розничные сборки);
Strmbasd.lib (отладочные сборки)

См. также раздел

Класс CBaseControlVideo