.. -*- coding: utf-8; mode: rst -*- .. _raw-vbi: ********************** Raw VBI Data Interface ********************** VBI is an abbreviation of Vertical Blanking Interval, a gap in the sequence of lines of an analog video signal. During VBI no picture information is transmitted, allowing some time while the electron beam of a cathode ray tube TV returns to the top of the screen. Using an oscilloscope you will find here the vertical synchronization pulses and short data packages ASK modulated [1]_ onto the video signal. These are transmissions of services such as Teletext or Closed Caption. Subject of this interface type is raw VBI data, as sampled off a video signal, or to be added to a signal for output. The data format is similar to uncompressed video images, a number of lines times a number of samples per line, we call this a VBI image. Conventionally V4L2 VBI devices are accessed through character device special files named ``/dev/vbi`` and ``/dev/vbi0`` to ``/dev/vbi31`` with major number 81 and minor numbers 224 to 255. ``/dev/vbi`` is typically a symbolic link to the preferred VBI device. This convention applies to both input and output devices. To address the problems of finding related video and VBI devices VBI capturing and output is also available as device function under ``/dev/video``. To capture or output raw VBI data with these devices applications must call the :ref:`VIDIOC_S_FMT ` ioctl. Accessed as ``/dev/vbi``, raw VBI capturing or output is the default device function. Querying Capabilities ===================== Devices supporting the raw VBI capturing or output API set the ``V4L2_CAP_VBI_CAPTURE`` or ``V4L2_CAP_VBI_OUTPUT`` flags, respectively, in the ``capabilities`` field of struct :ref:`v4l2_capability ` returned by the :ref:`VIDIOC_QUERYCAP` ioctl. At least one of the read/write, streaming or asynchronous I/O methods must be supported. VBI devices may or may not have a tuner or modulator. Supplemental Functions ====================== VBI devices shall support :ref:`video input or output