[Shtoom] about patch dependencies
Zooko O'Whielacronx
zooko at zooko.com
Thu Mar 17 17:24:08 CET 2005
I asked darcs which of the patches I've offered for inclusion in Shtoom
are required for the clean application of the "rewrute of the
microphone" patch. It answered thusly:
I suggest we start at the oldest one. If you, Anthony, will accept the
"move some tests" patch, then do so first, else I will unroll that one
and regenerate the other ones without that one.
etc.
Mon Feb 28 16:19:13 AST 2005 zooko at zooko.com
* rewrite of the microphone -> encoder -> RTPstream channel
* Microphone samples are asynchronously pushed up by the lower
layers rather than being polled by the upper layers. On Mac, the
high-precision realtime thread is use
d to push microphone samples. This fixes a bug with short reads and a
bug with inaccurate polling. On ALSA, there is a LoopingCall in the
ALSA driver that polls at an
appropriate interval.
* The encoder base class has a buffer to store up the appropriate
bytes of microphone data to make up a media frame. This buffer gets
flushed when the audio device c
loses or reopens.
* The audio device gets closed and reopened during important state
transitions, namely call start and call end. This fixes the "That
jerk!" bug, in which you could s
ay "I have to call that jerk!" immediately before a call connected and
then the jerk in question would hear you say it when he answered.
* Remove some extremely detailed diags that measured the number of
packets sent per second and the number of packets received per second.
Those diags have served wel
l and are now retired.
* The Mac audio loopback test is rewritten, and a bug involving
closing the loopback test versus closing a phone call is fixed.
* The discovery/selection of the appropriate audio device is done
before the construction of the Phone object. This makes the other
platforms' initialization process
parallel to the Mac initialization process, and also I prefer this
approach. (The other approach is that you construct the Phone object
and then it discovers/selects t
he audio device itself.)
Mon Feb 28 12:37:54 AST 2005 zooko at zooko.com
* fix bug: closing already closed ALSA device works now
Mon Feb 28 12:18:52 AST 2005 zooko at zooko.com
* replace audiodevice.isClosed() with audiodevice.isOpen()
It sometimes helps to reduce the number of logical nots. Also I
recently found a bug in which someone had reversed the sense of
"alsa.isClosed()".
Fri Feb 25 17:03:25 AST 2005 zooko at zooko.com
* new playout algorithm
Fri Feb 25 16:20:44 AST 2005 zooko at zooko.com
* play ring.wav on incoming call and play ringback.wav on outgoing
ring
Fri Feb 25 14:48:46 AST 2005 zooko at zooko.com
* fix alsa audio to do the "isClosed()" method properly
Fri Feb 25 15:55:58 AST 2005 zooko at zooko.com
* fix bug in which the value of Mac audio isClosed() was reversed
Fri Feb 25 12:03:26 AST 2005 zooko at zooko.com
* move some tests from test/ to livetest/
More information about the Shtoom
mailing list