chiark / gitweb /
More reliable gapless play.
authorRichard Kettlewell <rjk@greenend.org.uk>
Sun, 8 Mar 2009 16:58:32 +0000 (16:58 +0000)
committerRichard Kettlewell <rjk@greenend.org.uk>
Sun, 8 Mar 2009 16:58:32 +0000 (16:58 +0000)
commit888b8031dcbb859ffb8afbfee2c66ef97363141a
tree7328b18325dbb8f495aae7625c64aee7cbee4d01
parent1c95530676f55d612383883ff383e24ecc7dc17d
More reliable gapless play.

The problem is the deactivate/activate calls, which introduce a period
of silence related to the length of time it takes the server to send
an SM_PLAY in response to SM_FINISHED.

The solution is for the speaker to lie to the server, and pretend that
tracks have finished 0.5-1s before they really have.  This requires
mild ugliness scattered through the speaker process to maintain the
illusion, but keeps ugliness out of your ears l-)
server/speaker.c