Run length encoding is a form of lossless compression. Data that repeats
itself is a good candidate for this kind of compression, and it's
often used to compliment more complicated lossless compression schemes.
It's basic operation examines data until it finds repeating bytes,
then it replaces the repeating series with 1 representitive byte and
a special character to indicate this repeats x times.
For instance if it found
"00 00 00 00 F0 F4 54 9F FF FF 45 45 45 45 45"
the
algorithm could compress it to
"00 *3 F0 F4 54 9F FF FF 45 *4",
shaving off 5 bytes,
compressing the data by 34%. Different implementations can vary,
but this is the general
algorithm. In this case the repeating series
is replaced by 1 representitive byte, (00) followed by a
byte containing a special
symbol to indicate that this repeats (*)
and a 4
bit number to say how many
more follow (3).
See also: run-length encoding and rle
for the exact same explanation... I swear I looked for it before making this node. Didn't come up though after searching for 'run length' so there dammit.