Hi Pontus,
Pd uses the same portion of memory to store the incoming and outgoing audio data. To get silence you have to set the buffer to zero (0.) after you read in the incoming data. Something like:
while(n--) { temp = *in++; // copy input *out++ = 0.; // set output to silence }
in and out are two different pointers pointing to the same memory position.
hope this helps, Olaf
Pontus Nyman wrote:
Hello.
Maybe you can help me to solve a strange problem. I have made a kind of audio streaming external for pd. It uses the default signal-inlet to record sound from a microphone (or a file or whatever you want). The external encodes, packs and sends the recorded audio over network (UDP/IP).
At the same time it recieves recorded audio from the network. This audio data is decoded and enqueued in a playout buffer and finally put out to different signal-outlets.
The strange thing is that I can hear my own recorded audio and I can't understand how that is possible. The recorded audio goes direct to an outgoing buffer (written by me) and from there to the network. I never put it out to any of the outlets. It doesn't come from the playout buffer either. Therefore, I now suspect that I have misunderstood something about pd:s own buffers.
I don't want to hear my own recorded audio. Does anyone know what is wrong and what to do about it?
Thanks.
Pontus
PD-dev mailing list PD-dev@iem.at http://iem.at/cgi-bin/mailman/listinfo/pd-dev