[Python-3000] bytearray incompatible with bytes
Pyry Pakkanen
pyry.pakkanen at gmail.com
Fri Aug 29 15:23:33 CEST 2008
Hello list! First post.
I ran in to this problem with ossaudiodev module when trying to copy
the input audio to output:
import ossaudiodev
dev = ossaudiodev.open("rw")
dev.setparameters(ossaudiodev.AFMT_S16_NE,2,44100)
for i in range(1000): #Copy audio from input to output for a few seconds
dev.write(dev.read(1024))
It runs fine in 2.5 but in 3.0b3 it gives the following exception:
Traceback (most recent call last):
File "myscripts/ossthrough.py", line 5, in <module>
dev.write(dev.read(1024))
TypeError: write() argument 1 must be bytes or read-only buffer, not bytearray
This looks like a bug. I thought bytearray is a read-only buffer.
Looking at the ossaudiodev.c source it seems that
PyArg_ParseTuple(args, "y#:write", &cp, &size) doesn't accept
bytearrays.
-Pyry Pakkanen
More information about the Python-3000
mailing list