summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--demo/audio_v2_mic_mutlichan_template.c (renamed from demo/audio_v2_mic_dualchan_template.c)58
-rw-r--r--demo/audio_v2_mic_speaker_multichan_template.c64
-rw-r--r--demo/audio_v2_speaker_multichan_template.c (renamed from demo/audio_v2_speaker_dualchan_template.c)58
3 files changed, 138 insertions, 42 deletions
diff --git a/demo/audio_v2_mic_dualchan_template.c b/demo/audio_v2_mic_mutlichan_template.c
index e6f80804..fbece086 100644
--- a/demo/audio_v2_mic_dualchan_template.c
+++ b/demo/audio_v2_mic_mutlichan_template.c
@@ -18,35 +18,61 @@
#define HALF_WORD_BYTES 2 //2 half word (one channel)
#define SAMPLE_BITS 16 //16 bit per channel
-#define CHANNEL_NUM 2
+#define IN_CHANNEL_NUM 2
-#define AUDIO_IN_PACKET ((uint32_t)((AUDIO_FREQ * HALF_WORD_BYTES * CHANNEL_NUM) / 1000))
+#if IN_CHANNEL_NUM == 1
+#define INPUT_CTRL DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x00000001
+#elif IN_CHANNEL_NUM == 2
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x00000003
+#elif IN_CHANNEL_NUM == 3
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x00000007
+#elif IN_CHANNEL_NUM == 4
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x0000000f
+#elif IN_CHANNEL_NUM == 5
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x0000001f
+#elif IN_CHANNEL_NUM == 6
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x0000003F
+#elif IN_CHANNEL_NUM == 7
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x0000007f
+#elif IN_CHANNEL_NUM == 8
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x000000ff
+#endif
+
+#define AUDIO_IN_PACKET ((uint32_t)((AUDIO_FREQ * HALF_WORD_BYTES * IN_CHANNEL_NUM) / 1000))
#define BMCONTROL (AUDIO_V2_FU_CONTROL_MUTE | AUDIO_V2_FU_CONTROL_VOLUME)
-#define USB_AUDIO_CONFIG_DESC_SIZ (9 + \
- AUDIO_V2_AC_DESCRIPTOR_INIT_LEN + \
- AUDIO_V2_SIZEOF_AC_CLOCK_SOURCE_DESC + \
- AUDIO_V2_SIZEOF_AC_INPUT_TERMINAL_DESC + \
- AUDIO_V2_SIZEOF_AC_FEATURE_UNIT_DESC(CHANNEL_NUM) + \
- AUDIO_V2_SIZEOF_AC_OUTPUT_TERMINAL_DESC + \
+#define USB_AUDIO_CONFIG_DESC_SIZ (9 + \
+ AUDIO_V2_AC_DESCRIPTOR_INIT_LEN + \
+ AUDIO_V2_SIZEOF_AC_CLOCK_SOURCE_DESC + \
+ AUDIO_V2_SIZEOF_AC_INPUT_TERMINAL_DESC + \
+ AUDIO_V2_SIZEOF_AC_FEATURE_UNIT_DESC(IN_CHANNEL_NUM) + \
+ AUDIO_V2_SIZEOF_AC_OUTPUT_TERMINAL_DESC + \
AUDIO_V2_AS_DESCRIPTOR_INIT_LEN)
-#define AUDIO_AC_SIZ (AUDIO_V2_SIZEOF_AC_HEADER_DESC + \
- AUDIO_V2_SIZEOF_AC_CLOCK_SOURCE_DESC + \
- AUDIO_V2_SIZEOF_AC_INPUT_TERMINAL_DESC + \
- AUDIO_V2_SIZEOF_AC_FEATURE_UNIT_DESC(CHANNEL_NUM) + \
+#define AUDIO_AC_SIZ (AUDIO_V2_SIZEOF_AC_HEADER_DESC + \
+ AUDIO_V2_SIZEOF_AC_CLOCK_SOURCE_DESC + \
+ AUDIO_V2_SIZEOF_AC_INPUT_TERMINAL_DESC + \
+ AUDIO_V2_SIZEOF_AC_FEATURE_UNIT_DESC(IN_CHANNEL_NUM) + \
AUDIO_V2_SIZEOF_AC_OUTPUT_TERMINAL_DESC)
const uint8_t audio_descriptor[] = {
USB_DEVICE_DESCRIPTOR_INIT(USB_2_0, 0x00, 0x00, 0x00, USBD_VID, USBD_PID, 0x0001, 0x01),
USB_CONFIG_DESCRIPTOR_INIT(USB_AUDIO_CONFIG_DESC_SIZ, 0x02, 0x01, USB_CONFIG_BUS_POWERED, USBD_MAX_POWER),
AUDIO_V2_AC_DESCRIPTOR_INIT(0x00, 0x02, AUDIO_AC_SIZ, AUDIO_CATEGORY_MICROPHONE, 0x00, 0x00),
- AUDIO_V2_AC_CLOCK_SOURCE_DESCRIPTOR_INIT(0x01, 0x03, 0x07),
- AUDIO_V2_AC_INPUT_TERMINAL_DESCRIPTOR_INIT(0x02, AUDIO_INTERM_MIC, 0x01, CHANNEL_NUM, 0x00000003, 0x0000),
- AUDIO_V2_AC_FEATURE_UNIT_DESCRIPTOR_INIT(0x03, 0x02, DBVAL(BMCONTROL), DBVAL(BMCONTROL)),
+ AUDIO_V2_AC_CLOCK_SOURCE_DESCRIPTOR_INIT(0x01, 0x03, 0x03),
+ AUDIO_V2_AC_INPUT_TERMINAL_DESCRIPTOR_INIT(0x02, AUDIO_INTERM_MIC, 0x01, IN_CHANNEL_NUM, INPUT_CH_ENABLE, 0x0000),
+ AUDIO_V2_AC_FEATURE_UNIT_DESCRIPTOR_INIT(0x03, 0x02, INPUT_CTRL),
AUDIO_V2_AC_OUTPUT_TERMINAL_DESCRIPTOR_INIT(0x04, AUDIO_TERMINAL_STREAMING, 0x03, 0x01, 0x0000),
- AUDIO_V2_AS_DESCRIPTOR_INIT(0x01, 0x04, CHANNEL_NUM, 0x00000003, HALF_WORD_BYTES, SAMPLE_BITS, AUDIO_IN_EP, AUDIO_IN_PACKET, EP_INTERVAL),
+ AUDIO_V2_AS_DESCRIPTOR_INIT(0x01, 0x04, IN_CHANNEL_NUM, INPUT_CH_ENABLE, HALF_WORD_BYTES, SAMPLE_BITS, AUDIO_IN_EP, AUDIO_IN_PACKET, EP_INTERVAL),
///////////////////////////////////////
/// string0 descriptor
///////////////////////////////////////
diff --git a/demo/audio_v2_mic_speaker_multichan_template.c b/demo/audio_v2_mic_speaker_multichan_template.c
index fd71452c..1bb61cfc 100644
--- a/demo/audio_v2_mic_speaker_multichan_template.c
+++ b/demo/audio_v2_mic_speaker_multichan_template.c
@@ -19,16 +19,60 @@
#define HALF_WORD_BYTES 2 //2 half word (one channel)
#define SAMPLE_BITS 16 //16 bit per channel
-#if 1
-#define OUT_CHANNEL_NUM 2
-#define IN_CHANNEL_NUM 2
+#define IN_CHANNEL_NUM 2
+
+#if IN_CHANNEL_NUM == 1
+#define INPUT_CTRL DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x00000001
+#elif IN_CHANNEL_NUM == 2
#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL)
#define INPUT_CH_ENABLE 0x00000003
-#else
-#define OUT_CHANNEL_NUM 2
-#define IN_CHANNEL_NUM 6
+#elif IN_CHANNEL_NUM == 3
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x00000007
+#elif IN_CHANNEL_NUM == 4
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x0000000f
+#elif IN_CHANNEL_NUM == 5
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x0000001f
+#elif IN_CHANNEL_NUM == 6
#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
-#define INPUT_CH_ENABLE 0x0000001F
+#define INPUT_CH_ENABLE 0x0000003F
+#elif IN_CHANNEL_NUM == 7
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x0000007f
+#elif IN_CHANNEL_NUM == 8
+#define INPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define INPUT_CH_ENABLE 0x000000ff
+#endif
+
+#define OUT_CHANNEL_NUM 2
+
+#if OUT_CHANNEL_NUM == 1
+#define OUTPUT_CTRL DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x00000001
+#elif OUT_CHANNEL_NUM == 2
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x00000003
+#elif OUT_CHANNEL_NUM == 3
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x00000007
+#elif OUT_CHANNEL_NUM == 4
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x0000000f
+#elif OUT_CHANNEL_NUM == 5
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x0000001f
+#elif OUT_CHANNEL_NUM == 6
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x0000003F
+#elif OUT_CHANNEL_NUM == 7
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x0000007f
+#elif OUT_CHANNEL_NUM == 8
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x000000ff
#endif
/* AudioFreq * DataSize (2 bytes) * NumChannels */
@@ -65,14 +109,14 @@ uint8_t audio_descriptor[] = {
USB_CONFIG_DESCRIPTOR_INIT(USB_AUDIO_CONFIG_DESC_SIZ, 0x03, 0x01, USB_CONFIG_BUS_POWERED, USBD_MAX_POWER),
AUDIO_V2_AC_DESCRIPTOR_INIT(0x00, 0x03, AUDIO_AC_SIZ, AUDIO_CATEGORY_UNDEF, 0x00, 0x00),
AUDIO_V2_AC_CLOCK_SOURCE_DESCRIPTOR_INIT(0x01, 0x03, 0x03),
- AUDIO_V2_AC_INPUT_TERMINAL_DESCRIPTOR_INIT(0x02, AUDIO_TERMINAL_STREAMING, 0x01, OUT_CHANNEL_NUM, 0x00000003, 0x0000),
- AUDIO_V2_AC_FEATURE_UNIT_DESCRIPTOR_INIT(0x03, 0x02, DBVAL(BMCONTROL), DBVAL(BMCONTROL)),
+ AUDIO_V2_AC_INPUT_TERMINAL_DESCRIPTOR_INIT(0x02, AUDIO_TERMINAL_STREAMING, 0x01, OUT_CHANNEL_NUM, OUTPUT_CH_ENABLE, 0x0000),
+ AUDIO_V2_AC_FEATURE_UNIT_DESCRIPTOR_INIT(0x03, 0x02, OUTPUT_CTRL),
AUDIO_V2_AC_OUTPUT_TERMINAL_DESCRIPTOR_INIT(0x04, AUDIO_OUTTERM_SPEAKER, 0x03, 0x01, 0x0000),
AUDIO_V2_AC_CLOCK_SOURCE_DESCRIPTOR_INIT(0x05, 0x03, 0x03),
AUDIO_V2_AC_INPUT_TERMINAL_DESCRIPTOR_INIT(0x06, AUDIO_INTERM_MIC, 0x05, IN_CHANNEL_NUM, INPUT_CH_ENABLE, 0x0000),
AUDIO_V2_AC_FEATURE_UNIT_DESCRIPTOR_INIT(0x07, 0x06, INPUT_CTRL),
AUDIO_V2_AC_OUTPUT_TERMINAL_DESCRIPTOR_INIT(0x08, AUDIO_TERMINAL_STREAMING, 0x07, 0x05, 0x0000),
- AUDIO_V2_AS_DESCRIPTOR_INIT(0x01, 0x02, OUT_CHANNEL_NUM, 0x00000003, HALF_WORD_BYTES, SAMPLE_BITS, AUDIO_OUT_EP, AUDIO_OUT_PACKET, EP_INTERVAL),
+ AUDIO_V2_AS_DESCRIPTOR_INIT(0x01, 0x02, OUT_CHANNEL_NUM, OUTPUT_CH_ENABLE, HALF_WORD_BYTES, SAMPLE_BITS, AUDIO_OUT_EP, AUDIO_OUT_PACKET, EP_INTERVAL),
AUDIO_V2_AS_DESCRIPTOR_INIT(0x02, 0x08, IN_CHANNEL_NUM, INPUT_CH_ENABLE, HALF_WORD_BYTES, SAMPLE_BITS, AUDIO_IN_EP, AUDIO_IN_PACKET, EP_INTERVAL),
///////////////////////////////////////
/// string0 descriptor
diff --git a/demo/audio_v2_speaker_dualchan_template.c b/demo/audio_v2_speaker_multichan_template.c
index 3b4b8c35..4c831d9a 100644
--- a/demo/audio_v2_speaker_dualchan_template.c
+++ b/demo/audio_v2_speaker_multichan_template.c
@@ -18,35 +18,61 @@
#define HALF_WORD_BYTES 2 //2 half word (one channel)
#define SAMPLE_BITS 16 //16 bit per channel
-#define CHANNEL_NUM 2
+#define OUT_CHANNEL_NUM 2
-#define AUDIO_OUT_PACKET ((uint32_t)((AUDIO_FREQ * HALF_WORD_BYTES * CHANNEL_NUM) / 1000))
+#if OUT_CHANNEL_NUM == 1
+#define OUTPUT_CTRL DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x00000001
+#elif OUT_CHANNEL_NUM == 2
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x00000003
+#elif OUT_CHANNEL_NUM == 3
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x00000007
+#elif OUT_CHANNEL_NUM == 4
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x0000000f
+#elif OUT_CHANNEL_NUM == 5
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x0000001f
+#elif OUT_CHANNEL_NUM == 6
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x0000003F
+#elif OUT_CHANNEL_NUM == 7
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x0000007f
+#elif OUT_CHANNEL_NUM == 8
+#define OUTPUT_CTRL DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL), DBVAL(BMCONTROL)
+#define OUTPUT_CH_ENABLE 0x000000ff
+#endif
+
+#define AUDIO_OUT_PACKET ((uint32_t)((AUDIO_FREQ * HALF_WORD_BYTES * OUT_CHANNEL_NUM) / 1000))
#define BMCONTROL (AUDIO_V2_FU_CONTROL_MUTE | AUDIO_V2_FU_CONTROL_VOLUME)
-#define USB_AUDIO_CONFIG_DESC_SIZ (9 + \
- AUDIO_V2_AC_DESCRIPTOR_INIT_LEN + \
- AUDIO_SIZEOF_AC_CLOCK_SOURCE_DESC + \
- AUDIO_V2_SIZEOF_AC_INPUT_TERMINAL_DESC + \
- AUDIO_V2_SIZEOF_AC_FEATURE_UNIT_DESC(CHANNEL_NUM) + \
- AUDIO_V2_SIZEOF_AC_OUTPUT_TERMINAL_DESC + \
+#define USB_AUDIO_CONFIG_DESC_SIZ (9 + \
+ AUDIO_V2_AC_DESCRIPTOR_INIT_LEN + \
+ AUDIO_V2_SIZEOF_AC_CLOCK_SOURCE_DESC + \
+ AUDIO_V2_SIZEOF_AC_INPUT_TERMINAL_DESC + \
+ AUDIO_V2_SIZEOF_AC_FEATURE_UNIT_DESC(OUT_CHANNEL_NUM) + \
+ AUDIO_V2_SIZEOF_AC_OUTPUT_TERMINAL_DESC + \
AUDIO_V2_AS_DESCRIPTOR_INIT_LEN)
-#define AUDIO_AC_SIZ (AUDIO_V2_SIZEOF_AC_HEADER_DESC + \
- AUDIO_SIZEOF_AC_CLOCK_SOURCE_DESC + \
- AUDIO_V2_SIZEOF_AC_INPUT_TERMINAL_DESC + \
- AUDIO_V2_SIZEOF_AC_FEATURE_UNIT_DESC(CHANNEL_NUM) + \
+#define AUDIO_AC_SIZ (AUDIO_V2_SIZEOF_AC_HEADER_DESC + \
+ AUDIO_V2_SIZEOF_AC_CLOCK_SOURCE_DESC + \
+ AUDIO_V2_SIZEOF_AC_INPUT_TERMINAL_DESC + \
+ AUDIO_V2_SIZEOF_AC_FEATURE_UNIT_DESC(OUT_CHANNEL_NUM) + \
AUDIO_V2_SIZEOF_AC_OUTPUT_TERMINAL_DESC)
const uint8_t audio_descriptor[] = {
USB_DEVICE_DESCRIPTOR_INIT(USB_2_0, 0x00, 0x00, 0x00, USBD_VID, USBD_PID, 0x0001, 0x01),
USB_CONFIG_DESCRIPTOR_INIT(USB_AUDIO_CONFIG_DESC_SIZ, 0x02, 0x01, USB_CONFIG_BUS_POWERED, USBD_MAX_POWER),
AUDIO_V2_AC_DESCRIPTOR_INIT(0x00, 0x02, AUDIO_AC_SIZ, AUDIO_CATEGORY_SPEAKER, 0x00, 0x00),
- AUDIO_V2_AC_CLOCK_SOURCE_DESCRIPTOR_INIT(0x01, 0x03, 0x07),
- AUDIO_V2_AC_INPUT_TERMINAL_DESCRIPTOR_INIT(0x02, AUDIO_TERMINAL_STREAMING, 0x01, CHANNEL_NUM, 0x00000003, 0x0000),
- AUDIO_V2_AC_FEATURE_UNIT_DESCRIPTOR_INIT(0x03, 0x02, DBVAL(BMCONTROL), DBVAL(BMCONTROL)),
+ AUDIO_V2_AC_CLOCK_SOURCE_DESCRIPTOR_INIT(0x01, 0x03, 0x03),
+ AUDIO_V2_AC_INPUT_TERMINAL_DESCRIPTOR_INIT(0x02, AUDIO_TERMINAL_STREAMING, 0x01, OUT_CHANNEL_NUM, OUTPUT_CH_ENABLE, 0x0000),
+ AUDIO_V2_AC_FEATURE_UNIT_DESCRIPTOR_INIT(0x03, 0x02, OUTPUT_CTRL),
AUDIO_V2_AC_OUTPUT_TERMINAL_DESCRIPTOR_INIT(0x04, AUDIO_OUTTERM_SPEAKER, 0x03, 0x01, 0x0000),
- AUDIO_V2_AS_DESCRIPTOR_INIT(0x01, 0x02, CHANNEL_NUM, 0x00000003, HALF_WORD_BYTES, SAMPLE_BITS, AUDIO_OUT_EP, AUDIO_OUT_PACKET, EP_INTERVAL),
+ AUDIO_V2_AS_DESCRIPTOR_INIT(0x01, 0x02, OUT_CHANNEL_NUM, OUTPUT_CH_ENABLE, HALF_WORD_BYTES, SAMPLE_BITS, AUDIO_OUT_EP, AUDIO_OUT_PACKET, EP_INTERVAL),
///////////////////////////////////////
/// string0 descriptor
///////////////////////////////////////