структура 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 представляет количество текущего рисунка в зависимости от формата, используемого для открытия потока. Это число вычисляется одним из двух способов в зависимости от устройства:

  1. Измерение времени с момента запуска потока и деление на длительность кадра. Этот метод подходит для устройств, которые не предоставляют собственные часы. Например: PictureNumber = (CurrentStreamTime − StartStreamTime) / FrameDuration

  2. Сложить количество захваченных кадров и число удаленных кадров. Этот метод подходит для устройств, предоставляющих собственные часы. Например: 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)

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

KSSTREAM_HEADER

KS_TVTUNER_CHANGE_INFO

KS_VBIINFOHEADER