diff options
| author | Miika Pekkarinen <miipekk@ihme.org> | 2006-08-02 18:35:24 +0000 |
|---|---|---|
| committer | Miika Pekkarinen <miipekk@ihme.org> | 2006-08-02 18:35:24 +0000 |
| commit | f3add928416e9b44a1db8456b49703ca259c0930 (patch) | |
| tree | e095b4292d325cb3a348e8d6dfb701fede0917d5 | |
| parent | d8ac6074184ffc21c4da8c594df72ee42aa23df2 (diff) | |
| download | rockbox-f3add928416e9b44a1db8456b49703ca259c0930.zip rockbox-f3add928416e9b44a1db8456b49703ca259c0930.tar.gz rockbox-f3add928416e9b44a1db8456b49703ca259c0930.tar.bz2 rockbox-f3add928416e9b44a1db8456b49703ca259c0930.tar.xz | |
Adjusted buffer watermarks for better crossfade and playback stability.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10416 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | apps/pcmbuf.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/apps/pcmbuf.c b/apps/pcmbuf.c index 6d4c091..2075fc6 100644 --- a/apps/pcmbuf.c +++ b/apps/pcmbuf.c @@ -36,7 +36,8 @@ #include "audio.h" #include "dsp.h" -#define PCMBUF_WATERMARK (NATIVE_FREQUENCY * 4 * 1) +/* 1.5s low mark */ +#define PCMBUF_WATERMARK (NATIVE_FREQUENCY * 6) /* Structure we can use to queue pcm chunks in memory to be played * by the driver code. */ @@ -298,7 +299,7 @@ bool pcmbuf_crossfade_init(bool manual_skip) } /* Not enough data, or crossfade disabled, flush the old data instead */ - if (LOW_DATA(6) || !pcmbuf_is_crossfade_enabled() || low_latency_mode) + if (LOW_DATA(2) || !pcmbuf_is_crossfade_enabled() || low_latency_mode) { pcmbuf_boost(true); pcmbuf_flush_fillpos(); @@ -973,10 +974,10 @@ void pcmbuf_crossfade_enable(bool on_off) crossfade_enabled = on_off; if (crossfade_enabled) { - /* If crossfading, try to keep the buffer full other than 2 second */ - pcmbuf_set_watermark_bytes(pcmbuf_size - PCMBUF_WATERMARK * 2); + /* If crossfading, try to keep the buffer full other than 1 second */ + pcmbuf_set_watermark_bytes(pcmbuf_size - (NATIVE_FREQUENCY * 4 * 1)); } else { - /* Otherwise, just keep it above 1 second */ + /* Otherwise, just keep it above 2 second */ pcmbuf_set_watermark_bytes(PCMBUF_WATERMARK); } } |