It looks like you are adding the data at the end of the buffer. If you make the following substitution pos = random.randrange(len(v[0].b)-1) then everything seems to work. I'm not sure why this is but jcw might have a pointer. Brian