Поделиться через


Метод IAMVideoCompression::get_PFramesPerKeyFrame (strmif.h)

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

Метод get_PFramesPerKeyFrame извлекает частоту прогнозируемых кадров (P) на ключевой кадр.

Синтаксис

HRESULT get_PFramesPerKeyFrame(
  [out] long *pPFramesPerKeyFrame
);

Параметры

[out] pPFramesPerKeyFrame

Указатель на переменную, которая получает количество P-кадров на ключевой кадр. Если значение отрицательное, фильтр будет использовать ставку по умолчанию.

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

Возвращает значение HRESULT .

Комментарии

Чтобы определить, поддерживает ли фильтр этот метод, вызовите метод IAMVideoCompression::GetInfo и проверка для флага CompressionCaps_CanBFrame в параметре pCapabilities. Метод GetInfo также возвращает частоту P-кадров по умолчанию.

Кадры P используются в сжатии MPEG; Как правило, это свойство не применяется к другим форматам сжатия. Например, предположим, что ключевой кадр возникает один раз в 10 кадров, а на один ключевой кадр приходится три кадра P. Кадры P будут равномерно распределены между ключевыми кадрами. Оставшиеся шесть кадров являются двунаправленными (B) кадрами.

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header strmif.h (включая Dshow.h)
Библиотека Strmiids.lib

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

Коды ошибок и успешности

Интерфейс IAMVideoCompression

IAMVideoCompression::p ut_KeyFrameRate