1# 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_SPEAKER
7  default_output_device AUDIO_DEVICE_OUT_SPEAKER
8  attached_input_devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_REMOTE_SUBMIX
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
27        channel_masks AUDIO_CHANNEL_OUT_STEREO
28        formats AUDIO_FORMAT_PCM_16_BIT
29        devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_ALL_SCO|AUDIO_DEVICE_OUT_AUX_DIGITAL|AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET
30        flags AUDIO_OUTPUT_FLAG_PRIMARY
31      }
32#     deep_buffer {
33#       sampling_rates 44100
34#       channel_masks AUDIO_CHANNEL_OUT_STEREO
35#       formats AUDIO_FORMAT_PCM_16_BIT
36#       devices AUDIO_DEVICE_OUT_SPEAKER|AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE
37#       flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER
38#     }
39      hdmi {
40        sampling_rates 44100|48000
41        channel_masks dynamic
42        formats AUDIO_FORMAT_PCM_16_BIT
43        devices AUDIO_DEVICE_OUT_AUX_DIGITAL
44        flags AUDIO_OUTPUT_FLAG_DIRECT
45      }
46    }
47    inputs {
48      primary {
49        sampling_rates 8000|11025|16000|22050|32000|44100|48000
50        channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
51        formats AUDIO_FORMAT_PCM_16_BIT
52        devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_WIRED_HEADSET
53      }
54    }
55  }
56  a2dp {
57    outputs {
58      a2dp {
59        sampling_rates 44100
60        channel_masks AUDIO_CHANNEL_OUT_STEREO
61        formats AUDIO_FORMAT_PCM_16_BIT
62        devices AUDIO_DEVICE_OUT_ALL_A2DP
63      }
64    }
65  }
66  usb {
67    outputs {
68      usb_accessory {
69        sampling_rates 44100
70        channel_masks AUDIO_CHANNEL_OUT_STEREO
71        formats AUDIO_FORMAT_PCM_16_BIT
72        devices AUDIO_DEVICE_OUT_USB_ACCESSORY
73      }
74      usb_device {
75        sampling_rates dynamic
76        channel_masks dynamic
77        formats dynamic
78        devices AUDIO_DEVICE_OUT_USB_DEVICE
79      }
80    }
81    inputs {
82      usb_device {
83        sampling_rates dynamic
84        channel_masks dynamic
85        formats dynamic
86        devices AUDIO_DEVICE_IN_USB_DEVICE
87      }
88    }
89  }
90  r_submix {
91    outputs {
92      submix {
93        sampling_rates 48000
94        channel_masks AUDIO_CHANNEL_OUT_STEREO
95        formats AUDIO_FORMAT_PCM_16_BIT
96        devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX
97      }
98    }
99    inputs {
100      submix {
101        sampling_rates 48000
102        channel_masks AUDIO_CHANNEL_IN_STEREO
103        formats AUDIO_FORMAT_PCM_16_BIT
104        devices AUDIO_DEVICE_IN_REMOTE_SUBMIX
105      }
106    }
107  }
108}
109