"full duplex" issue
"full duplex" issue
- Subject: "full duplex" issue
- From: Zachary Schneirov <email@hidden>
- Date: Fri, 11 Jul 2003 12:48:45 -0500
To those willing to help:
I'm developing a simple two-way (soon to become n-way) voice
conferencing app with CoreAudio. I'm capturing input via an ioProc
callback and using AudioConverterConvertBuffer to convert from 32-bit
to 16-bit linear PCM audio. I then use the QuickTime SoundConverter API
to convert to MACE 3:1 before streaming the data buffer by buffer (in
2K chunks) over the network. The clients send data to each other via IP
multicast. For two-way communication they send to and receive from two
different multicast addresses. On the receiving end I use the
SoundConverter API and write directly into the sound output buffer.
When I have one app receive and the other send, the latency is almost
nonexistent and the sound is great (well as great as it could be for
MACE 3:1). The problem is when I have each side attempt to send and
receive at the same time; the sound is being sent to both ends, but
it's delayed by about three seconds and there's a loud buzzing noise.
This problem occurs both when I use separate ioProc callbacks and when
I combine the sending and receiving into one callback. My UDP sockets
are nonblocking and hence return right away. The default output and
input device are the same, and I've tested recording and playing
simultaneously from the same ioProc function (by copying the input
buffer into the output buffer). I know CoreAudio should be able to do
this, but I haven't yet found a solution. Does anyone have any
suggestions?
Regards,
Zach
_______________________________________________
coreaudio-api mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/coreaudio-api
Do not post admin requests to the list. They will be ignored.