blob: eaf896fee6072d801e6422e2e2a074ed3e07c4ef [file] [log] [blame]
Banajit Goswami748497f2016-03-23 10:20:01 -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 }
Naresh Tannirudac705f2016-04-27 16:50:10 +053046 compress_passthrough {
47 sampling_rates dynamic
48 channel_masks dynamic
49 formats dynamic
50 devices AUDIO_DEVICE_OUT_AUX_DIGITAL
51 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
52 }
Banajit Goswami748497f2016-03-23 10:20:01 -070053 multichannel {
54 sampling_rates 8000|11025|16000|22050|32000|44100|48000|64000|88200|96000|128000|176400|192000
55 channel_masks dynamic
56 formats AUDIO_FORMAT_PCM_16_BIT
57 devices AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
58 flags AUDIO_OUTPUT_FLAG_DIRECT
59 }
60 direct_pcm {
61 sampling_rates 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
63 formats AUDIO_FORMAT_PCM_16_BIT
64 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
65 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_DIRECT_PCM
66 }
67 compress_offload {
68 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000
69 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
70 formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_PCM_16_BIT_OFFLOAD|AUDIO_FORMAT_PCM_24_BIT_OFFLOAD|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
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|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY
72 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
73 }
74 incall_music {
75 sampling_rates 8000|16000|48000
76 channel_masks AUDIO_CHANNEL_OUT_MONO
77 formats AUDIO_FORMAT_PCM_16_BIT
78 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
79 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_INCALL_MUSIC
80 }
81 voice_tx {
82 sampling_rates 8000|16000|48000
83 channel_masks AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_MONO
84 formats AUDIO_FORMAT_PCM_16_BIT
85 devices AUDIO_DEVICE_OUT_TELEPHONY_TX
86 }
87 voip_rx {
88 sampling_rates 8000|16000
89 channel_masks AUDIO_CHANNEL_OUT_MONO
90 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
91 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
92 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX
93 }
94 }
95 inputs {
96 primary {
97 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
98 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
99 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
100 devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL
101 }
102 surround_sound {
103 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
104 channel_masks AUDIO_CHANNEL_IN_5POINT1|AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
105 formats AUDIO_FORMAT_PCM_16_BIT
106 devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC
107 }
108 voice_rx {
109 sampling_rates 8000|16000|48000
110 channel_masks AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_MONO
111 formats AUDIO_FORMAT_PCM_16_BIT
112 devices AUDIO_DEVICE_IN_TELEPHONY_RX
113 }
114 }
115 }
116 a2dp {
117 outputs {
118 a2dp {
119 sampling_rates 44100
120 channel_masks AUDIO_CHANNEL_OUT_STEREO
121 formats AUDIO_FORMAT_PCM_16_BIT
122 devices AUDIO_DEVICE_OUT_ALL_A2DP
123 }
124 }
125 inputs {
126 a2dp {
127 sampling_rates 44100|48000
128 channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO
129 formats AUDIO_FORMAT_PCM_16_BIT
130 devices AUDIO_DEVICE_IN_BLUETOOTH_A2DP
131 }
132 }
133 }
134 usb {
135 outputs {
136 usb_accessory {
137 sampling_rates 44100
138 channel_masks AUDIO_CHANNEL_OUT_STEREO
139 formats AUDIO_FORMAT_PCM_16_BIT
140 devices AUDIO_DEVICE_OUT_USB_ACCESSORY
141 }
142 usb_device {
143 sampling_rates dynamic
144 channel_masks dynamic
145 formats dynamic
146 devices AUDIO_DEVICE_OUT_USB_DEVICE
147 }
148 }
149 inputs {
150 usb_device {
151 sampling_rates dynamic
152 channel_masks dynamic
153 formats dynamic
154 devices AUDIO_DEVICE_IN_USB_DEVICE
155 }
156 }
157 }
158 r_submix {
159 outputs {
160 submix {
161 sampling_rates 48000
162 channel_masks AUDIO_CHANNEL_OUT_STEREO
163 formats AUDIO_FORMAT_PCM_16_BIT
164 devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX
165 }
166 }
167 inputs {
168 submix {
169 sampling_rates 48000
170 channel_masks AUDIO_CHANNEL_IN_STEREO
171 formats AUDIO_FORMAT_PCM_16_BIT
172 devices AUDIO_DEVICE_IN_REMOTE_SUBMIX
173 }
174 }
175 }
176}