Метод CTransInPlaceFilter.DecideBufferSize
[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]
Метод DecideBufferSize
задает требования к буферу выходного контакта.
Синтаксис
HRESULT DecideBufferSize(
IMemAllocator *pAlloc,
ALLOCATOR_PROPERTIES *pProperties
);
Параметры
-
pAlloc
-
Указатель на объект IMemAllocator , используемый выходным контактом.
-
pProperties
-
Указатель на запрошенные свойства распределителя для количества, размера и выравнивания, как указано в структуре ALLOCATOR_PROPERTIES .
Возвращаемое значение
Возвращает значение HRESULT . Возможные значения включают значения, приведенные в следующей таблице.
Код возврата | Описание |
---|---|
|
Успешное завершение |
|
Failure |
Комментарии
Этот метод вызывается, когда классУ CTransInPlaceFilter необходимо предоставить размер буфера для нижестоящего фильтра. Если фильтр CTransInPlaceFilter уже подключен вышестоящий, он использует свойства распределителя для подключения вышестоящий контакта. В противном случае он устанавливает размер буфера в 1 байт в качестве временного значения заполнителя. Когда фильтр вышестоящий подключается, класс CTransInPlaceFilter пересматривает подчиненный распределитель. Дополнительные сведения о процессе подключения контактов в этом классе см. в разделе Класс CTransInPlaceFilter.
Требования
Требование | Значение |
---|---|
Заголовок |
|
Библиотека |
|