代码的意思是把AUDIO_DEVICE_LIST_DEF(V)替换为 AUDIO_DEVICE_LIST_UNIQUE_DEF(V) \
V(AUDIO_DEVICE_OUT_AUX_DIGITAL, AUDIO_DEVICE_OUT_HDMI) \
V(AUDIO_DEVICE_OUT_STUB, AUDIO_DEVICE_OUT_DEFAULT) \
V(AUDIO_DEVICE_IN_VOICE_CALL, AUDIO_DEVICE_IN_TELEPHONY_RX) \
V(AUDIO_DEVICE_IN_AUX_DIGITAL, AUDIO_DEVICE_IN_HDMI) \
V(AUDIO_DEVICE_IN_STUB, AUDIO_DEVICE_IN_DEFAULT)
其中#define AUDIO_DEVICE_LIST_UNIQUE_DEF(V) \
V(AUDIO_DEVICE_NONE, 0x0u) \
V(AUDIO_DEVICE_OUT_EARPIECE, 0x1u) \
V(AUDIO_DEVICE_OUT_SPEAKER, 0x2u) \
V(AUDIO_DEVICE_OUT_WIRED_HEADSET, 0x4u) \
V(AUDIO_DEVICE_OUT_WIRED_HEADPHONE, 0x8u) \
V(AUDIO_DEVICE_OUT_BLUETOOTH_SCO, 0x10u) \
V(AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET, 0x20u) \
V(AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT, 0x40u) \
V(AUDIO_DEVICE_OUT_BLUETOOTH_A2DP, 0x80u) \
V(AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES, 0x100u) \
V(AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER, 0x200u) \
V(AUDIO_DEVICE_OUT_HDMI, 0x400u) \
V(AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET, 0x800u) \
V(AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET, 0x1000u) \
V(AUDIO_DEVICE_OUT_USB_ACCESSORY, 0x2000u) \
V(AUDIO_DEVICE_OUT_USB_DEVICE, 0x4000u) \
V(AUDIO_DEVICE_OUT_REMOTE_SUBMIX, 0x8000u) \
V(AUDIO_DEVICE_OUT_TELEPHONY_TX, 0x10000u) \
V(AUDIO_DEVICE_OUT_LINE, 0x20000u) \
V(AUDIO_DEVICE_OUT_HDMI_ARC, 0x40000u) \
V(AUDIO_DEVICE_OUT_HDMI_EARC, 0x40001u) \
V(AUDIO_DEVICE_OUT_SPDIF, 0x80000u) \
V(AUDIO_DEVICE_OUT_FM, 0x100000u) \
V(AUDIO_DEVICE_OUT_AUX_LINE, 0x200000u) \
V(AUDIO_DEVICE_OUT_SPEAKER_SAFE, 0x400000u) \
V(AUDIO_DEVICE_OUT_IP, 0x800000u) \
V(AUDIO_DEVICE_OUT_BUS, 0x1000000u) \
V(AUDIO_DEVICE_OUT_PROXY, 0x2000000u) \
V(AUDIO_DEVICE_OUT_USB_HEADSET, 0x4000000u) \
V(AUDIO_DEVICE_OUT_HEARING_AID, 0x8000000u) \
V(AUDIO_DEVICE_OUT_ECHO_CANCELLER, 0x10000000u) \
V(AUDIO_DEVICE_OUT_BLE_HEADSET, 0x20000000u) \
V(AUDIO_DEVICE_OUT_BLE_SPEAKER, 0x20000001u) \
V(AUDIO_DEVICE_OUT_BLE_BROADCAST, 0x20000002u) \
V(AUDIO_DEVICE_OUT_DEFAULT, AUDIO_DEVICE_BIT_DEFAULT) \
V(AUDIO_DEVICE_IN_COMMUNICATION, AUDIO_DEVICE_BIT_IN | 0x1u) \
V(AUDIO_DEVICE_IN_AMBIENT, AUDIO_DEVICE_BIT_IN | 0x2u) \
V(AUDIO_DEVICE_IN_BUILTIN_MIC, AUDIO_DEVICE_BIT_IN | 0x4u) \
V(AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET, AUDIO_DEVICE_BIT_IN | 0x8u) \
V(AUDIO_DEVICE_IN_WIRED_HEADSET, AUDIO_DEVICE_BIT_IN | 0x10u) \
V(AUDIO_DEVICE_IN_HDMI, AUDIO_DEVICE_BIT_IN | 0x20u) \
V(AUDIO_DEVICE_IN_TELEPHONY_RX, AUDIO_DEVICE_BIT_IN | 0x40u) \
V(AUDIO_DEVICE_IN_BACK_MIC, AUDIO_DEVICE_BIT_IN | 0x80u) \
V(AUDIO_DEVICE_IN_REMOTE_SUBMIX, AUDIO_DEVICE_BIT_IN | 0x100u) \
V(AUDIO_DEVICE_IN_ANLG_DOCK_HEADSET, AUDIO_DEVICE_BIT_IN | 0x200u) \
V(AUDIO_DEVICE_IN_DGTL_DOCK_HEADSET, AUDIO_DEVICE_BIT_IN | 0x400u) \
V(AUDIO_DEVICE_IN_USB_ACCESSORY, AUDIO_DEVICE_BIT_IN | 0x800u) \
V(AUDIO_DEVICE_IN_USB_DEVICE, AUDIO_DEVICE_BIT_IN | 0x1000u) \
V(AUDIO_DEVICE_IN_FM_TUNER, AUDIO_DEVICE_BIT_IN | 0x2000u) \
V(AUDIO_DEVICE_IN_TV_TUNER, AUDIO_DEVICE_BIT_IN | 0x4000u) \
V(AUDIO_DEVICE_IN_LINE, AUDIO_DEVICE_BIT_IN | 0x8000u) \
V(AUDIO_DEVICE_IN_SPDIF, AUDIO_DEVICE_BIT_IN | 0x10000u) \
V(AUDIO_DEVICE_IN_BLUETOOTH_A2DP, AUDIO_DEVICE_BIT_IN | 0x20000u) \
V(AUDIO_DEVICE_IN_LOOPBACK, AUDIO_DEVICE_BIT_IN | 0x40000u) \
V(AUDIO_DEVICE_IN_IP, AUDIO_DEVICE_BIT_IN | 0x80000u) \
V(AUDIO_DEVICE_IN_BUS, AUDIO_DEVICE_BIT_IN | 0x100000u) \
V(AUDIO_DEVICE_IN_PROXY, AUDIO_DEVICE_BIT_IN | 0x1000000u) \
V(AUDIO_DEVICE_IN_USB_HEADSET, AUDIO_DEVICE_BIT_IN | 0x2000000u) \
V(AUDIO_DEVICE_IN_BLUETOOTH_BLE, AUDIO_DEVICE_BIT_IN | 0x4000000u) \
V(AUDIO_DEVICE_IN_HDMI_ARC, AUDIO_DEVICE_BIT_IN | 0x8000000u) \
V(AUDIO_DEVICE_IN_HDMI_EARC, AUDIO_DEVICE_BIT_IN | 0x8000001u) \
V(AUDIO_DEVICE_IN_ECHO_REFERENCE, AUDIO_DEVICE_BIT_IN | 0x10000000u) \
V(AUDIO_DEVICE_IN_BLE_HEADSET, AUDIO_DEVICE_BIT_IN | 0x20000000u) \
V(AUDIO_DEVICE_IN_DEFAULT, AUDIO_DEVICE_BIT_IN | AUDIO_DEVICE_BIT_DEFAULT)
最新发布