ppmtolss16 [ #rrggbb=i ...] [< input.ppm] [> output.rle]
This manual page documents briefly the ppmtolss16 command.
The ppmtolss16 program converts a "raw" PPM file with max 16 colors to a simple RLE-based format:
simple RLE-based format
|unint32 0x1413f3d||magic (littleendian)|
|16 x unint8 r,g,b||color map|
Color map is in 6-bit format (each byte is 0..63)
Then, a sequence of nybbles:
N ... if N is != previous pixel, one pixel of color N, otherwise run sequence follows ...
M ... if M > 0 then run length is M+1, otherwise run sequence is encoded in two nybbles, littleendian, +17
The nybble sequences are on a per-row basis, runs may not extend across rows and odd-nybble rows are zero-padded.
At the start of a row, the "previous pixel" is assumed to be zero.
A summary of options is included below.
Specify that the color #rrggbb (hex) should be assigned index i (decimal).
This program cannot handle comments in the header, nor "plain" ppm format.
This manual page was compiled by dann frazier <email@example.com> for the Debian GNU/Linux system (but may be used by others). Most of the content was written by H. Peter Anvin.