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;