From ee6b737b651e45b1926e7d343d977480014fdc07 Mon Sep 17 00:00:00 2001 From: William Wilgus Date: Tue, 10 Aug 2021 07:56:33 -0400 Subject: [PATCH] pcm_record.c iAudioM5 FixRed Share a bit of code in order to free up iRam for the iAudio M5 Change-Id: Ief05d2614a203df17821ed32b04f5c75a53ca08b --- apps/recorder/pcm_record.c | 38 +++++++++++++++++++++++--------------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/apps/recorder/pcm_record.c b/apps/recorder/pcm_record.c index 0a6e1b5a51..9b0e779485 100644 --- a/apps/recorder/pcm_record.c +++ b/apps/recorder/pcm_record.c @@ -888,21 +888,6 @@ copy_buffer_mono_lr(void *dst, const void *src, size_t src_size) return dst; } -/* Copy with mono conversion - output 1/2 size of input */ -static void * ICODE_ATTR -copy_buffer_mono_l(void *dst, const void *src, size_t src_size) -{ - int16_t *d = (int16_t*)dst; - int16_t const *s = (int16_t const*)src - 2; - ssize_t copy_size = src_size; - /* mono = L */ - do - *d++ = *(s += 2); - while ((copy_size -= PCM_SAMP_SIZE) > 0); - - return dst; -} - /* Copy with mono conversion - output 1/2 size of input */ static void * ICODE_ATTR copy_buffer_mono_r(void *dst, const void *src, size_t src_size) @@ -918,6 +903,29 @@ copy_buffer_mono_r(void *dst, const void *src, size_t src_size) return dst; } +#if 1 +static void * ICODE_ATTR +copy_buffer_mono_l(void *dst, const void *src, size_t src_size) +{ + return copy_buffer_mono_r(dst, src -1, src_size); +} +#else +/* Copy with mono conversion - output 1/2 size of input */ +static void * ICODE_ATTR +copy_buffer_mono_l(void *dst, const void *src, size_t src_size) +{ + int16_t *d = (int16_t*)dst; + int16_t const *s = (int16_t const*)src - 2; + ssize_t copy_size = src_size; + /* mono = L */ + do + *d++ = *(s += 2); + while ((copy_size -= PCM_SAMP_SIZE) > 0); + + return dst; +} +#endif + /** pcm_rec_* group **/