man ppmtofb (Commandes) - display a portable pixmap on a framebuffer
NAME
ppmtofb - display a portable pixmap on a framebuffer
SYNOPSIS
ppmtofb [-h] [-V] [-v] [-c] [-w delay ] [-d depth ] [-g] [-f device ] [-s] [-n] [-H] [-x cutoff ] [--help] [--version] [--verbose] [--center] [--centre] [--delay delay ] [--depth depth ] [--grayscale] [--greyscale] [--framebuffer device ] [--stdin] [--no-histogram] [--no-ham] [--cutoff cutoff ] [ file... ]
DESCRIPTION
Reads at least one portable pixmap as input, and renders it (or them, in sequence) to a free virtual terminal. You must specify at least one filename or use --stdin to represent standard input (for use in a pipeline).
OPTIONS
- -h, --help
- Show a brief summary of the options permitted.
- -V, --version
- Display the version and copyright of ppmtofb.
- -v, --verbose
- Write information about each image to stderr.
- -c, --center, --centre
- Center the image on the visible display area (if possible).
- -w, --delay
- Set the mininum delay between images, in seconds. (Default: 5). Note that the time an image is displayed while another is loading is included in this delay period (so if it takes longer than the delay period to load the next image, the delay will be extended).
- -d, --depth
- Set the color depth for images. Defaults to the depth of the current mode.
- -s, --stdin
- Use standard input instead of reading files from the command line.
- -g, --grayscale, --greyscale
- Render all images in grayscale. This can be significantly faster than color display on low-color displays.
- -r, --random-dither
- Use a random dithering algorithm to improve the grayscale display by simulating a 256-grayscale display. Only effective if -g is also specified or the image just happens to be grayscale.
- -f, --framebuffer, --frame-buffer
- Specify the framebuffer device to use. This defaults to /dev/fb0.
- -n, --no-histogram
- Don't make any attempt to profile the image; instead, use the default palette. This is much faster for Amiga HAM displays (and only affects HAM), but the resulting output is somewhat lower in quality.
- -H, --no-ham
- Don't use HAM modes, even if available.
- -x, --cutoff
- Ignore colors that have fewer than N pixels in the image of that color when determining the palette (HAM only). Defaults to 0.01% of the pixels in the image.
ENVIRONMENT
- FRAMEBUFFER
- The framebuffer device to use. (Default: /dev/fb0.)
EXAMPLES
- ppmtofb linux-logo.ppm
- Display the PPM file linux-logo.ppm and exit, using the default options.
- djpeg humberto-flores.jpg | ppmtofb --stdin
- Display the JPEG file humberto-flores.jpg and exit, using the default options (via the --stdin feature of ppmtofb).
BUGS/LIMITATIONS
Displaying images with more than 256 colors only works on Amigas with the AGA chipset (and works somewhat on Amigas with other chipsets), or on DIRECTCOLOR/TRUECOLOR visuals. You can work around this limitation using ppmquant or ppmdither. The --grayscale and --random-dither options will also be useful in this regard. See fbview for an automated solution to this problem.
PSEUDOCOLOR only works with up to 256 colors. However, no existing framebuffer device supports PSEUDOCOLOR with more than 256 colors.
The DIRECTCOLOR and TRUECOLOR implementation expects each pixel to start and end at a byte-boundary. This means that modes like NeXT 12-bit truecolor (4 bits per gun) are not supported. However, this limitation does not affect any existing framebuffer device.
Depths greater than 32 bpp are not supported. Anyone who needs more than 32 bpp has significantly better vision than I do.
Static-color modes other than grayscale (such as macfb) are completely unsupported. Supporting them properly would require incorporating quantization and dithering routines.
Supporting palette-based image formats (like PNG and GIF) directly would increase speed on non-truecolor/directcolor systems.
Various dialects of the English language permit too many spellings of useful parameters.
The program probably keeps the root UID too long.
SEE ALSO
ppmdither(1), ppmquant(1), fbview(1), fb.modes(5), ppm(5), fbset(8), /usr/src/linux/Documentation/fb/framebuffer.txt
AUTHORS
Geert Uytterhoeven <Geert.Uytterhoeven@cs.kuleuven.ac.be> and Chris Lawrence <lawrencc@debian.org>
HAM8 rendering code originally written by Guenther Roehrich <Guenther@studbox.uni-stuttgart.de> (as part of the AmigaOS jpegAGA package), although it has been more-or-less rewritten multiple times by Chris.
The VGA16 rendering code was unabashedly lifted from the bogl library, by Ben Pfaff <pfaffben@debian.org>.
Copyright (C) 1996 Geert Uytterhoeven and (C) 1996-2000 Chris Lawrence.
This software may be redistributed under the terms of the GNU General Public License, version 2 (or, at your option, a later version).
Portions of the HAM code were taken from ppmtoilbm, which is copyright (C) 1989 by Jef Poskanzer and modified by Ingo Wilken. Those portions are licensed as follows:
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. This software is provided "as is" without express or implied warranty.