Marlin Rowley wrote:
All:
I'm getting different floating point values when I use numpy vs. unpack(). frgba = numpy.frombuffer(<string of bytes>, dtype=float32)
buffer = unpack("!f", byte)
frgba[0] != buffer[0] why? This is forcing me use the unpack() function since it's giving me the correct values. What am I doing wrong?

Endianness, perhaps? '!' specifies big-endian data (an alias for '>'). Most likely, you are on a little-endian platform. All of the dtypes in numpy default to the native-endianness unless specified. If you want to read big-endian data using numpy, do this:

  frgba = numpy.frombuffer(<string of bytes>, dtype='>f')

If you have any more problems with numpy, please join us on the numpy mailing list. When reporting problems, please try to provide a small but complete snippet of self-contained code, the output that you got, and explain the output that you expected to get. Thank you.

  http://www.scipy.org/Mailing_Lists

--
Robert Kern

"I have come to believe that the whole world is an enigma, a harmless enigma
 that is made terrible by our own mad attempt to interpret it as though it had
 an underlying truth."
  -- Umberto Eco

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to