Hang on a minute... OK... so... does the encoder start streaming out encoded data / the decoder start sending audio to the output system even as their respective inputs are still running partway through the active frame, rather than receiving a whole frame's worth of input and then working on it whilst the next one starts to spool?
With the blocks being 20ms long (and as that's 20ms both of incoming and outgoing audio, which must be at a constant rate, rather than data which can be burst transmitted many times faster, there's no opportunity for shortening it), and the "frame" structure being presumably important for packetising the data with forward/backwards prediction and maybe a header including global gain, etc, I can't see how the overall latency e.g. between someone snapping their fingers right next to a phone mouthpiece, and someone else having that short sharp sound being sent into their ear by a receiver pressed up against it, could be anything less than 40ms. IE 20ms to encode, all whilst the data is incoming, instantaneous postprocessing and transmission, then 20ms to decode with instantaneous output.
With a reasonable encode/decode and transmission delay (say 4ms of post-receipt processing and streaming in/out each end for 20ms of data, on top of anything done during reception - ~48kHz equivalent - and 2ms for transmission delay (circuitry, a few hundred kms of direct and retransmission via towers), then wouldn't that be an end-to-end run of about 50ms?
A 1/20th second delay doesn't sound too heinous - feedback would still be more of a reverb mode than echoing, and if the person you're talking to is any more than about 15 metres away, the sound will still travel faster over the phone network than through the air between you, and it's decidedly less than typical thinking/breath-taking time so it wouldn't cause "satellite delay" type difficulties in conversation. In fact, they could probably get away with 60 to 100ms (120?) before things got a bit iffy... 22.214.171.124 (talk) 09:08, 16 October 2013 (UTC)