summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/playback.c5
-rw-r--r--firmware/pcm_playback.c3
2 files changed, 5 insertions, 3 deletions
diff --git a/apps/playback.c b/apps/playback.c
index 1068796..c0b2db9 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -239,6 +239,9 @@ void codec_set_elapsed_callback(unsigned int value)
{
unsigned int latency;
+ if (ci.stop_codec)
+ return ;
+
latency = audiobuffer_get_latency();
if (value < latency) {
@@ -751,7 +754,7 @@ void audio_play_start(int offset)
buf_widx = 0;
codecbufused = 0;
pcm_set_boost_mode(true);
-
+
fill_bytesleft = codecbuflen;
filling = true;
last_peek_offset = 0;
diff --git a/firmware/pcm_playback.c b/firmware/pcm_playback.c
index e91984f..fcbdb35 100644
--- a/firmware/pcm_playback.c
+++ b/firmware/pcm_playback.c
@@ -367,8 +367,7 @@ unsigned int audiobuffer_get_latency(void)
int latency;
/* This has to be done better. */
- latency = (PCMBUF_SIZE - audiobuffer_free - audiobuffer_fillpos
- - CHUNK_SIZE)/4 / (44100/1000);
+ latency = (PCMBUF_SIZE - audiobuffer_free - CHUNK_SIZE)/4 / (44100/1000);
if (latency < 0)
latency = 0;