summaryrefslogtreecommitdiffstats
path: root/firmware
diff options
context:
space:
mode:
authorMiika Pekkarinen <miipekk@ihme.org>2005-06-14 18:59:34 +0000
committerMiika Pekkarinen <miipekk@ihme.org>2005-06-14 18:59:34 +0000
commit8d5822d6ed2f583db1f0efcc5204de16466d02aa (patch)
tree3d036e4d3b93c72c8af5b2e0be903533b39a6b19 /firmware
parentfe8663c548c980a7e6c8dbee54900f2d6f74ef26 (diff)
downloadrockbox-8d5822d6ed2f583db1f0efcc5204de16466d02aa.tar.gz
rockbox-8d5822d6ed2f583db1f0efcc5204de16466d02aa.zip
Playlist changed are recognized correctly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6711 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/export/pcm_playback.h2
-rw-r--r--firmware/pcm_playback.c7
2 files changed, 5 insertions, 4 deletions
diff --git a/firmware/export/pcm_playback.h b/firmware/export/pcm_playback.h
index 32288d7d91..960641531a 100644
--- a/firmware/export/pcm_playback.h
+++ b/firmware/export/pcm_playback.h
@@ -42,7 +42,7 @@ void pcm_play_set_watermark(int numbytes, void (*callback)(int bytes_left));
void pcm_set_boost_mode(bool state);
bool pcm_is_lowdata(void);
-void pcm_crossfade_start(void);
+bool pcm_crossfade_start(void);
unsigned int audiobuffer_get_latency(void);
bool audiobuffer_insert(char *buf, size_t length);
bool pcm_is_crossfade_enabled(void);
diff --git a/firmware/pcm_playback.c b/firmware/pcm_playback.c
index d1be2a1102..b18238cd3e 100644
--- a/firmware/pcm_playback.c
+++ b/firmware/pcm_playback.c
@@ -229,6 +229,7 @@ void pcm_play_data(const unsigned char* start, int size,
void pcm_play_stop(void)
{
+ pcm_set_boost_mode(false);
if (pcm_playing) {
uda1380_enable_output(false);
pcm_boost(false);
@@ -243,7 +244,6 @@ void pcm_play_stop(void)
pcmbuf_write_index = 0;
next_start = NULL;
next_size = 0;
- pcm_set_boost_mode(false);
}
void pcm_play_pause(bool play)
@@ -391,11 +391,11 @@ bool pcm_is_lowdata(void)
return false;
}
-void pcm_crossfade_start(void)
+bool pcm_crossfade_start(void)
{
//logf("cf:%d", audiobuffer_free / CHUNK_SIZE);
if (audiobuffer_free > CHUNK_SIZE * 4 || !crossfade_enabled) {
- return ;
+ return false;
}
pcm_boost(true);
crossfade_active = true;
@@ -407,6 +407,7 @@ void pcm_crossfade_start(void)
crossfade_pos -= crossfade_amount*2;
if (crossfade_pos < 0)
crossfade_pos = PCMBUF_SIZE + crossfade_pos;
+ return true;
}
static __inline