Skip to content

Commit db882f7

Browse files
committed
Update audio.h
1 parent 8129cfa commit db882f7

File tree

1 file changed

+28
-124
lines changed

1 file changed

+28
-124
lines changed

include/system/audio.h

+28-124
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
/*
22
* Copyright (C) 2011 The Android Open Source Project
3-
* Copyright (c) 2012, Code Aurora Forum. All rights reserved.
43
*
54
* Licensed under the Apache License, Version 2.0 (the "License");
65
* you may not use this file except in compliance with the License.
@@ -47,7 +46,7 @@ typedef enum {
4746
AUDIO_STREAM_ENFORCED_AUDIBLE = 7, /* Sounds that cannot be muted by user and must be routed to speaker */
4847
AUDIO_STREAM_DTMF = 8,
4948
AUDIO_STREAM_TTS = 9,
50-
AUDIO_STREAM_FM = 10,
49+
AUDIO_STREAM_VIDEO_CALL = 10, /* Audio stream to be used for VT-call */
5150

5251
AUDIO_STREAM_CNT,
5352
AUDIO_STREAM_MAX = AUDIO_STREAM_CNT - 1,
@@ -65,22 +64,22 @@ typedef enum {
6564
AUDIO_SOURCE_CAMCORDER = 5,
6665
AUDIO_SOURCE_VOICE_RECOGNITION = 6,
6766
AUDIO_SOURCE_VOICE_COMMUNICATION = 7,
68-
AUDIO_SOURCE_FM_RX = 8,
69-
AUDIO_SOURCE_FM_RX_A2DP = 9,
67+
AUDIO_SOURCE_FM_RADIO_RX = 8,
68+
AUDIO_SOURCE_VIDEO_CALL = 9, /* Audio source to be used for VT-call */
7069

7170
AUDIO_SOURCE_CNT,
7271
AUDIO_SOURCE_MAX = AUDIO_SOURCE_CNT - 1,
7372
} audio_source_t;
7473

75-
#ifdef QCOM_HARDWARE
76-
typedef enum {
77-
QCOM_AUDIO_SOURCE_DEFAULT = 0x100,
78-
QCOM_AUDIO_SOURCE_DIGITAL_BROADCAST_MAIN_AD = 0x101,
79-
QCOM_AUDIO_SOURCE_DIGITAL_BROADCAST_MAIN_ONLY = 0x104,
80-
QCOM_AUDIO_SOURCE_ANALOG_BROADCAST = 0x102,
81-
QCOM_AUDIO_SOURCE_HDMI_IN = 0x103,
82-
} qcom_audio_source_t;
83-
#endif
74+
// AUDIO_INPUT_CLIENT_ID_BASE provide a means to refer to client Id�s not explicitly defined in the enum audio_input_clients
75+
typedef enum audio_input_clients {
76+
AUDIO_INPUT_CLIENT_ID1 = 0x1,
77+
AUDIO_INPUT_CLIENT_ID2 = 0x2,
78+
AUDIO_INPUT_CLIENT_ID3 = 0x3,
79+
AUDIO_INPUT_CLIENT_ID4 = 0x4,
80+
AUDIO_INPUT_CLIENT_PLAYBACK = 0x80000000, // request client of playback type
81+
AUDIO_INPUT_CLIENT_RECORD = 0x80000001 // request client of recording type
82+
} audio_input_clients;
8483

8584
/* special audio session values
8685
* (XXX: should this be living in the audio effects land?)
@@ -164,19 +163,7 @@ typedef enum {
164163
AUDIO_FORMAT_MAT = 0x10000000UL,
165164
AUDIO_FORMAT_DST = 0x11000000UL,
166165
AUDIO_FORMAT_WMA_PRO = 0x12000000UL,
167-
#ifdef QCOM_HARDWARE
168-
AUDIO_FORMAT_EVRC = 0x08000000UL,
169-
AUDIO_FORMAT_QCELP = 0x09000000UL,
170-
AUDIO_FORMAT_AC3 = 0x0a000000UL,
171-
AUDIO_FORMAT_AC3_PLUS = 0x0b000000UL,
172-
AUDIO_FORMAT_DTS = 0x0c000000UL,
173-
AUDIO_FORMAT_WMA = 0x0d000000UL,
174-
AUDIO_FORMAT_WMA_PRO = 0x0e000000UL,
175-
AUDIO_FORMAT_AAC_ADIF = 0x0f000000UL,
176-
AUDIO_FORMAT_EVRCB = 0x10000000UL,
177-
AUDIO_FORMAT_EVRCWB = 0x11000000UL,
178-
AUDIO_FORMAT_EAC3 = 0x12000000UL,
179-
#endif
166+
180167
AUDIO_FORMAT_MAIN_MASK = 0xFF000000UL,
181168
AUDIO_FORMAT_SUB_MASK = 0x00FFFFFFUL,
182169

@@ -223,10 +210,6 @@ typedef enum {
223210
AUDIO_CHANNEL_OUT_FRONT_RIGHT |
224211
AUDIO_CHANNEL_OUT_FRONT_CENTER |
225212
AUDIO_CHANNEL_OUT_BACK_CENTER),
226-
#ifdef QCOM_HARDWARE
227-
AUDIO_CHANNEL_OUT_PENTA = (AUDIO_CHANNEL_OUT_QUAD |
228-
AUDIO_CHANNEL_OUT_FRONT_CENTER),
229-
#endif
230213
AUDIO_CHANNEL_OUT_5POINT1 = (AUDIO_CHANNEL_OUT_FRONT_LEFT |
231214
AUDIO_CHANNEL_OUT_FRONT_RIGHT |
232215
AUDIO_CHANNEL_OUT_FRONT_CENTER |
@@ -276,28 +259,9 @@ typedef enum {
276259
AUDIO_CHANNEL_IN_Z_AXIS = 0x2000,
277260
AUDIO_CHANNEL_IN_VOICE_UPLINK = 0x4000,
278261
AUDIO_CHANNEL_IN_VOICE_DNLINK = 0x8000,
279-
#ifdef QCOM_HARDWARE
280-
AUDIO_CHANNEL_IN_FRONT_LEFT = 0x10000,
281-
AUDIO_CHANNEL_IN_FRONT_RIGHT = 0x20000,
282-
AUDIO_CHANNEL_IN_FRONT_CENTER = 0x40000,
283-
AUDIO_CHANNEL_IN_LOW_FREQUENCY = 0x80000,
284-
AUDIO_CHANNEL_IN_BACK_LEFT = 0x100000,
285-
AUDIO_CHANNEL_IN_BACK_RIGHT = 0x200000,
286-
#endif
287262

288263
AUDIO_CHANNEL_IN_MONO = AUDIO_CHANNEL_IN_FRONT,
289264
AUDIO_CHANNEL_IN_STEREO = (AUDIO_CHANNEL_IN_LEFT | AUDIO_CHANNEL_IN_RIGHT),
290-
#ifdef QCOM_HARDWARE
291-
AUDIO_CHANNEL_IN_VOICE_UPLINK_MONO = (AUDIO_CHANNEL_IN_VOICE_UPLINK | AUDIO_CHANNEL_IN_MONO),
292-
AUDIO_CHANNEL_IN_VOICE_DNLINK_MONO = (AUDIO_CHANNEL_IN_VOICE_DNLINK | AUDIO_CHANNEL_IN_MONO),
293-
AUDIO_CHANNEL_IN_VOICE_CALL_MONO = (AUDIO_CHANNEL_IN_VOICE_UPLINK_MONO | AUDIO_CHANNEL_IN_VOICE_DNLINK_MONO),
294-
AUDIO_CHANNEL_IN_5POINT1 = (AUDIO_CHANNEL_IN_FRONT_LEFT |
295-
AUDIO_CHANNEL_IN_FRONT_RIGHT |
296-
AUDIO_CHANNEL_IN_FRONT_CENTER |
297-
AUDIO_CHANNEL_IN_LOW_FREQUENCY |
298-
AUDIO_CHANNEL_IN_BACK_LEFT |
299-
AUDIO_CHANNEL_IN_BACK_RIGHT),
300-
#endif
301265
AUDIO_CHANNEL_IN_ALL = (AUDIO_CHANNEL_IN_LEFT |
302266
AUDIO_CHANNEL_IN_RIGHT |
303267
AUDIO_CHANNEL_IN_FRONT |
@@ -310,9 +274,6 @@ typedef enum {
310274
AUDIO_CHANNEL_IN_X_AXIS |
311275
AUDIO_CHANNEL_IN_Y_AXIS |
312276
AUDIO_CHANNEL_IN_Z_AXIS |
313-
#ifdef QCOM_HARDWARE
314-
AUDIO_CHANNEL_IN_5POINT1 |
315-
#endif
316277
AUDIO_CHANNEL_IN_VOICE_UPLINK |
317278
AUDIO_CHANNEL_IN_VOICE_DNLINK),
318279
};
@@ -357,14 +318,8 @@ typedef enum {
357318
AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET = 0x1000,
358319
AUDIO_DEVICE_OUT_USB_ACCESSORY = 0x2000,
359320
AUDIO_DEVICE_OUT_USB_DEVICE = 0x4000,
360-
AUDIO_DEVICE_OUT_FM = 0x8000,
361-
AUDIO_DEVICE_OUT_FM_TX = 0x10000,
362-
#ifdef QCOM_HARDWARE
363-
AUDIO_DEVICE_OUT_PROXY = 0x80000,
364-
AUDIO_DEVICE_OUT_DEFAULT = AUDIO_DEVICE_OUT_SPEAKER,
365-
#else
366321
AUDIO_DEVICE_OUT_DEFAULT = 0x8000,
367-
#endif
322+
AUDIO_DEVICE_OUT_FM_TX = 0x40000000,/*Bit used from input devices */
368323
AUDIO_DEVICE_OUT_ALL = (AUDIO_DEVICE_OUT_EARPIECE |
369324
AUDIO_DEVICE_OUT_SPEAKER |
370325
AUDIO_DEVICE_OUT_WIRED_HEADSET |
@@ -380,12 +335,8 @@ typedef enum {
380335
AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET |
381336
AUDIO_DEVICE_OUT_USB_ACCESSORY |
382337
AUDIO_DEVICE_OUT_USB_DEVICE |
383-
AUDIO_DEVICE_OUT_FM |
384-
AUDIO_DEVICE_OUT_FM_TX |
385-
#ifdef QCOM_HARDWARE
386-
AUDIO_DEVICE_OUT_PROXY |
387-
#endif
388-
AUDIO_DEVICE_OUT_DEFAULT),
338+
AUDIO_DEVICE_OUT_DEFAULT |
339+
AUDIO_DEVICE_OUT_FM_TX),
389340
AUDIO_DEVICE_OUT_ALL_A2DP = (AUDIO_DEVICE_OUT_BLUETOOTH_A2DP |
390341
AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES |
391342
AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER),
@@ -396,19 +347,17 @@ typedef enum {
396347
AUDIO_DEVICE_OUT_USB_DEVICE),
397348

398349
/* input devices */
399-
#ifdef QCOM_HARDWARE
400-
AUDIO_DEVICE_IN_COMMUNICATION = 0x100000,
401-
AUDIO_DEVICE_IN_AMBIENT = 0x200000,
402-
AUDIO_DEVICE_IN_BUILTIN_MIC = 0x400000,
403-
AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET = 0x800000,
404-
AUDIO_DEVICE_IN_WIRED_HEADSET = 0x1000000,
405-
AUDIO_DEVICE_IN_AUX_DIGITAL = 0x2000000,
406-
AUDIO_DEVICE_IN_VOICE_CALL = 0x4000000,
407-
AUDIO_DEVICE_IN_BACK_MIC = 0x8000000,
350+
AUDIO_DEVICE_IN_COMMUNICATION = 0x10000,
351+
AUDIO_DEVICE_IN_AMBIENT = 0x20000,
352+
AUDIO_DEVICE_IN_BUILTIN_MIC = 0x40000,
353+
AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET = 0x80000,
354+
AUDIO_DEVICE_IN_WIRED_HEADSET = 0x100000,
355+
AUDIO_DEVICE_IN_AUX_DIGITAL = 0x200000,
356+
AUDIO_DEVICE_IN_VOICE_CALL = 0x400000,
357+
AUDIO_DEVICE_IN_BACK_MIC = 0x800000,
408358
AUDIO_DEVICE_IN_FM_RX = 0x1000000,
409-
AUDIO_DEVICE_IN_FM_RX_A2DP = 0x40000000,
410-
AUDIO_DEVICE_IN_PROXY = 0x80000000,
411-
AUDIO_DEVICE_IN_DEFAULT = AUDIO_DEVICE_IN_BUILTIN_MIC,
359+
/*AUDIO_DEVICE_OUT_FM_TX = 0x40000000,*/ /* Do not use this bit as it has been used in FM_TX Device */
360+
AUDIO_DEVICE_IN_DEFAULT = 0x80000000,
412361

413362
AUDIO_DEVICE_IN_ALL = (AUDIO_DEVICE_IN_COMMUNICATION |
414363
AUDIO_DEVICE_IN_AMBIENT |
@@ -419,31 +368,10 @@ typedef enum {
419368
AUDIO_DEVICE_IN_VOICE_CALL |
420369
AUDIO_DEVICE_IN_BACK_MIC |
421370
AUDIO_DEVICE_IN_FM_RX |
422-
AUDIO_DEVICE_IN_FM_RX_A2DP |
423-
#ifdef QCOM_HARDWARE
424-
AUDIO_DEVICE_IN_PROXY |
425-
#endif
426371
AUDIO_DEVICE_IN_DEFAULT),
427372
AUDIO_DEVICE_IN_ALL_SCO = AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET,
428373
} audio_devices_t;
429374

430-
#ifdef STE_AUDIO
431-
432-
// AUDIO_INPUT_CLIENT_ID_BASE provide a means to refer to client Id´s not
433-
// explicitly defined in the enum audio_input_clients
434-
#define AUDIO_INPUT_CLIENT_ID_BASE AUDIO_INPUT_CLIENT_ID1
435-
436-
// AUDIO_INPUT_CLIENT_ID_BASE provide a means to refer to client Ids not explicitly defined in the enum audio_input_clients
437-
typedef enum audio_input_clients {
438-
AUDIO_INPUT_CLIENT_ID1 = 0x1,
439-
AUDIO_INPUT_CLIENT_ID2 = 0x2,
440-
AUDIO_INPUT_CLIENT_ID3 = 0x3,
441-
AUDIO_INPUT_CLIENT_ID4 = 0x4,
442-
AUDIO_INPUT_CLIENT_PLAYBACK = 0x80000000, // request client of playback type
443-
AUDIO_INPUT_CLIENT_RECORD = 0x80000001 // request client of recording type
444-
} audio_input_clients;
445-
#endif
446-
447375
/* the audio output flags serve two purposes:
448376
* - when an AudioTrack is created they indicate a "wish" to be connected to an
449377
* output stream with attributes corresponding to the specified flags
@@ -464,15 +392,7 @@ typedef enum {
464392
// controls related to voice calls.
465393
AUDIO_OUTPUT_FLAG_FAST = 0x4, // output supports "fast tracks",
466394
// defined elsewhere
467-
AUDIO_OUTPUT_FLAG_DEEP_BUFFER = 0x8,// use deep audio buffers
468-
#ifdef QCOM_HARDWARE
469-
//Qualcomm Flags
470-
AUDIO_OUTPUT_FLAG_LPA = 0x1000, // use LPA
471-
AUDIO_OUTPUT_FLAG_TUNNEL = 0x2000, // use Tunnel
472-
AUDIO_OUTPUT_FLAG_VOIP_RX = 0x4000 // use this flag in combination with DIRECT to
473-
// indicate HAL to activate EC & NS
474-
// path for VOIP calls
475-
#endif
395+
AUDIO_OUTPUT_FLAG_DEEP_BUFFER = 0x8 // use deep audio buffers
476396
} audio_output_flags_t;
477397

478398
static inline bool audio_is_output_device(audio_devices_t device)
@@ -564,18 +484,14 @@ static inline audio_channel_mask_t audio_channel_out_mask_from_count(uint32_t ch
564484
}
565485
}
566486

567-
/* Similar to above, but for input. Currently handles mono and stereo and 5.1 input. */
487+
/* Similar to above, but for input. Currently handles only mono and stereo. */
568488
static inline audio_channel_mask_t audio_channel_in_mask_from_count(uint32_t channel_count)
569489
{
570490
switch (channel_count) {
571491
case 1:
572492
return AUDIO_CHANNEL_IN_MONO;
573493
case 2:
574494
return AUDIO_CHANNEL_IN_STEREO;
575-
#ifdef QCOM_HARDWARE
576-
case 6:
577-
return AUDIO_CHANNEL_IN_5POINT1;
578-
#endif
579495
default:
580496
return 0;
581497
}
@@ -596,18 +512,6 @@ static inline bool audio_is_valid_format(audio_format_t format)
596512
case AUDIO_FORMAT_HE_AAC_V1:
597513
case AUDIO_FORMAT_HE_AAC_V2:
598514
case AUDIO_FORMAT_VORBIS:
599-
#ifdef QCOM_HARDWARE
600-
case AUDIO_FORMAT_QCELP:
601-
case AUDIO_FORMAT_EVRC:
602-
case AUDIO_FORMAT_EVRCB:
603-
case AUDIO_FORMAT_EVRCWB:
604-
case AUDIO_FORMAT_AC3:
605-
case AUDIO_FORMAT_EAC3:
606-
case AUDIO_FORMAT_AAC_ADIF:
607-
case AUDIO_FORMAT_WMA:
608-
case AUDIO_FORMAT_WMA_PRO:
609-
case AUDIO_FORMAT_DTS:
610-
#endif
611515
return true;
612516
default:
613517
return false;

0 commit comments

Comments
 (0)