OSDN Git Service

Audio V4: Update audio.h to V4.0
[android-x86/system-media.git] / audio / include / system / audio-base.h
1 // This file is autogenerated by hidl-gen
2 // then manualy edited for retrocompatiblity
3 // Source: android.hardware.audio.common@4.0
4 // Root: android.hardware:hardware/interfaces
5
6 #ifndef HIDL_GENERATED_ANDROID_HARDWARE_AUDIO_COMMON_V4_0_EXPORTED_CONSTANTS_H_
7 #define HIDL_GENERATED_ANDROID_HARDWARE_AUDIO_COMMON_V4_0_EXPORTED_CONSTANTS_H_
8
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12
13 enum {
14     AUDIO_IO_HANDLE_NONE = 0,
15     AUDIO_MODULE_HANDLE_NONE = 0,
16     AUDIO_PORT_HANDLE_NONE = 0,
17     AUDIO_PATCH_HANDLE_NONE = 0,
18 };
19
20 typedef enum {
21     AUDIO_STREAM_DEFAULT = -1, // (-1)
22     AUDIO_STREAM_MIN = 0,
23     AUDIO_STREAM_VOICE_CALL = 0,
24     AUDIO_STREAM_SYSTEM = 1,
25     AUDIO_STREAM_RING = 2,
26     AUDIO_STREAM_MUSIC = 3,
27     AUDIO_STREAM_ALARM = 4,
28     AUDIO_STREAM_NOTIFICATION = 5,
29     AUDIO_STREAM_BLUETOOTH_SCO = 6,
30     AUDIO_STREAM_ENFORCED_AUDIBLE = 7,
31     AUDIO_STREAM_DTMF = 8,
32     AUDIO_STREAM_TTS = 9,
33     AUDIO_STREAM_ACCESSIBILITY = 10,
34 #ifndef AUDIO_NO_SYSTEM_DECLARATIONS
35     /** For dynamic policy output mixes. Only used by the audio policy */
36     AUDIO_STREAM_REROUTING = 11,
37     /** For audio flinger tracks volume. Only used by the audioflinger */
38     AUDIO_STREAM_PATCH = 12,
39 #endif // AUDIO_NO_SYSTEM_DECLARATIONS
40 } audio_stream_type_t;
41
42 typedef enum {
43     AUDIO_SOURCE_DEFAULT = 0,
44     AUDIO_SOURCE_MIC = 1,
45     AUDIO_SOURCE_VOICE_UPLINK = 2,
46     AUDIO_SOURCE_VOICE_DOWNLINK = 3,
47     AUDIO_SOURCE_VOICE_CALL = 4,
48     AUDIO_SOURCE_CAMCORDER = 5,
49     AUDIO_SOURCE_VOICE_RECOGNITION = 6,
50     AUDIO_SOURCE_VOICE_COMMUNICATION = 7,
51     AUDIO_SOURCE_REMOTE_SUBMIX = 8,
52     AUDIO_SOURCE_UNPROCESSED = 9,
53     AUDIO_SOURCE_FM_TUNER = 1998,
54 #ifndef AUDIO_NO_SYSTEM_DECLARATIONS
55     /**
56      * A low-priority, preemptible audio source for for background software
57      * hotword detection. Same tuning as VOICE_RECOGNITION.
58      * Used only internally by the framework.
59      */
60     AUDIO_SOURCE_HOTWORD = 1999,
61 #endif // AUDIO_NO_SYSTEM_DECLARATIONS
62 } audio_source_t;
63
64 typedef enum {
65     AUDIO_SESSION_OUTPUT_STAGE = -1, // (-1)
66     AUDIO_SESSION_OUTPUT_MIX = 0,
67     AUDIO_SESSION_ALLOCATE = 0,
68     AUDIO_SESSION_NONE = 0,
69 } audio_session_t;
70
71 typedef enum {
72     AUDIO_FORMAT_INVALID = 4294967295u,
73     AUDIO_FORMAT_DEFAULT = 0u,
74     AUDIO_FORMAT_PCM = 0u,
75     AUDIO_FORMAT_MP3 = 16777216u,
76     AUDIO_FORMAT_AMR_NB = 33554432u,
77     AUDIO_FORMAT_AMR_WB = 50331648u,
78     AUDIO_FORMAT_AAC = 67108864u,
79     AUDIO_FORMAT_HE_AAC_V1 = 83886080u,
80     AUDIO_FORMAT_HE_AAC_V2 = 100663296u,
81     AUDIO_FORMAT_VORBIS = 117440512u,
82     AUDIO_FORMAT_OPUS = 134217728u,
83     AUDIO_FORMAT_AC3 = 150994944u,
84     AUDIO_FORMAT_E_AC3 = 167772160u,
85     AUDIO_FORMAT_DTS = 184549376u,
86     AUDIO_FORMAT_DTS_HD = 201326592u,
87     AUDIO_FORMAT_IEC61937 = 218103808u,
88     AUDIO_FORMAT_DOLBY_TRUEHD = 234881024u,
89     AUDIO_FORMAT_EVRC = 268435456u,
90     AUDIO_FORMAT_EVRCB = 285212672u,
91     AUDIO_FORMAT_EVRCWB = 301989888u,
92     AUDIO_FORMAT_EVRCNW = 318767104u,
93     AUDIO_FORMAT_AAC_ADIF = 335544320u,
94     AUDIO_FORMAT_WMA = 352321536u,
95     AUDIO_FORMAT_WMA_PRO = 369098752u,
96     AUDIO_FORMAT_AMR_WB_PLUS = 385875968u,
97     AUDIO_FORMAT_MP2 = 402653184u,
98     AUDIO_FORMAT_QCELP = 419430400u,
99     AUDIO_FORMAT_DSD = 436207616u,
100     AUDIO_FORMAT_FLAC = 452984832u,
101     AUDIO_FORMAT_ALAC = 469762048u,
102     AUDIO_FORMAT_APE = 486539264u,
103     AUDIO_FORMAT_AAC_ADTS = 503316480u,
104     AUDIO_FORMAT_SBC = 520093696u,
105     AUDIO_FORMAT_APTX = 536870912u,
106     AUDIO_FORMAT_APTX_HD = 553648128u,
107     AUDIO_FORMAT_AC4 = 570425344u,
108     AUDIO_FORMAT_LDAC = 587202560u,
109     AUDIO_FORMAT_MAT = 603979776u,
110     AUDIO_FORMAT_MAIN_MASK = 4278190080u,
111     AUDIO_FORMAT_SUB_MASK = 16777215u,
112     AUDIO_FORMAT_PCM_SUB_16_BIT = 1u,
113     AUDIO_FORMAT_PCM_SUB_8_BIT = 2u,
114     AUDIO_FORMAT_PCM_SUB_32_BIT = 3u,
115     AUDIO_FORMAT_PCM_SUB_8_24_BIT = 4u,
116     AUDIO_FORMAT_PCM_SUB_FLOAT = 5u,
117     AUDIO_FORMAT_PCM_SUB_24_BIT_PACKED = 6u,
118     AUDIO_FORMAT_MP3_SUB_NONE = 0u,
119     AUDIO_FORMAT_AMR_SUB_NONE = 0u,
120     AUDIO_FORMAT_AAC_SUB_MAIN = 1u,
121     AUDIO_FORMAT_AAC_SUB_LC = 2u,
122     AUDIO_FORMAT_AAC_SUB_SSR = 4u,
123     AUDIO_FORMAT_AAC_SUB_LTP = 8u,
124     AUDIO_FORMAT_AAC_SUB_HE_V1 = 16u,
125     AUDIO_FORMAT_AAC_SUB_SCALABLE = 32u,
126     AUDIO_FORMAT_AAC_SUB_ERLC = 64u,
127     AUDIO_FORMAT_AAC_SUB_LD = 128u,
128     AUDIO_FORMAT_AAC_SUB_HE_V2 = 256u,
129     AUDIO_FORMAT_AAC_SUB_ELD = 512u,
130     AUDIO_FORMAT_AAC_SUB_XHE = 768u,
131     AUDIO_FORMAT_VORBIS_SUB_NONE = 0u,
132     AUDIO_FORMAT_E_AC3_SUB_JOC = 1u,
133     AUDIO_FORMAT_MAT_SUB_1_0 = 1u,
134     AUDIO_FORMAT_MAT_SUB_2_0 = 2u,
135     AUDIO_FORMAT_MAT_SUB_2_1 = 3u,
136     AUDIO_FORMAT_PCM_16_BIT = 1u, // (PCM | PCM_SUB_16_BIT)
137     AUDIO_FORMAT_PCM_8_BIT = 2u, // (PCM | PCM_SUB_8_BIT)
138     AUDIO_FORMAT_PCM_32_BIT = 3u, // (PCM | PCM_SUB_32_BIT)
139     AUDIO_FORMAT_PCM_8_24_BIT = 4u, // (PCM | PCM_SUB_8_24_BIT)
140     AUDIO_FORMAT_PCM_FLOAT = 5u, // (PCM | PCM_SUB_FLOAT)
141     AUDIO_FORMAT_PCM_24_BIT_PACKED = 6u, // (PCM | PCM_SUB_24_BIT_PACKED)
142     AUDIO_FORMAT_AAC_MAIN = 67108865u, // (AAC | AAC_SUB_MAIN)
143     AUDIO_FORMAT_AAC_LC = 67108866u, // (AAC | AAC_SUB_LC)
144     AUDIO_FORMAT_AAC_SSR = 67108868u, // (AAC | AAC_SUB_SSR)
145     AUDIO_FORMAT_AAC_LTP = 67108872u, // (AAC | AAC_SUB_LTP)
146     AUDIO_FORMAT_AAC_HE_V1 = 67108880u, // (AAC | AAC_SUB_HE_V1)
147     AUDIO_FORMAT_AAC_SCALABLE = 67108896u, // (AAC | AAC_SUB_SCALABLE)
148     AUDIO_FORMAT_AAC_ERLC = 67108928u, // (AAC | AAC_SUB_ERLC)
149     AUDIO_FORMAT_AAC_LD = 67108992u, // (AAC | AAC_SUB_LD)
150     AUDIO_FORMAT_AAC_HE_V2 = 67109120u, // (AAC | AAC_SUB_HE_V2)
151     AUDIO_FORMAT_AAC_ELD = 67109376u, // (AAC | AAC_SUB_ELD)
152     AUDIO_FORMAT_AAC_XHE = 67109632u, // (AAC | AAC_SUB_XHE)
153     AUDIO_FORMAT_AAC_ADTS_MAIN = 503316481u, // (AAC_ADTS | AAC_SUB_MAIN)
154     AUDIO_FORMAT_AAC_ADTS_LC = 503316482u, // (AAC_ADTS | AAC_SUB_LC)
155     AUDIO_FORMAT_AAC_ADTS_SSR = 503316484u, // (AAC_ADTS | AAC_SUB_SSR)
156     AUDIO_FORMAT_AAC_ADTS_LTP = 503316488u, // (AAC_ADTS | AAC_SUB_LTP)
157     AUDIO_FORMAT_AAC_ADTS_HE_V1 = 503316496u, // (AAC_ADTS | AAC_SUB_HE_V1)
158     AUDIO_FORMAT_AAC_ADTS_SCALABLE = 503316512u, // (AAC_ADTS | AAC_SUB_SCALABLE)
159     AUDIO_FORMAT_AAC_ADTS_ERLC = 503316544u, // (AAC_ADTS | AAC_SUB_ERLC)
160     AUDIO_FORMAT_AAC_ADTS_LD = 503316608u, // (AAC_ADTS | AAC_SUB_LD)
161     AUDIO_FORMAT_AAC_ADTS_HE_V2 = 503316736u, // (AAC_ADTS | AAC_SUB_HE_V2)
162     AUDIO_FORMAT_AAC_ADTS_ELD = 503316992u, // (AAC_ADTS | AAC_SUB_ELD)
163     AUDIO_FORMAT_AAC_ADTS_XHE = 503317248u, // (AAC_ADTS | AAC_SUB_XHE)
164     AUDIO_FORMAT_E_AC3_JOC = 167772161u, // (E_AC3 | E_AC3_SUB_JOC)
165     AUDIO_FORMAT_MAT_1_0 = 603979777u, // (MAT | MAT_SUB_1_0)
166     AUDIO_FORMAT_MAT_2_0 = 603979778u, // (MAT | MAT_SUB_2_0)
167     AUDIO_FORMAT_MAT_2_1 = 603979779u, // (MAT | MAT_SUB_2_1)
168 } audio_format_t;
169
170 enum {
171     FCC_2 = 2,
172     FCC_8 = 8,
173 };
174
175 enum {
176     AUDIO_CHANNEL_REPRESENTATION_POSITION = 0u,
177     AUDIO_CHANNEL_REPRESENTATION_INDEX = 2u,
178     AUDIO_CHANNEL_NONE = 0u,
179     AUDIO_CHANNEL_INVALID = 3221225472u,
180     AUDIO_CHANNEL_OUT_FRONT_LEFT = 1u,
181     AUDIO_CHANNEL_OUT_FRONT_RIGHT = 2u,
182     AUDIO_CHANNEL_OUT_FRONT_CENTER = 4u,
183     AUDIO_CHANNEL_OUT_LOW_FREQUENCY = 8u,
184     AUDIO_CHANNEL_OUT_BACK_LEFT = 16u,
185     AUDIO_CHANNEL_OUT_BACK_RIGHT = 32u,
186     AUDIO_CHANNEL_OUT_FRONT_LEFT_OF_CENTER = 64u,
187     AUDIO_CHANNEL_OUT_FRONT_RIGHT_OF_CENTER = 128u,
188     AUDIO_CHANNEL_OUT_BACK_CENTER = 256u,
189     AUDIO_CHANNEL_OUT_SIDE_LEFT = 512u,
190     AUDIO_CHANNEL_OUT_SIDE_RIGHT = 1024u,
191     AUDIO_CHANNEL_OUT_TOP_CENTER = 2048u,
192     AUDIO_CHANNEL_OUT_TOP_FRONT_LEFT = 4096u,
193     AUDIO_CHANNEL_OUT_TOP_FRONT_CENTER = 8192u,
194     AUDIO_CHANNEL_OUT_TOP_FRONT_RIGHT = 16384u,
195     AUDIO_CHANNEL_OUT_TOP_BACK_LEFT = 32768u,
196     AUDIO_CHANNEL_OUT_TOP_BACK_CENTER = 65536u,
197     AUDIO_CHANNEL_OUT_TOP_BACK_RIGHT = 131072u,
198     AUDIO_CHANNEL_OUT_TOP_CENTER_LEFT = 262144u,
199     AUDIO_CHANNEL_OUT_TOP_CENTER_RIGHT = 524288u,
200     AUDIO_CHANNEL_OUT_MONO = 1u, // OUT_FRONT_LEFT
201     AUDIO_CHANNEL_OUT_STEREO = 3u, // (OUT_FRONT_LEFT | OUT_FRONT_RIGHT)
202     AUDIO_CHANNEL_OUT_2POINT1 = 11u, // ((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_LOW_FREQUENCY)
203     AUDIO_CHANNEL_OUT_2POINT0POINT2 = 786435u, // (((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_TOP_CENTER_LEFT) | OUT_TOP_CENTER_RIGHT)
204     AUDIO_CHANNEL_OUT_2POINT1POINT2 = 786443u, // ((((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_TOP_CENTER_LEFT) | OUT_TOP_CENTER_RIGHT) | OUT_LOW_FREQUENCY)
205     AUDIO_CHANNEL_OUT_3POINT0POINT2 = 786439u, // ((((OUT_FRONT_LEFT | OUT_FRONT_CENTER) | OUT_FRONT_RIGHT) | OUT_TOP_CENTER_LEFT) | OUT_TOP_CENTER_RIGHT)
206     AUDIO_CHANNEL_OUT_3POINT1POINT2 = 786447u, // (((((OUT_FRONT_LEFT | OUT_FRONT_CENTER) | OUT_FRONT_RIGHT) | OUT_TOP_CENTER_LEFT) | OUT_TOP_CENTER_RIGHT) | OUT_LOW_FREQUENCY)
207     AUDIO_CHANNEL_OUT_QUAD = 51u, // (((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_BACK_LEFT) | OUT_BACK_RIGHT)
208     AUDIO_CHANNEL_OUT_QUAD_BACK = 51u, // OUT_QUAD
209     AUDIO_CHANNEL_OUT_QUAD_SIDE = 1539u, // (((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_SIDE_LEFT) | OUT_SIDE_RIGHT)
210     AUDIO_CHANNEL_OUT_SURROUND = 263u, // (((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_FRONT_CENTER) | OUT_BACK_CENTER)
211     AUDIO_CHANNEL_OUT_PENTA = 55u, // (OUT_QUAD | OUT_FRONT_CENTER)
212     AUDIO_CHANNEL_OUT_5POINT1 = 63u, // (((((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_FRONT_CENTER) | OUT_LOW_FREQUENCY) | OUT_BACK_LEFT) | OUT_BACK_RIGHT)
213     AUDIO_CHANNEL_OUT_5POINT1_BACK = 63u, // OUT_5POINT1
214     AUDIO_CHANNEL_OUT_5POINT1_SIDE = 1551u, // (((((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_FRONT_CENTER) | OUT_LOW_FREQUENCY) | OUT_SIDE_LEFT) | OUT_SIDE_RIGHT)
215     AUDIO_CHANNEL_OUT_6POINT1 = 319u, // ((((((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_FRONT_CENTER) | OUT_LOW_FREQUENCY) | OUT_BACK_LEFT) | OUT_BACK_RIGHT) | OUT_BACK_CENTER)
216     AUDIO_CHANNEL_OUT_7POINT1 = 1599u, // (((((((OUT_FRONT_LEFT | OUT_FRONT_RIGHT) | OUT_FRONT_CENTER) | OUT_LOW_FREQUENCY) | OUT_BACK_LEFT) | OUT_BACK_RIGHT) | OUT_SIDE_LEFT) | OUT_SIDE_RIGHT)
217     AUDIO_CHANNEL_IN_LEFT = 4u,
218     AUDIO_CHANNEL_IN_RIGHT = 8u,
219     AUDIO_CHANNEL_IN_FRONT = 16u,
220     AUDIO_CHANNEL_IN_BACK = 32u,
221     AUDIO_CHANNEL_IN_LEFT_PROCESSED = 64u,
222     AUDIO_CHANNEL_IN_RIGHT_PROCESSED = 128u,
223     AUDIO_CHANNEL_IN_FRONT_PROCESSED = 256u,
224     AUDIO_CHANNEL_IN_BACK_PROCESSED = 512u,
225     AUDIO_CHANNEL_IN_PRESSURE = 1024u,
226     AUDIO_CHANNEL_IN_X_AXIS = 2048u,
227     AUDIO_CHANNEL_IN_Y_AXIS = 4096u,
228     AUDIO_CHANNEL_IN_Z_AXIS = 8192u,
229     AUDIO_CHANNEL_IN_BACK_LEFT = 65536u,
230     AUDIO_CHANNEL_IN_BACK_RIGHT = 131072u,
231     AUDIO_CHANNEL_IN_CENTER = 262144u,
232     AUDIO_CHANNEL_IN_LOW_FREQUENCY = 1048576u,
233     AUDIO_CHANNEL_IN_TOP_LEFT = 2097152u,
234     AUDIO_CHANNEL_IN_TOP_RIGHT = 4194304u,
235     AUDIO_CHANNEL_IN_VOICE_UPLINK = 16384u,
236     AUDIO_CHANNEL_IN_VOICE_DNLINK = 32768u,
237     AUDIO_CHANNEL_IN_MONO = 16u, // IN_FRONT
238     AUDIO_CHANNEL_IN_STEREO = 12u, // (IN_LEFT | IN_RIGHT)
239     AUDIO_CHANNEL_IN_FRONT_BACK = 48u, // (IN_FRONT | IN_BACK)
240     AUDIO_CHANNEL_IN_6 = 252u, // (((((IN_LEFT | IN_RIGHT) | IN_FRONT) | IN_BACK) | IN_LEFT_PROCESSED) | IN_RIGHT_PROCESSED)
241     AUDIO_CHANNEL_IN_5POINT1 = 1507340u, // (((((IN_LEFT | IN_CENTER) | IN_RIGHT) | IN_BACK_LEFT) | IN_BACK_RIGHT) | IN_LOW_FREQUENCY)
242     AUDIO_CHANNEL_IN_VOICE_UPLINK_MONO = 16400u, // (IN_VOICE_UPLINK | IN_MONO)
243     AUDIO_CHANNEL_IN_VOICE_DNLINK_MONO = 32784u, // (IN_VOICE_DNLINK | IN_MONO)
244     AUDIO_CHANNEL_IN_VOICE_CALL_MONO = 49168u, // (IN_VOICE_UPLINK_MONO | IN_VOICE_DNLINK_MONO)
245     AUDIO_CHANNEL_COUNT_MAX = 30u,
246     AUDIO_CHANNEL_INDEX_HDR = 2147483648u, // (REPRESENTATION_INDEX << COUNT_MAX)
247     AUDIO_CHANNEL_INDEX_MASK_1 = 2147483649u, // (INDEX_HDR | ((1 << 1) - 1))
248     AUDIO_CHANNEL_INDEX_MASK_2 = 2147483651u, // (INDEX_HDR | ((1 << 2) - 1))
249     AUDIO_CHANNEL_INDEX_MASK_3 = 2147483655u, // (INDEX_HDR | ((1 << 3) - 1))
250     AUDIO_CHANNEL_INDEX_MASK_4 = 2147483663u, // (INDEX_HDR | ((1 << 4) - 1))
251     AUDIO_CHANNEL_INDEX_MASK_5 = 2147483679u, // (INDEX_HDR | ((1 << 5) - 1))
252     AUDIO_CHANNEL_INDEX_MASK_6 = 2147483711u, // (INDEX_HDR | ((1 << 6) - 1))
253     AUDIO_CHANNEL_INDEX_MASK_7 = 2147483775u, // (INDEX_HDR | ((1 << 7) - 1))
254     AUDIO_CHANNEL_INDEX_MASK_8 = 2147483903u, // (INDEX_HDR | ((1 << 8) - 1))
255 };
256
257 typedef enum {
258 #ifndef AUDIO_NO_SYSTEM_DECLARATIONS
259     AUDIO_MODE_INVALID = -2, // (-2)
260     AUDIO_MODE_CURRENT = -1, // (-1)
261 #endif // AUDIO_NO_SYSTEM_DECLARATIONS
262     AUDIO_MODE_NORMAL = 0,
263     AUDIO_MODE_RINGTONE = 1,
264     AUDIO_MODE_IN_CALL = 2,
265     AUDIO_MODE_IN_COMMUNICATION = 3,
266 } audio_mode_t;
267
268 enum {
269     AUDIO_DEVICE_NONE = 0u,
270     AUDIO_DEVICE_BIT_IN = 2147483648u,
271     AUDIO_DEVICE_BIT_DEFAULT = 1073741824u,
272     AUDIO_DEVICE_OUT_EARPIECE = 1u,
273     AUDIO_DEVICE_OUT_SPEAKER = 2u,
274     AUDIO_DEVICE_OUT_WIRED_HEADSET = 4u,
275     AUDIO_DEVICE_OUT_WIRED_HEADPHONE = 8u,
276     AUDIO_DEVICE_OUT_BLUETOOTH_SCO = 16u,
277     AUDIO_DEVICE_OUT_BLUETOOTH_SCO_HEADSET = 32u,
278     AUDIO_DEVICE_OUT_BLUETOOTH_SCO_CARKIT = 64u,
279     AUDIO_DEVICE_OUT_BLUETOOTH_A2DP = 128u,
280     AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES = 256u,
281     AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER = 512u,
282     AUDIO_DEVICE_OUT_AUX_DIGITAL = 1024u,
283     AUDIO_DEVICE_OUT_HDMI = 1024u, // OUT_AUX_DIGITAL
284     AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET = 2048u,
285     AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET = 4096u,
286     AUDIO_DEVICE_OUT_USB_ACCESSORY = 8192u,
287     AUDIO_DEVICE_OUT_USB_DEVICE = 16384u,
288     AUDIO_DEVICE_OUT_REMOTE_SUBMIX = 32768u,
289     AUDIO_DEVICE_OUT_TELEPHONY_TX = 65536u,
290     AUDIO_DEVICE_OUT_LINE = 131072u,
291     AUDIO_DEVICE_OUT_HDMI_ARC = 262144u,
292     AUDIO_DEVICE_OUT_SPDIF = 524288u,
293     AUDIO_DEVICE_OUT_FM = 1048576u,
294     AUDIO_DEVICE_OUT_AUX_LINE = 2097152u,
295     AUDIO_DEVICE_OUT_SPEAKER_SAFE = 4194304u,
296     AUDIO_DEVICE_OUT_IP = 8388608u,
297     AUDIO_DEVICE_OUT_BUS = 16777216u,
298     AUDIO_DEVICE_OUT_PROXY = 33554432u,
299     AUDIO_DEVICE_OUT_USB_HEADSET = 67108864u,
300     AUDIO_DEVICE_OUT_HEARING_AID = 134217728u,
301     AUDIO_DEVICE_OUT_ECHO_CANCELLER = 268435456u,
302     AUDIO_DEVICE_OUT_DEFAULT = 1073741824u, // BIT_DEFAULT
303     AUDIO_DEVICE_IN_COMMUNICATION = 2147483649u, // (BIT_IN | 0x1)
304     AUDIO_DEVICE_IN_AMBIENT = 2147483650u, // (BIT_IN | 0x2)
305     AUDIO_DEVICE_IN_BUILTIN_MIC = 2147483652u, // (BIT_IN | 0x4)
306     AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET = 2147483656u, // (BIT_IN | 0x8)
307     AUDIO_DEVICE_IN_WIRED_HEADSET = 2147483664u, // (BIT_IN | 0x10)
308     AUDIO_DEVICE_IN_AUX_DIGITAL = 2147483680u, // (BIT_IN | 0x20)
309     AUDIO_DEVICE_IN_HDMI = 2147483680u, // IN_AUX_DIGITAL
310     AUDIO_DEVICE_IN_VOICE_CALL = 2147483712u, // (BIT_IN | 0x40)
311     AUDIO_DEVICE_IN_TELEPHONY_RX = 2147483712u, // IN_VOICE_CALL
312     AUDIO_DEVICE_IN_BACK_MIC = 2147483776u, // (BIT_IN | 0x80)
313     AUDIO_DEVICE_IN_REMOTE_SUBMIX = 2147483904u, // (BIT_IN | 0x100)
314     AUDIO_DEVICE_IN_ANLG_DOCK_HEADSET = 2147484160u, // (BIT_IN | 0x200)
315     AUDIO_DEVICE_IN_DGTL_DOCK_HEADSET = 2147484672u, // (BIT_IN | 0x400)
316     AUDIO_DEVICE_IN_USB_ACCESSORY = 2147485696u, // (BIT_IN | 0x800)
317     AUDIO_DEVICE_IN_USB_DEVICE = 2147487744u, // (BIT_IN | 0x1000)
318     AUDIO_DEVICE_IN_FM_TUNER = 2147491840u, // (BIT_IN | 0x2000)
319     AUDIO_DEVICE_IN_TV_TUNER = 2147500032u, // (BIT_IN | 0x4000)
320     AUDIO_DEVICE_IN_LINE = 2147516416u, // (BIT_IN | 0x8000)
321     AUDIO_DEVICE_IN_SPDIF = 2147549184u, // (BIT_IN | 0x10000)
322     AUDIO_DEVICE_IN_BLUETOOTH_A2DP = 2147614720u, // (BIT_IN | 0x20000)
323     AUDIO_DEVICE_IN_LOOPBACK = 2147745792u, // (BIT_IN | 0x40000)
324     AUDIO_DEVICE_IN_IP = 2148007936u, // (BIT_IN | 0x80000)
325     AUDIO_DEVICE_IN_BUS = 2148532224u, // (BIT_IN | 0x100000)
326     AUDIO_DEVICE_IN_PROXY = 2164260864u, // (BIT_IN | 0x1000000)
327     AUDIO_DEVICE_IN_USB_HEADSET = 2181038080u, // (BIT_IN | 0x2000000)
328     AUDIO_DEVICE_IN_BLUETOOTH_BLE = 2214592512u, // (BIT_IN | 0x4000000)
329     AUDIO_DEVICE_IN_DEFAULT = 3221225472u, // (BIT_IN | BIT_DEFAULT)
330 };
331
332 typedef enum {
333     AUDIO_OUTPUT_FLAG_NONE = 0,
334     AUDIO_OUTPUT_FLAG_DIRECT = 1,
335     AUDIO_OUTPUT_FLAG_PRIMARY = 2,
336     AUDIO_OUTPUT_FLAG_FAST = 4,
337     AUDIO_OUTPUT_FLAG_DEEP_BUFFER = 8,
338     AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD = 16,
339     AUDIO_OUTPUT_FLAG_NON_BLOCKING = 32,
340     AUDIO_OUTPUT_FLAG_HW_AV_SYNC = 64,
341     AUDIO_OUTPUT_FLAG_TTS = 128,
342     AUDIO_OUTPUT_FLAG_RAW = 256,
343     AUDIO_OUTPUT_FLAG_SYNC = 512,
344     AUDIO_OUTPUT_FLAG_IEC958_NONAUDIO = 1024,
345     AUDIO_OUTPUT_FLAG_DIRECT_PCM = 8192,
346     AUDIO_OUTPUT_FLAG_MMAP_NOIRQ = 16384,
347     AUDIO_OUTPUT_FLAG_VOIP_RX = 32768,
348     AUDIO_OUTPUT_FLAG_INCALL_MUSIC = 65536,
349 } audio_output_flags_t;
350
351 typedef enum {
352     AUDIO_INPUT_FLAG_NONE = 0,
353     AUDIO_INPUT_FLAG_FAST = 1,
354     AUDIO_INPUT_FLAG_HW_HOTWORD = 2,
355     AUDIO_INPUT_FLAG_RAW = 4,
356     AUDIO_INPUT_FLAG_SYNC = 8,
357     AUDIO_INPUT_FLAG_MMAP_NOIRQ = 16,
358     AUDIO_INPUT_FLAG_VOIP_TX = 32,
359     AUDIO_INPUT_FLAG_HW_AV_SYNC = 64,
360 } audio_input_flags_t;
361
362 typedef enum {
363     AUDIO_USAGE_UNKNOWN = 0,
364     AUDIO_USAGE_MEDIA = 1,
365     AUDIO_USAGE_VOICE_COMMUNICATION = 2,
366     AUDIO_USAGE_VOICE_COMMUNICATION_SIGNALLING = 3,
367     AUDIO_USAGE_ALARM = 4,
368     AUDIO_USAGE_NOTIFICATION = 5,
369     AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE = 6,
370 #ifndef AUDIO_NO_SYSTEM_DECLARATIONS
371     AUDIO_USAGE_NOTIFICATION_COMMUNICATION_REQUEST = 7,
372     AUDIO_USAGE_NOTIFICATION_COMMUNICATION_INSTANT = 8,
373     AUDIO_USAGE_NOTIFICATION_COMMUNICATION_DELAYED = 9,
374     AUDIO_USAGE_NOTIFICATION_EVENT = 10,
375 #endif // AUDIO_NO_SYSTEM_DECLARATIONS
376     AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY = 11,
377     AUDIO_USAGE_ASSISTANCE_NAVIGATION_GUIDANCE = 12,
378     AUDIO_USAGE_ASSISTANCE_SONIFICATION = 13,
379     AUDIO_USAGE_GAME = 14,
380     AUDIO_USAGE_VIRTUAL_SOURCE = 15,
381     AUDIO_USAGE_ASSISTANT = 16,
382 } audio_usage_t;
383
384 typedef enum {
385     AUDIO_CONTENT_TYPE_UNKNOWN = 0u,
386     AUDIO_CONTENT_TYPE_SPEECH = 1u,
387     AUDIO_CONTENT_TYPE_MUSIC = 2u,
388     AUDIO_CONTENT_TYPE_MOVIE = 3u,
389     AUDIO_CONTENT_TYPE_SONIFICATION = 4u,
390 } audio_content_type_t;
391
392 enum {
393     AUDIO_GAIN_MODE_JOINT = 1u,
394     AUDIO_GAIN_MODE_CHANNELS = 2u,
395     AUDIO_GAIN_MODE_RAMP = 4u,
396 };
397
398 typedef enum {
399     AUDIO_PORT_ROLE_NONE = 0,
400     AUDIO_PORT_ROLE_SOURCE = 1, // (::android::hardware::audio::common::V4_0::AudioPortRole.NONE implicitly + 1)
401     AUDIO_PORT_ROLE_SINK = 2, // (::android::hardware::audio::common::V4_0::AudioPortRole.SOURCE implicitly + 1)
402 } audio_port_role_t;
403
404 typedef enum {
405     AUDIO_PORT_TYPE_NONE = 0,
406     AUDIO_PORT_TYPE_DEVICE = 1, // (::android::hardware::audio::common::V4_0::AudioPortType.NONE implicitly + 1)
407     AUDIO_PORT_TYPE_MIX = 2, // (::android::hardware::audio::common::V4_0::AudioPortType.DEVICE implicitly + 1)
408     AUDIO_PORT_TYPE_SESSION = 3, // (::android::hardware::audio::common::V4_0::AudioPortType.MIX implicitly + 1)
409 } audio_port_type_t;
410
411 enum {
412     AUDIO_PORT_CONFIG_SAMPLE_RATE = 1u,
413     AUDIO_PORT_CONFIG_CHANNEL_MASK = 2u,
414     AUDIO_PORT_CONFIG_FORMAT = 4u,
415     AUDIO_PORT_CONFIG_GAIN = 8u,
416 };
417
418 typedef enum {
419     AUDIO_LATENCY_LOW = 0,
420     AUDIO_LATENCY_NORMAL = 1, // (::android::hardware::audio::common::V4_0::AudioMixLatencyClass.LOW implicitly + 1)
421 } audio_mix_latency_class_t;
422
423 #ifdef __cplusplus
424 }
425 #endif
426
427 #endif  // HIDL_GENERATED_ANDROID_HARDWARE_AUDIO_COMMON_V4_0_EXPORTED_CONSTANTS_H_