V4L TV Viewing - LinuxTVWiki


The following provides commands for adjusting common configuration settings for a V4L device; which are useful for, say, enhancing the end user's experience while watching analogue TV or webcam viewing.

Common configuration and control commands

1. v4l2ucp -- universal control panel for v4l2 devices

2. Command-line control the V4L device

a. v4lctl (part of the xawtv package)
  • v4lctl -c /dev/video1 list
  • v4lctl setnorm ntsc-m
  • v4lctl setfreqtab us-cable
  • v4lctl setfreqtab us-bcast
  • v4lctl setchannel 3
  • v4lctl volume mute off
  • v4lctl volume 100
  • v4lctl audio stereo
  • v4lctl -c /dev/video0 setattr 'chroma agc' on (bttv only)
  • v4lctl -c /dev/video0 hue "100%" (or "0%" -- same thing)
  • v4lctl -c /dev/video1 bright "50%"
  • v4lctl -c /dev/video2 contrast "45%"
  • v4lctl -c /dev/video0 color "50%"
b. dov4l2
  • Console tool that sets the parameters of a Video4Linux-device
  • You can set picture size, brightness, contrast, tuner frequency, and so on.
  • You can also retrieve a complete list of all current settings.

Test the video

3. Test the video

  • xawtv -hwscan
  • xawtv -remote -noxv -c /dev/video0 -vbidev /dev/vbi0

4. Test overlay mode (capture card controls display -- easy on CPU)

  • xawtv -noxv -capture overlay
  • xawtv -v4l1 -capture overlay
  • xawtv -xvtv -capture overlay
  • xawtv -xvtv_overlay on -capture overlay
  • xawtv -xvtv_overlay off -capture overlay

5. Test grabdisplay mode (application controls display -- required for deinterlacing and other effects)

  • xawtv -noxv -capture grabdisplay
  • xawtv -v4l1 -capture grabdisplay
  • xawtv -xvtv -capture grabdisplay
  • xawtv -xvtv_overlay on -capture grabdisplay
  • xawtv -xvtv_overlay off -capture grabdisplay

6. Test streamer

  • streamer -i "S-Video Input"

7. Determine the characteristics of a recorded video file

  • mplayer -vo dummy -identify <filename> 2>&1 | grep -E "VIDEO:|AUDIO:"

You can put this into a script and for instance call it reveal:

mplayer -vo dummy -identify $1 2>&1 | grep -E "VIDEO:|AUDIO:"

Now you can issue "reveal <filename>" and see something like this:

VIDEO:  [h264]  576x432  24bpp  29.970 fps  495.5 kbps (60.5 kbyte/s)
AUDIO: 32000 Hz, 2 ch, s16le, 64.0 kbit/6.25% (ratio: 8000->128000)

This command also gives you details:

However, at this point (transcode 1.0.2) it doesn't show you video bitrates.