Конструктор COutputQueue.COutputQueue
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует, чтобы новый код использовал MediaPlayer, IMFMediaEngine и аудио- и видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, использующий устаревшие API, чтобы по возможности использовать новые API.]
Метод конструктора.
Синтаксис
COutputQueue(
IPin *pInputPin,
HRESULT *phr,
BOOL bAuto = TRUE,
BOOL bQueue = TRUE,
LONG lBatchSize = 1,
BOOL bBatchExact = FALSE,
LONG lListSize = DEFAULTCACHE,
DWORD dwPriority = THREAD_PRIORITY_NORMAL
);
Параметры
-
pInputPin
-
Указатель на интерфейс IPin входного контакта. Объект доставляет образцы в этот контакт.
-
Phr
-
Указатель на код возврата HRESULT . Перед вызовом этого метода задайте значение S_OK. При возврате phr получает значение, указывающее на успешное или неудачное выполнение метода.
-
bAuto
-
Флаг, указывающий, принимает ли объект решение о создании очереди. Если задано значение TRUE, объект создает очередь только в том случае, если входной контакт может блокироваться. Если значение FALSE, параметр bQueue указывает, следует ли создавать очередь.
-
bQueue
-
Если параметр bAuto имеет значение TRUE, этот параметр игнорируется. Если параметр bAuto имеет значение FALSE, этот флаг указывает, следует ли создавать очередь.
-
lBatchSize
-
Максимальное количество образцов для доставки в одном пакете.
-
bBatchExact
-
Флаг, указывающий, следует ли использовать точные размеры пакетов. Если задано значение TRUE, объект ожидает выборки lBatchSize перед их доставкой во входной контакт. Если значение FALSE, объект доставляет образцы по мере их получения.
-
lListSize
-
Размер кэша для очереди. Значение по умолчанию DEFAULTCACHE является константой, определенной для класса CBaseList .
-
dwPriority
-
Приоритет потока, доставляющего образцы.
Комментарии
Если bAuto имеет значение TRUE, объект вызывает метод IMemInputPin::ReceiveCanBlock для подчиненного закрепления. Если ReceiveCanBlock возвращает S_OK (это означает, что закрепление может блокироваться при вызовах IMemInputPin::Receive ), объект создает поток для доставки примеров. В противном случае поток не создается.
Если параметр bAuto имеет значение FALSE, значение bQueue определяет, следует ли создавать поток.
Если объект создает поток, он назначает дескриптор потока переменной-члену COutputQueue::m_hThread . Процедура потока — COutputQueue::InitialThreadProc, а параметр потока является указателем на это. Объект также создает очередь для хранения примеров, которая предоставляется переменной-членом COutputQueue::m_List .
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|