PaletteOptimiser

Annotated README.txt

126:e51a3f1dd413
2015-10-12 Paul Boddie Made the verify-only mode more usable, improving the documentation. simpleimage-shedskin
paul@92 1
Introduction
paul@92 2
============
paul@92 3
paul@92 4
PaletteOptimiser is a tool for converting images to the eight colours
paul@92 5
supported on the 8-bit Acorn microcomputers: black, white, and the primary and
paul@92 6
secondary colours. It then chooses four of these colours per horizontal line
paul@92 7
of each eight-colour image, permitting such images to be displayed in
paul@92 8
four-colour modes with palette switching on a line-by-line basis.
paul@92 9
paul@92 10
Usage
paul@92 11
=====
paul@92 12
paul@92 13
optimiser.py <input filename> <output filename> [ <options> ]
paul@92 14
paul@92 15
Run the program with the --help argument to see a description of the options:
paul@92 16
paul@92 17
optimiser.py --help
paul@92 18
paul@92 19
Dependencies
paul@92 20
============
paul@92 21
paul@92 22
Apart from Python, this software requires the following:
paul@92 23
paul@92 24
Packages                    Release Information
paul@92 25
--------                    -------------------
paul@92 26
paul@92 27
Python Imaging Library      Debian package: python-imaging
paul@92 28
(PIL)                       (Tested with 1.1.7-4+deb7u1)
paul@92 29
                            Source: http://www.effbot.org/zone/pil-index.htm
paul@92 30
paul@92 31
exif-py                     Debian package: python-exif
paul@92 32
                            (Tested with 1.0.8-3)
paul@92 33
                            Source: https://github.com/ianare/exif-py
paul@92 34
paul@92 35
The following optional dependencies apply for compilation with Shedskin:
paul@92 36
paul@92 37
Packages                    Release Information
paul@92 38
--------                    -------------------
paul@92 39
paul@92 40
Shedskin                    Debian package: shedskin
paul@92 41
                            (Tested with 0.9.2-2)
paul@92 42
                            Source: http://code.google.com/p/shedskin/
paul@92 43
paul@92 44
g++                         Debian package: g++
paul@92 45
                            (Tested with 4:4.7.2-1)
paul@92 46
                            Source: https://gcc.gnu.org/
paul@92 47
paul@92 48
make                        Debian package: make
paul@92 49
                            (Tested with 3.81-8.2)
paul@92 50
                            Source: https://www.gnu.org/software/make/
paul@92 51
paul@92 52
Compilation with Shedskin
paul@92 53
=========================
paul@92 54
paul@92 55
Suitable versions of the code (see the simpleimage-shedskin branch below) can
paul@92 56
be compiled with the Shedskin Python-to-C++ compiler for additional
paul@92 57
performance gains. This is done as follows:
paul@92 58
paul@92 59
shedskin -e optimiserlib.py
paul@92 60
make
paul@92 61
paul@92 62
A file called optimiserlib.so should be produced which should then behave just
paul@92 63
like the original Python version, at least when used with the optimiser.py
paul@92 64
program.
paul@92 65
paul@92 66
Repository Branches
paul@92 67
===================
paul@92 68
paul@92 69
The default branch is the original development branch where new techniques
paul@92 70
have been introduced.
paul@92 71
paul@92 72
The simpleimage branch introduces an alternative image class so that the image
paul@92 73
processing routines need not be tightly coupled with the Python Imaging
paul@92 74
Library abstractions.
paul@92 75
paul@92 76
The simpleimage-shedskin branch takes advantage of the simpleimage branch to
paul@92 77
define a separate module that can be compiled using the Shedskin Python-to-C++
paul@92 78
compiler. The resulting compiled module enables an approximate four-fold
paul@92 79
increase in speed.
paul@92 80
paul@92 81
The shedskin branch is an obsolete and not particularly effective attempt to
paul@92 82
try and get an earlier version of the tool to compile using Shedskin.
paul@92 83
paul@92 84
Contact, Copyright and Licence Information
paul@92 85
==========================================
paul@92 86
paul@92 87
See the following Web page for more information about this work:
paul@92 88
paul@92 89
http://hgweb.boddie.org.uk/PaletteOptimiser
paul@92 90
paul@92 91
The author can be contacted at the following e-mail address:
paul@92 92
paul@92 93
paul@boddie.org.uk
paul@92 94
paul@92 95
Copyright and licence information can be found in the docs directory - see
paul@92 96
docs/COPYING.txt and docs/gpl-3.0.txt for more information.