blob: 4ff9db9b307d5abe3ca545df897c2a86e6f2b32a [file] [log] [blame]
Banajit Goswami8b11ffe2016-04-07 01:56:17 -07001# Global configuration section: lists input and output devices always present on the device
2# as well as the output device selected by default.
3# Devices are designated by a string that corresponds to the enum in audio.h
4
5global_configuration {
6 attached_output_devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_TELEPHONY_TX
7 default_output_device AUDIO_DEVICE_OUT_SPEAKER
8 attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_REMOTE_SUBMIX|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_TELEPHONY_RX|AUDIO_DEVICE_IN_FM_TUNER
9}
10
11# audio hardware module section: contains descriptors for all audio hw modules present on the
12# device. Each hw module node is named after the corresponding hw module library base name.
13# For instance, "primary" corresponds to audio.primary.<device>.so.
14# The "primary" module is mandatory and must include at least one output with
15# AUDIO_OUTPUT_FLAG_PRIMARY flag.
16# Each module descriptor contains one or more output profile descriptors and zero or more
17# input profile descriptors. Each profile lists all the parameters supported by a given output
18# or input stream category.
19# The "channel_masks", "formats", "devices" and "flags" are specified using strings corresponding
20# to enums in audio.h and audio_policy.h. They are concatenated by use of "|" without space or "\n".
21
22audio_hw_modules {
23 primary {
24 outputs {
25 primary {
26 sampling_rates 44100|48000
27 channel_masks AUDIO_CHANNEL_OUT_STEREO
28 formats AUDIO_FORMAT_PCM_16_BIT
29 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
30 flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_PRIMARY
31 }
32 raw {
33 sampling_rates 48000
34 channel_masks AUDIO_CHANNEL_OUT_STEREO
35 formats AUDIO_FORMAT_PCM_16_BIT
36 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
37 flags AUDIO_OUTPUT_FLAG_FAST|AUDIO_OUTPUT_FLAG_RAW
38 }
39 deep_buffer {
40 sampling_rates 44100|48000
41 channel_masks AUDIO_CHANNEL_OUT_STEREO
42 formats AUDIO_FORMAT_PCM_16_BIT
43 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|AUDIO_DEVICE_OUT_FM
44 flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER
45 }
46 multichannel {
47 sampling_rates 8000|11025|16000|22050|32000|44100|48000|64000|88200|96000|128000|176400|192000
48 channel_masks dynamic
49 formats AUDIO_FORMAT_PCM_16_BIT
50 devices AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
51 flags AUDIO_OUTPUT_FLAG_DIRECT
52 }
53 direct_pcm {
Ashish Jain5f8ebf12016-05-11 19:14:59 +053054 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000
Banajit Goswami8b11ffe2016-04-07 01:56:17 -070055 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 +053056 formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT
Banajit Goswami8b11ffe2016-04-07 01:56:17 -070057 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
58 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_DIRECT_PCM
59 }
60 compress_offload {
61 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000
62 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 +053063 formats AUDIO_FORMAT_MP3|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
Banajit Goswami8b11ffe2016-04-07 01:56:17 -070064 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
65 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
66 }
67 incall_music {
68 sampling_rates 8000|16000|48000
69 channel_masks AUDIO_CHANNEL_OUT_MONO
70 formats AUDIO_FORMAT_PCM_16_BIT
71 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
72 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_INCALL_MUSIC
73 }
74 voice_tx {
75 sampling_rates 8000|16000|48000
76 channel_masks AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_MONO
77 formats AUDIO_FORMAT_PCM_16_BIT
78 devices AUDIO_DEVICE_OUT_TELEPHONY_TX
79 }
80 voip_rx {
Shiv Maliyappanahalli5c2c4b92016-05-03 16:09:14 -070081 sampling_rates 8000|16000|32000|48000
Banajit Goswami8b11ffe2016-04-07 01:56:17 -070082 channel_masks AUDIO_CHANNEL_OUT_MONO
83 formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW
84 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
85 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX
86 }
87 }
88 inputs {
89 primary {
90 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
91 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
92 formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_AMR_NB|AUDIO_FORMAT_AMR_WB|AUDIO_FORMAT_QCELP|AUDIO_FORMAT_EVRC|AUDIO_FORMAT_EVRCB|AUDIO_FORMAT_EVRCWB|AUDIO_FORMAT_EVRCNW
93 devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL
94 }
95 surround_sound {
96 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
97 channel_masks AUDIO_CHANNEL_IN_5POINT1|AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
98 formats AUDIO_FORMAT_PCM_16_BIT
99 devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC
100 }
101 voice_rx {
102 sampling_rates 8000|16000|48000
103 channel_masks AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_MONO
104 formats AUDIO_FORMAT_PCM_16_BIT
105 devices AUDIO_DEVICE_IN_TELEPHONY_RX
106 }
107 }
108 }
109 a2dp {
110 outputs {
111 a2dp {
112 sampling_rates 44100
113 channel_masks AUDIO_CHANNEL_OUT_STEREO
114 formats AUDIO_FORMAT_PCM_16_BIT
115 devices AUDIO_DEVICE_OUT_ALL_A2DP
116 }
117 }
118 inputs {
119 a2dp {
120 sampling_rates 44100|48000
121 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO
122 formats AUDIO_FORMAT_PCM_16_BIT
123 devices AUDIO_DEVICE_IN_BLUETOOTH_A2DP
124 }
125 }
126 }
127 usb {
128 outputs {
129 usb_accessory {
130 sampling_rates 44100
131 channel_masks AUDIO_CHANNEL_OUT_STEREO
132 formats AUDIO_FORMAT_PCM_16_BIT
133 devices AUDIO_DEVICE_OUT_USB_ACCESSORY
134 }
135 usb_device {
136 sampling_rates dynamic
137 channel_masks dynamic
138 formats dynamic
139 devices AUDIO_DEVICE_OUT_USB_DEVICE
140 }
141 }
142 inputs {
143 usb_device {
144 sampling_rates dynamic
145 channel_masks dynamic
146 formats dynamic
147 devices AUDIO_DEVICE_IN_USB_DEVICE
148 }
149 }
150 }
151 r_submix {
152 outputs {
153 submix {
154 sampling_rates 48000
155 channel_masks AUDIO_CHANNEL_OUT_STEREO
156 formats AUDIO_FORMAT_PCM_16_BIT
157 devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX
158 }
159 }
160 inputs {
161 submix {
162 sampling_rates 48000
163 channel_masks AUDIO_CHANNEL_IN_STEREO
164 formats AUDIO_FORMAT_PCM_16_BIT
165 devices AUDIO_DEVICE_IN_REMOTE_SUBMIX
166 }
167 }
168 }
169}