From: Andrew N. <aln...@st...> - 2003-05-13 06:00:08
|
I have a string representing a sequence of 16-bit audio samples, read in from an AIFF file like this: f = aifc.open("filename.aiff", "r") data = f.readframes(f.getnframes()) I can convert this to a tuple of signed 16-bit integers using the Python standard library "array" module: a = array.array("h", data) This gives samples in the range [-32768, 32767] and everything is fine. However, instead of using module array I want to use Numeric's array function in an equivalent way. I've been trying to do it like this: a = Numeric.array(data, Numeric.Int16) Now, a.itemsize() outputs 2, which seems fine, but when I iterate over the resulting array (using standard a[i] notation), the results indicate that the array is being treated as a sequence of 8-bit, rather than 16-bit, integers. What am I doing wrong here? Thanks in advance. Andrew. |