1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Index: apps/dsp.c
===================================================================
--- apps/dsp.c	(revision 29757)
+++ apps/dsp.c	(working copy)
@@ -1102,6 +1102,12 @@
     memcpy(buf[0], buf[1], count * sizeof (*buf));
 }

+static void channels_process_sound_chan_swap(int count, int32_t *buf[])
+{
+     /* Swap left and right channel */
+    int32_t *sl = buf[1], *sr = buf[0];
+}
+
 #ifndef DSP_HAVE_ASM_SOUND_CHAN_KARAOKE
 static void channels_process_sound_chan_karaoke(int count, int32_t *buf[])
 {
@@ -1126,6 +1132,7 @@
         [SOUND_CHAN_CUSTOM]     = channels_process_sound_chan_custom,
         [SOUND_CHAN_MONO_LEFT]  = channels_process_sound_chan_mono_left,
         [SOUND_CHAN_MONO_RIGHT] = channels_process_sound_chan_mono_right,
+        [SOUND_CHAN_SWAP]       = channels_process_sound_chan_swap,
         [SOUND_CHAN_KARAOKE]    = channels_process_sound_chan_karaoke,
     };

Index: firmware/export/audiohw.h
===================================================================
--- firmware/export/audiohw.h	(revision 29757)
+++ firmware/export/audiohw.h	(working copy)
@@ -337,6 +337,7 @@
     SOUND_CHAN_CUSTOM,
     SOUND_CHAN_MONO_LEFT,
     SOUND_CHAN_MONO_RIGHT,
+    SOUND_CHAN_SWAP,
     SOUND_CHAN_KARAOKE,
     SOUND_CHAN_NUM_MODES,
 };