From LinuxTVWiki
Jump to navigation Jump to search


The v4l-utils are a series of packages for handling media devices.

It is hosted at [v4l-utils.git], and packaged on most distributions.

It provides a series of libraries and utilities to be used to control several aspect of the media boards.

Libraries at v4l-utils

  • libv4l library to help V4L2 applications to handle different video formats, including the ones found on some specific webcam models;
  • [libdvbv5] library to help the development of DVB applications using the Linux [DVB version 5 API];
  • libv4l2rds library to help the development of aplications for RDS radios;

Utilities at v4l-utils

v4l-utils includes the following utilities:

  • DVBv5_Tools: tools to scan, zap and do other neat things with DVB devices;
  • ir-keytable: Dump, Load or Modify ir receiver input tables;
  • ir-ctl: A swiss-knife tool to handle raw IR and to set lirc options;
  • media-ctl: Tool to handle media controller devices;
  • qv4l2: QT v4l2 control panel application;
  • v4l2-compliance: Tool to test v4l2 API compliance of drivers;
  • v4l2-ctl: tool to control v4l2 controls from the cmdline;
  • v4l2-dbg: tool to directly get and set registers of v4l2 devices;
  • v4l2-sysfs-path: checks the media devices installed on a machine and the corresponding device nodes;
  • xc3028-firmware: Xceive XC2028/3028 tuner module firmware manipulation tool;
  • cx18-ctl: tool to handle cx18 based devices (deprecated in favor of v4l2-ctl);
  • ivtv-ctl: tool to handle ivtv based devices (deprecated in favor of v4l2-ctl);
  • rds-ctl: tool to handle RDS radio devices;
  • decode_tm6000: ancillary tool to decodes tm6000 proprietary format streams;
  • cec-ctl: tool to control CEC devices from the command line;
  • cec-follower: tool used to emulate CEC followers;
  • cec-compliance: tool to test CEC API compliance of drivers and remote CEC devices;

Obtaining and installing v4l-utils from the development repository

The v4l-utils utilities and libraries are already provided on most distros. Yet, sometimes you may need to install the very latest development version.

In order to obtain and use v4l-utils from the source, you should have git, make, gcc and autotools packages installed on your machine. Some additional dependencies are also required.

For example, on Fedora, those are the packages required: libjpeg-devel, qt4-devel, kernel-headers, desktop-file-utils and alsa-lib-devel. In order to build the library documentation, dot and doxygen is also required. For LaTex and pdf documentation, doxygen-latex is also needed.

On Ubuntu, you will need at least build-essential, libjpeg-dev.

Once the dependencies got installed, the v4l-utils source can be obtained and compiled with (replace x.y.z with the latest version found here):

$ wget http://linuxtv.org/downloads/v4l-utils/v4l-utils-x.y.z.tar.bz2
$ tar xvfj v4l-utils-x.y.z.tar.bz2
$ cd v4l-utils-x.y.z
$ ./configure

If all dependencies are properly installed, then it can be compiled with:

$ make

And installed (as root) with:

# make install

The libdvbv5 documentation can be generated with:

$ make doxygen-doc

And, for it in PDF format:

$ make doxygen-pdf

Also See