ABLE Application README - display ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Summary The `display' tool is used to display bitmap image files on ABLE video framebuffers. The display tool automatically detects the source image file format and determines the best colour match. The target framebuffer depth (number of bits used to represent a pixel) may be 1, 2, 4, 8, 16, 24 or 32bits. The source image colour depth is unconstrained by the display command and all images are upsampled to a 32bit depth. If the source image uses indexed colour and has a palette and the framebuffer is in an indexed colour mode the images palette will be applied to the framebuffer. When an image has to be quantised to a framebuffer depth using indexed colours the quantisation method may be selected. This process, by definition, reduces the quality of an image by reducing the number of colours available. This will introduce numerous image artefacts on high colour images such as photographs. If lower framebuffer depths are to be targeted explicitly reducing the source images colour depth, with an external program, is recommended. The quantisation is performed using the framebuffers current palette. The methods available are: - The per-pixel method performs, for every pixel, a linear Euclidean distance calculation for each colour in the palette to determine the closest match. This is the most accurate and slowest method. - The table method constructs a reduced depth linear colour cube table (5 bits for each R,G,B element) and computes the closest Euclidean colour distance for each entry in the table. Each pixel in the source image is then reduced in depth and looked up in this table. This method is less accurate than the per-pixel method but has greatly improved performance. This method is the default. - The linear method simply assumes the palette is the default linear colour cube (3:3:2 - RGB) and truncates each pixel value appropriately. This method is very fast but gives poor results on anything but simple images with few colours. Usage > display [-d | --dev ] [-q | --quantize ] [-x ] [-y ] [-w ] [-h ] ... Example To display a PNG image from a tftp server. > display (tftpboot)image.png Options -d --dev The output device (defaults to '(fb0)') -q --quantize Select the palette quantization method used for 8bpp or lower output devices. p - per pixel t - table l - linear -x X co-ordiante to plot image at. -y Y co-ordiante to plot image at. -w width of image to plot. -h height of image to plot. --help Display this help and exit --version Output version information and exit See also fbset Copyright The `display' tool and all associated documentation is Copyright 2006 Simtec Electronics The `display' tool is linked to additional libraries which have not been modified. zlib ==== (C) 1995-2004 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu http://www.zlib.net/ libjpeg ======= The authors make NO WARRANTY or representation, either express or implied, with respect to this software, its quality, accuracy, merchantability, or fitness for a particular purpose. This software is provided "AS IS", and you, its user, assume the entire risk as to its quality and accuracy. This software is copyright (C) 1991-1998, Thomas G. Lane. All Rights Reserved except as specified below. Permission is hereby granted to use, copy, modify, and distribute this software (or portions thereof) for any purpose, without fee, subject to these conditions: (1) If any part of the source code for this software is distributed, then this README file must be included, with this copyright and no-warranty notice unaltered; and any additions, deletions, or changes to the original files must be clearly indicated in accompanying documentation. (2) If only executable code is distributed, then the accompanying documentation must state that "this software is based in part on the work of the Independent JPEG Group". (3) Permission for use of this software is granted only if the user accepts full responsibility for any undesirable consequences; the authors accept NO LIABILITY for damages of any kind http://www.ijg.org/ libpng ====== libpng versions 1.2.6, August 15, 2004, through 1.2.29, May 8, 2008, are Copyright (c) 2004, 2006-2008 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-1.2.5 with the following individual added to the list of Contributing Authors Cosmin Truta libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors Simon-Pierre Cadieux Eric S. Raymond Gilles Vollant and with the following additions to the disclaimer: There is no warranty against interference with your enjoyment of the library or against infringement. There is no warranty that our efforts or the library will fulfill any of your particular purposes or needs. This library is provided with all faults, and the entire risk of satisfactory quality, performance, accuracy, and effort is with the user. libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are Copyright (c) 1998, 1999 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-0.96, with the following individuals added to the list of Contributing Authors: Tom Lane Glenn Randers-Pehrson Willem van Schaik libpng versions 0.89, June 1996, through 0.96, May 1997, are Copyright (c) 1996, 1997 Andreas Dilger Distributed according to the same disclaimer and license as libpng-0.88, with the following individuals added to the list of Contributing Authors: John Bowler Kevin Bracey Sam Bushell Magnus Holmgren Greg Roelofs Tom Tanner libpng versions 0.5, May 1995, through 0.88, January 1996, are Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc. For the purposes of this copyright and license, "Contributing Authors" is defined as the following set of individuals: Andreas Dilger Dave Martindale Guy Eric Schalnat Paul Schmidt Tim Wegner The PNG Reference Library is supplied "AS IS". The Contributing Authors and Group 42, Inc. disclaim all warranties, expressed or implied, including, without limitation, the warranties of merchantability and of fitness for any purpose. The Contributing Authors and Group 42, Inc. assume no liability for direct, indirect, incidental, special, exemplary, or consequential damages, which may result from the use of the PNG Reference Library, even if advised of the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this source code, or portions hereof, for any purpose, without fee, subject to the following restrictions: 1. The origin of this source code must not be misrepresented. 2. Altered versions must be plainly marked as such and must not be misrepresented as being the original source. 3. This Copyright notice may not be removed or altered from any source or altered source distribution. The Contributing Authors and Group 42, Inc. specifically permit, without fee, and encourage the use of this source code as a component to supporting the PNG file format in commercial products. If you use this source code in a product, acknowledgment is not required but would be appreciated. http://www.libpng.org/pub/png/libpng.html