Hi.

It look more like a byteorder (big endian versus little endian) problem to me. But the effect is pretty much the same. Look at this:
Packed 4 pixels/Byte:

AABB CCDD
Decode on empeg:
00AA 00BB 00CC 00DD
Decode on PC (without reversing byteorder)
00CC 00DD 00AA 00BB
If you reverse the byte order on the PC, or swap the nibbles (hi/low 4 bit) in the packed byte, you will get the correct result.

cu,
sven
_________________________
proud owner of MkII 40GB & MkIIa 60GB both lit by God and HiJacked by Lord