blob: 5b4198ccb5370a5d0034854dfd8a8fa88a1f9d97 [file] [log] [blame]
Amal Paul0cdb3bb2013-03-05 14:14:17 -08001# 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 {
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +05306 attached_output_devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_TELEPHONY_TX
Amal Paul0cdb3bb2013-03-05 14:14:17 -08007 default_output_device AUDIO_DEVICE_OUT_SPEAKER
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +05308 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_FM_RX|AUDIO_DEVICE_IN_FM_RX_A2DP|AUDIO_DEVICE_IN_TELEPHONY_RX
Amal Paul0cdb3bb2013-03-05 14:14:17 -08009}
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 {
Amal Paul0cdb3bb2013-03-05 14:14:17 -080025 primary {
26 sampling_rates 44100|48000
27 channel_masks AUDIO_CHANNEL_OUT_STEREO
28 formats AUDIO_FORMAT_PCM_16_BIT
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +053029 devices AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_FM_TX
Amal Paul0cdb3bb2013-03-05 14:14:17 -080030 flags AUDIO_OUTPUT_FLAG_PRIMARY
31 }
Ravi Kumar Alamandaed0fa9c2013-11-14 04:44:12 -080032 low_latency {
33 sampling_rates 44100|48000
Mingming Yin5be03ff2013-10-07 15:41:11 -070034 channel_masks AUDIO_CHANNEL_OUT_STEREO
35 formats AUDIO_FORMAT_PCM_16_BIT
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +053036 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_FM|AUDIO_DEVICE_OUT_FM_TX
Ravi Kumar Alamandaed0fa9c2013-11-14 04:44:12 -080037 flags AUDIO_OUTPUT_FLAG_FAST
Vicky Sehrawatd54ddaa2013-05-23 15:33:56 -070038 }
Apoorv Raghuvanshi14544f32013-12-12 19:21:09 -080039 multichannel {
40 sampling_rates 44100|48000
41 channel_masks dynamic
42 formats AUDIO_FORMAT_PCM_16_BIT
43 devices AUDIO_DEVICE_OUT_PROXY
44 flags AUDIO_OUTPUT_FLAG_DIRECT
45 }
Subhash Chandra Bose Naripeddye12338f2013-10-02 23:16:26 -070046 compress_offload {
47 sampling_rates 8000|11025|16000|22050|32000|44100|48000
Subhash Chandra Bose Naripeddy211c66b2013-02-08 11:35:07 -080048 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
Pavan Chikkala071df632014-12-10 16:19:07 +053049 formats AUDIO_FORMAT_MP3|AUDIO_FORMAT_AAC_LC|AUDIO_FORMAT_AAC_HE_V1|AUDIO_FORMAT_AAC_HE_V2|AUDIO_FORMAT_AC3|AUDIO_FORMAT_E_AC3
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +053050 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_FM_TX
Subhash Chandra Bose Naripeddye12338f2013-10-02 23:16:26 -070051 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING
52 }
Shiv Maliyappanahalliba0f56e2013-10-25 16:58:26 -070053 incall_music {
54 sampling_rates 8000|16000|48000
55 channel_masks AUDIO_CHANNEL_OUT_MONO
56 formats AUDIO_FORMAT_PCM_16_BIT
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +053057 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO
Shiv Maliyappanahalliba0f56e2013-10-25 16:58:26 -070058 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_INCALL_MUSIC
59 }
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +053060 voice_tx {
61 sampling_rates 8000|16000|48000
62 channel_masks AUDIO_CHANNEL_OUT_STEREO|AUDIO_CHANNEL_OUT_MONO
63 formats AUDIO_FORMAT_PCM_16_BIT
64 devices AUDIO_DEVICE_OUT_TELEPHONY_TX
65 }
Narsinga Rao Chellae1384d42013-11-12 19:16:10 -080066 voip_rx {
67 sampling_rates 8000|16000
68 channel_masks AUDIO_CHANNEL_OUT_MONO
69 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
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +053070 devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_EARPIECE|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO
Narsinga Rao Chellae1384d42013-11-12 19:16:10 -080071 flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_VOIP_RX
72 }
Amal Paul0cdb3bb2013-03-05 14:14:17 -080073 }
74 inputs {
75 primary {
76 sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
Mingming Yin8e69c6e2014-08-19 11:47:21 -070077 channel_masks AUDIO_CHANNEL_IN_5POINT1|AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
Narsinga Rao Chellae1384d42013-11-12 19:16:10 -080078 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
Divya Narayanan Poojary9a60a882014-10-16 11:38:28 +053079 devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_FM_RX|AUDIO_DEVICE_IN_FM_RX_A2DP|AUDIO_DEVICE_IN_VOICE_CALL
Amal Paul0cdb3bb2013-03-05 14:14:17 -080080 }
Mingming Yin5be03ff2013-10-07 15:41:11 -070081 }
82 }
83 a2dp {
84 outputs {
85 a2dp {
86 sampling_rates 44100
87 channel_masks AUDIO_CHANNEL_OUT_STEREO
88 formats AUDIO_FORMAT_PCM_16_BIT
89 devices AUDIO_DEVICE_OUT_ALL_A2DP
90 }
91 }
92 }
93 usb {
94 outputs {
95 usb_accessory {
96 sampling_rates 44100
97 channel_masks AUDIO_CHANNEL_OUT_STEREO
98 formats AUDIO_FORMAT_PCM_16_BIT
99 devices AUDIO_DEVICE_OUT_USB_ACCESSORY
100 }
101 usb_device {
Divya Narayanan Poojary34cb3312014-10-16 10:30:03 +0530102 sampling_rates dynamic
103 channel_masks dynamic
104 formats dynamic
Mingming Yin5be03ff2013-10-07 15:41:11 -0700105 devices AUDIO_DEVICE_OUT_USB_DEVICE
Vicky Sehrawat715c8fd2013-04-02 17:42:31 -0700106 }
Amal Paul0cdb3bb2013-03-05 14:14:17 -0800107 }
Divya Narayanan Poojary34cb3312014-10-16 10:30:03 +0530108 inputs {
109 usb_device {
110 sampling_rates dynamic
111 channel_masks AUDIO_CHANNEL_IN_STEREO
112 formats AUDIO_FORMAT_PCM_16_BIT
113 devices AUDIO_DEVICE_IN_USB_DEVICE
114 }
115 }
Amal Paul0cdb3bb2013-03-05 14:14:17 -0800116 }
117 r_submix {
118 outputs {
119 submix {
Mingming Yin4a538872014-01-16 16:24:26 -0800120 sampling_rates 48000
Amal Paul0cdb3bb2013-03-05 14:14:17 -0800121 channel_masks AUDIO_CHANNEL_OUT_STEREO
122 formats AUDIO_FORMAT_PCM_16_BIT
123 devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX
124 }
125 }
126 inputs {
127 submix {
Mingming Yin4a538872014-01-16 16:24:26 -0800128 sampling_rates 48000
Amal Paul0cdb3bb2013-03-05 14:14:17 -0800129 channel_masks AUDIO_CHANNEL_IN_STEREO
130 formats AUDIO_FORMAT_PCM_16_BIT
131 devices AUDIO_DEVICE_IN_REMOTE_SUBMIX
132 }
133 }
134 }
135}