From c650bc7658314cff22410332bf788bb3ddaf55b8 Mon Sep 17 00:00:00 2001 From: UrbanLienert <33683920+UrbanLienert@users.noreply.github.com> Date: Mon, 18 Sep 2023 22:39:10 +0200 Subject: [PATCH] new version fix --- components/squeezelite/output_i2s.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/components/squeezelite/output_i2s.c b/components/squeezelite/output_i2s.c index e1eeac7a..c2345738 100644 --- a/components/squeezelite/output_i2s.c +++ b/components/squeezelite/output_i2s.c @@ -820,13 +820,13 @@ static void IRAM_ATTR spdif_convert(ISAMPLE_T *src, size_t frames, u32_t *dst, s if (lo & 1) hi = ~hi; // i2s library seems to swap the 32bit samples (right, left), so we change the order here - *dst++ = ((u32_t)lo << 16) | hi; if (++cnt > 191) { *dst++ = (vu << 24) | (PREAMBLE_B << 16) | aux; cnt = 0; } else { *dst++ = (vu << 24) | (PREAMBLE_M << 16) | aux; } + *dst++ = ((u32_t)lo << 16) | hi; if (hi & 1) vu = VUCP24I; else vu = VUCP24; @@ -847,8 +847,8 @@ static void IRAM_ATTR spdif_convert(ISAMPLE_T *src, size_t frames, u32_t *dst, s if (aux & 1) lo = ~lo; if (lo & 1) hi = ~hi; - *dst++ = ((u32_t)lo << 16) | hi; *dst++ = (vu << 24) | (PREAMBLE_W << 16) | aux; + *dst++ = ((u32_t)lo << 16) | hi; if (hi & 1) vu = VUCP24I; else vu = VUCP24;