blob: 95c20ad04b7ef82f6b35ff07400192582e280fc2 [file] [log] [blame]
Ashish Jain1221b522016-03-30 15:09:20 +05301# Global configuration section:
2# - lists input and output devices always present on the device
3# as well as the output device selected by default.
4# Devices are designated by a string that corresponds to the enum in audio.h
5# - defines whether the speaker output path uses DRC
6# "TRUE" means DRC is enabled, "FALSE" or omission means DRC isn't used.
7global_configuration {
8 attached_output_devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_TELEPHONY_TX
9 default_output_device AUDIO_DEVICE_OUT_SPEAKER
10 attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_REMOTE_SUBMIX|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_TELEPHONY_RX
11
12 speaker_drc_enabled TRUE
13}
14
15# audio hardware module section: contains descriptors for all audio hw modules present on the
16# device. Each hw module node is named after the corresponding hw module library base name.
17# For instance, "primary" corresponds to audio.primary.<device>.so.
18# The "primary" module is mandatory and must include at least one output with
19# AUDIO_OUTPUT_FLAG_PRIMARY flag.
20# Each module descriptor contains one or more output profile descriptors and zero or more
21# input profile descriptors. Each profile lists all the parameters supported by a given output
22# or input stream category.
23# The "channel_masks", "formats", "devices" and "flags" are specified using strings corresponding
24# to enums in audio.h and audio_policy.h. They are concatenated by use of "|" without space or "\n".
25
26audio_hw_modules {
27 primary {
28 outputs {
29 primary {
30 sampling_rates 44100|48000
31 channel_masks AUDIO_CHANNEL_OUT_STEREO
32 formats AUDIO_FORMAT_PCM_16_BIT
33 devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_FM
34 flags AUDIO_OUTPUT_FLAG_PRIMARY|AUDIO_OUTPUT_FLAG_FAST
35 }
36 raw {
37 sampling_rates 48000
38 channel_masks AUDIO_CHANNEL_OUT_STEREO
39 formats AUDIO_FORMAT_PCM_16_BIT
40 devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
41 flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_RAW
42 }
43 deep_buffer {
44 sampling_rates 44100|48000
45 channel_masks AUDIO_CHANNEL_OUT_STEREO
46 formats AUDIO_FORMAT_PCM_16_BIT
47 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
48 flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER
49 }
Ashish Jain1221b522016-03-30 15:09:20 +053050 direct_pcm {
51 sampling_rates 8000|11025|16000|22050|32000|44100|48000|64000|88200|96000|176400|192000
52 channel_masks AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_2POINT1|AUDIO_CHANNEL_OUT_QUAD|AUDIO_CHANNEL_OUT_PENTA|AUDIO_CHANNEL_OUT_5POINT1|AUDIO_CHANNEL_OUT_6POINT1|AUDIO_CHANNEL_OUT_7POINT1
Ashish Jain5f8ebf12016-05-11 19:14:59 +053053 formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT
Ashish Jain1221b522016-03-30 15:09:20 +053054 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_AUX_DIGITAL
Dhananjay Kumarac341582017-02-23 23:42:25 +053055 flags AUDIO_OUTPUT_FLAG_DIRECT
Ashish Jain1221b522016-03-30 15:09:20 +053056 }
57 compress_offload {
58 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000
59 channel_masks AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_2POINT1|AUDIO_CHANNEL_OUT_QUAD|AUDIO_CHANNEL_OUT_PENTA|AUDIO_CHANNEL_OUT_5POINT1|AUDIO_CHANNEL_OUT_6POINT1|AUDIO_CHANNEL_OUT_7POINT1
Ashish Jain5f8ebf12016-05-11 19:14:59 +053060 formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AC3|AUDIO_FORMAT_E_AC3|AUDIO_FORMAT_FLAC|AUDIO_FORMAT_ALAC|AUDIO_FORMAT_APE|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_WMA|AUDIO_FORMAT_WMA_PRO|AUDIO_FORMAT_VORBIS|AUDIO_FORMAT_AAC_ADTS_LC|AUDIO_FORMAT_AAC_ADTS_HE_V1|AUDIO_FORMAT_AAC_ADTS_HE_V2
Ashish Jain1221b522016-03-30 15:09:20 +053061 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
62 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
63 }
64 incall_music {
65 sampling_rates 8000|16000|48000
66 channel_masks AUDIO_CHANNEL_OUT_MONO
67 formats AUDIO_FORMAT_PCM_16_BIT
68 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO
69 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_INCALL_MUSIC
70 }
71 voice_tx {
72 sampling_rates 8000|16000|48000
73 channel_masks AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_MONO
74 formats AUDIO_FORMAT_PCM_16_BIT
75 devices AUDIO_DEVICE_OUT_TELEPHONY_TX
76 }
77 voip_rx {
78 sampling_rates 8000|16000
79 channel_masks AUDIO_CHANNEL_OUT_MONO
80 formats AUDIO_FORMAT_PCM_16_BIT
81 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE|AUDIO_DEVICE_OUT_ALL_SCO
82 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX
83 }
84 }
85 inputs {
86 primary {
87 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
88 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
89 formats AUDIO_FORMAT_PCM_16_BIT
90 devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL
91 }
92 surround_sound {
93 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
Chaithanya Krishna Bacharaju58f03872016-05-30 11:59:03 +053094 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK|AUDIO_CHANNEL_INDEX_MASK_3|AUDIO_CHANNEL_INDEX_MASK_4|AUDIO_CHANNEL_IN_5POINT1
Ashish Jain1221b522016-03-30 15:09:20 +053095 formats AUDIO_FORMAT_PCM_16_BIT
96 devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC
97 }
Arun Tom Abrahamf888ae82016-12-10 04:51:49 +053098 record_24 {
99 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|96000|192000
100 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK|AUDIO_CHANNEL_INDEX_MASK_3|AUDIO_CHANNEL_INDEX_MASK_4
101 formats AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT|AUDIO_FORMAT_PCM_FLOAT
102 devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_WIRED_HEADSET
103 }
Ashish Jain1221b522016-03-30 15:09:20 +0530104 voice_rx {
105 sampling_rates 8000|16000|48000
106 channel_masks AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_MONO
107 formats AUDIO_FORMAT_PCM_16_BIT
108 devices AUDIO_DEVICE_IN_TELEPHONY_RX
109 }
110 }
111 }
112 a2dp {
113 outputs {
114 a2dp {
115 sampling_rates 44100
116 channel_masks AUDIO_CHANNEL_OUT_STEREO
117 formats AUDIO_FORMAT_PCM_16_BIT
118 devices AUDIO_DEVICE_OUT_ALL_A2DP
119 }
120 }
121 inputs {
122 a2dp {
123 sampling_rates 44100|48000
124 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO
125 formats AUDIO_FORMAT_PCM_16_BIT
126 devices AUDIO_DEVICE_IN_BLUETOOTH_A2DP
127 }
128 }
129 }
130 usb {
131 outputs {
132 usb_accessory {
133 sampling_rates 44100
134 channel_masks AUDIO_CHANNEL_OUT_STEREO
135 formats AUDIO_FORMAT_PCM_16_BIT
136 devices AUDIO_DEVICE_OUT_USB_ACCESSORY
137 }
138 usb_device {
139 sampling_rates dynamic
140 channel_masks dynamic
141 formats dynamic
142 devices AUDIO_DEVICE_OUT_USB_DEVICE
143 }
144 }
145 inputs {
146 usb_device {
147 sampling_rates dynamic
148 channel_masks AUDIO_CHANNEL_IN_STEREO
149 formats AUDIO_FORMAT_PCM_16_BIT
150 devices AUDIO_DEVICE_IN_USB_DEVICE
151 }
152 }
153 }
154 r_submix {
155 outputs {
156 submix {
157 sampling_rates 48000
158 channel_masks AUDIO_CHANNEL_OUT_STEREO
159 formats AUDIO_FORMAT_PCM_16_BIT
160 devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX
161 }
162 }
163 inputs {
164 submix {
165 sampling_rates 48000
166 channel_masks AUDIO_CHANNEL_IN_STEREO
167 formats AUDIO_FORMAT_PCM_16_BIT
168 devices AUDIO_DEVICE_IN_REMOTE_SUBMIX
169 }
170 }
171 }
172}