структура KS_VBI_FRAME_INFO (ksmedia.h)
Структура KS_VBI_FRAME_INFO расширяет структуру KSSTREAM_HEADER для вертикальных потоков интервала пробела (VBI).
Синтаксис
typedef struct tagKS_VBI_FRAME_INFO {
ULONG ExtendedHeaderSize;
DWORD dwFrameFlags;
LONGLONG PictureNumber;
LONGLONG DropCount;
DWORD dwSamplingFrequency;
KS_TVTUNER_CHANGE_INFO TvTunerChangeInfo;
KS_VBIINFOHEADER VBIInfoHeader;
} KS_VBI_FRAME_INFO, *PKS_VBI_FRAME_INFO;
Члены
ExtendedHeaderSize
Задает размер этой структуры.
dwFrameFlags
Задает флаги, указывающие дополнительные сведения о захваченных кадрах. Во время захвата мини-диск устанавливает для этого элемента одно из следующих значений, определенных в ksmedia.h:
Flag | Значение |
---|---|
KS_VBI_FLAG_FIELD1 | Указывает первое поле последовательности из двух полей. |
KS_VBI_FLAG_FIELD2 | Указывает второе поле последовательности из двух полей. |
KS_VBI_FLAG_MV_PRESENT | Указывает схему защиты Macrovision |
KS_VBI_FLAG_MV_HARDWARE | Указывает поддержку оборудования Macrovision |
KS_VBI_FLAG_MV_DETECTED | Указывает, что макросвидеть обнаружена |
KS_VBI_FLAG_TVTUNER_CHANGE | Указывает, что структура элемента TvTunerChangeInfo содержит допустимые данные |
KS_VBI_FLAG_VBIINFOHEADER_CHANGE | Указывает, что структура элемента VBIInfoHeader содержит допустимые данные. |
PictureNumber
Указывает число, представляющее текущий номер рисунка. Инициализируйте или обновите это значение при переходе в KSSTATE_ACQUIRE.
DropCount
Указывает количество изображений, которые не были захвачены. При записи видео мини-диск устанавливает этот элемент. Этот счетчик следует увеличивать всякий раз, когда кадр должен был быть захвачен, но не был; Это условие обычно возникает, когда буферы не были доступны во время записи. Инициализируйте или обновите это значение при переходе в KSSTATE_ACQUIRE.
dwSamplingFrequency
Указывает частоту выборки в герцах (Гц).
TvTunerChangeInfo
Указывает сведения о текущем источнике данных VBI, включая код страны или региона, стандарт аналогового видео и канал. Этот элемент действителен, только если параметр dwFrameFlags указывает флаг KS_VBI_FLAG_TVTUNER_CHANGE.
VBIInfoHeader
Указывает сведения о текущем источнике данных VBI, включая начальную строку, конечную строку, частоту выборки и стандарт видео. Этот элемент действителен, только если параметр dwFrameFlags указывает флаг KS_VBI_FLAG_VBIINFOHEADER_CHANGE.
Комментарии
Структура KS_VBI_FRAME_INFO предоставляет способ возврата сведений о захваченном кадре, а также предоставляет сведения о настройке декодерам VBI.
Число элементов PictureNumber представляет количество текущего рисунка в зависимости от формата, используемого для открытия потока. Это число вычисляется одним из двух способов в зависимости от устройства:
Измерение времени с момента запуска потока и деление на длительность кадра. Этот метод подходит для устройств, которые не предоставляют собственные часы. Например: PictureNumber = (CurrentStreamTime − StartStreamTime) / FrameDuration
Сложить количество захваченных кадров и число удаленных кадров. Этот метод подходит для устройств, предоставляющих собственные часы. Например: PictureNumber = FramesCaptured + FramesDropped
При вычислении PictureNumber и DropCount важно использовать длительность кадра, указанную при открытии потока, которая не обязательно может соответствовать скорости, с которой устройство фактически создает изображения. Например, USB-камера может создавать изображения только со значением 7,5 кадров/с, но клиент может открывать поток со значением 8 кадров/с. В этом случае все вычисления должны использовать число 8 кадров/с. Дополнительные сведения об обновлении PictureNumber и DropCount см. в разделе Запись видео.
Член dwSamplingFrequency не используется кодеками Microsoft VBI, но может использоваться другими кодеками WDM. Он должен совпадать с VBIInfoHeader. Элемент SamplingFrequency . Мини-диск указывает на изменение частоты выборки, задав бит KS_VBI_FLAG_VBIINFOHEADER_CHANGE в элементе dwFrameFlags и заполнив все элементы, включая dwSamplingFrequency, в структуре VBIInfoHeader .
Требования
Требование | Значение |
---|---|
Заголовок | ksmedia.h (включая Ksmedia.h) |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по