---
name: "fbtv"
section: "1"
platform: "linux"
package: "fbtv"
version: "3.107-4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/fbtv"
---

# fbtv(1)

a console program for watching TV

## NAME

fbtv - a console program for watching TV

## SYNOPSIS

**fbtv \[ options \] \[ station name \]**

## DESCRIPTION

**fbtv** is a program for watching TV with your linux box.  It runs on top of a graphic framebuffer device (**/dev/fb0**).  You'll need a kernel newer than 2.1.x to play with this. **fbtv** shares the config file (**$HOME/.xawtv**) with the **xawtv** application.  Check the **[xawtv(1)](/xawtv/1.md)** manpage for details about the config file format.

## OPTIONS

- **-h**

  Display a command line options summary.

- **-o base**

  set **base** string for the snapshot output files.  The filename will be **base-timestamp-nr.ext**.

- **-v**

  Be verbose.

- **-c device**

  video4linux device (default is **/dev/video0**).

- **-D driver**

  video4linux driver (default is **libv4l**).

- **-d device**

  framebuffer device (default is **$FRAMEBUFFER**; **/dev/fb0** if unset)

- **-g**

  grayscaled display (works for 256 color mode only)

- **-s *width*x*height***

  sets the V4L2 capture in *width* x *height* resolution if possible.

- **-f font**

  font for text.  Default is to look for **lat1-16** console font. It no path is specified, it will seek for the font at the following directories:

  ```
    /usr/share/consolefonts/
    /usr/share/kbd/consolefonts/
    /usr/lib/kbd/consolefonts/
    /lib/kbd/consolefonts/
  ```

  If you have a local X11 font server running (or the **FONTSERVER** environment variable set to some working server), you can also give X11 font specs here.

- **-m mode**

  video mode for TV.  **fbtv** will look up the mode in **/etc/fb.modes**.

- **-j joydev**

  joystick device to use for controlling **fbtv**.

- **-k**

  keep capture on when switching consoles.  Might be useful together with -s switch, you have a video picture while working on another console.  This is more or less a dirty hack.  Works only if all your consoles have the same video mode and fbcon does not use panning to speed up scrolling.  For a multiheaded setup this is useful too.

- **-q**

  quiet mode.  Doesn't reserve space for the status line at the top, doesn't display the status messages and clock. When **fbtv** is started on this mode, it won't try to load the font file at start.

  You can toggle this at runtime too (using the **'F'** key).

- **-M**

  EXPERIMENTAL: Turn on backend scaler mode (write yuv to offscreen memory and let the gfx board scale up the video).  Supported hardware: Matrox G200/G400 (with matroxfb) and ATI Mach64 VT/GT (with atyfb, 16bpp only).  You'll need at least bttv-0.7.16 or kernel 2.3.50.

## USAGE

**fbtv** is supported to work much like **xawtv** from user's point of view. You might have noticed that **xawtv** has a lot of keyboard shortcuts. They work in **fbtv** too (if it useful).  Here is the list:

```
  G            Grab picture (full size, ppm)
  J            Grab picture (full size, jpeg)
  F            Fullscreen.  Toggle quiet mode (see above).
  up/down      tune up/down one channel
  left/right   fine tuning
  pgup/pgdown  station up/down
  ESC,Q        Quit
  X            Quit, but leave sound on.
  +/-          Volume up/down
  Enter        mute
```

The channel hotkeys defined in **$HOME/.xawtv** are supported too, with one exception: modifier keys (something like "**key = Ctrl+F1**") do not work.

## FULLSCREEN TV

Some hints from Dag Bakke \<dag.bakke@riksnett.no\>:

The BT8xx cards can produce images up to 768x576 pixels.  In order to have **fbtv** make use of your entire monitor-size and get maximum image quality, you need to create a 768x576 pixels framebufferconsole. This can be accomplished with the **[fbset(1)](/fbset/1.md)** utility, which is available at various locations.  See: http://www.cs.kuleuven.ac.be/~geert/bin/

Or, you can let **fbtv** handle the videomode changes with the -m switch. This requires that you have a small database with the various videomodes available. The file containing the videomodes is normally named **/etc/fb.modes**. For example, the following entry produces a 768x576x32bpp mode, with 75Hz refresh on a Matrox G200.

```
mode "tv"
    # D: 49.188 MHz, H: 46.580 kHz, V: 75.008 Hz
    geometry 768 576 768 576 32
    timings 20330 128 32 32 8 128 5
endmode
```

The command "**fbtv -q -mtv**" thus gives you crisp clear (well, as good as the received signal anyway) tv on your entire screen. Alias this command to '**tv**', and you're set.

**NB!** Please note that your monitor may or may not be able to handle such a "custom" resolution. And that misuse of the aforementioned fbset utility can toast your monitor. It is a lot easier to pull smoke out of electronic components, than to put it back in.

A database of the standard VESA-modes can be downloaded from: ftp://platan.vc.cvut.cz/pub/linux/matrox-latest/fb.modes.vesa60.gz

## SEE ALSO

[xawtv(1)](/xawtv/1.md)

## AUTHOR

Gerd Knorr \<kraxel@goldbach.in-berlin.de\>

## COPYRIGHT

Copyright (C) 1997,98 Gerd Knorr \<kraxel@goldbach.in-berlin.de\>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
