summaryrefslogtreecommitdiffstats
path: root/firmware
diff options
context:
space:
mode:
authorLinus Nielsen Feltzing <linus@haxx.se>2003-04-15 08:16:27 +0000
committerLinus Nielsen Feltzing <linus@haxx.se>2003-04-15 08:16:27 +0000
commit1cc6d829a1a465e5c797c7533864dc7e015dbe7d (patch)
treefb09072df218f826c261c8735dbc6d2f90961a70 /firmware
parent631b8d3bb8af7d3abf86d658054f6f88f78173a2 (diff)
downloadrockbox-1cc6d829a1a465e5c797c7533864dc7e015dbe7d.tar.gz
rockbox-1cc6d829a1a465e5c797c7533864dc7e015dbe7d.zip
Safer low water mark when recording
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3557 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r--firmware/export/mpeg.h1
-rw-r--r--firmware/mpeg.c5
2 files changed, 4 insertions, 2 deletions
diff --git a/firmware/export/mpeg.h b/firmware/export/mpeg.h
index 6b44363f8f..e971aaac33 100644
--- a/firmware/export/mpeg.h
+++ b/firmware/export/mpeg.h
@@ -26,6 +26,7 @@
wouldn't be able to see the difference between
an empty buffer and a full one. */
#define MPEG_LOW_WATER 0x60000
+#define MPEG_RECORDING_LOW_WATER 0x80000
#define MPEG_LOW_WATER_CHUNKSIZE 0x40000
#define MPEG_LOW_WATER_SWAP_CHUNKSIZE 0x10000
#define MPEG_PLAY_PENDING_THRESHOLD 0x10000
diff --git a/firmware/mpeg.c b/firmware/mpeg.c
index 30530ed85b..85f9c72a25 100644
--- a/firmware/mpeg.c
+++ b/firmware/mpeg.c
@@ -854,7 +854,7 @@ static void dma_tick(void)
if(num_bytes < 0)
num_bytes += mp3buflen;
- if(mp3buflen - num_bytes < MPEG_LOW_WATER && !saving)
+ if(mp3buflen - num_bytes < MPEG_RECORDING_LOW_WATER && !saving)
{
saving = true;
queue_post(&mpeg_queue, MPEG_SAVE_DATA, 0);
@@ -1940,7 +1940,8 @@ static void mpeg_thread(void)
or if we should stop recording */
if(amount_to_save)
{
- if(mp3buflen - amount_to_save < MPEG_LOW_WATER ||
+ if(mp3buflen -
+ amount_to_save < MPEG_RECORDING_LOW_WATER ||
stop_pending)
{
int rc;