diff --git a/input_tdm.cpp b/input_tdm.cpp index 2b0032ff..c18a594b 100644 --- a/input_tdm.cpp +++ b/input_tdm.cpp @@ -124,8 +124,8 @@ static void memcpy_tdm_rx(uint32_t *dest1, uint32_t *dest2, const uint32_t *src) in1 = *src; in2 = *(src+8); src += 16; - *dest1++ = (in1 >> 16) | (in2 & 0xFFFF0000); - *dest2++ = (in1 << 16) | (in2 & 0x0000FFFF); + *dest1++ = ((in1 >> 16) & 0x0000FFFF) | ((in2 << 0) & 0xFFFF0000); + *dest2++ = ((in1 >> 0) & 0x0000FFFF) | ((in2 << 16) & 0xFFFF0000); } } diff --git a/input_tdm2.cpp b/input_tdm2.cpp index 46a0892a..93d6c59c 100644 --- a/input_tdm2.cpp +++ b/input_tdm2.cpp @@ -98,8 +98,8 @@ static void memcpy_tdm_rx(uint32_t *dest1, uint32_t *dest2, const uint32_t *src) in1 = *src; in2 = *(src+8); src += 16; - *dest1++ = (in1 >> 16) | (in2 & 0xFFFF0000); - *dest2++ = (in1 << 16) | (in2 & 0x0000FFFF); + *dest1++ = ((in1 >> 16) & 0x0000FFFF) | ((in2 << 0) & 0xFFFF0000); + *dest2++ = ((in1 >> 0) & 0x0000FFFF) | ((in2 << 16) & 0xFFFF0000); } }