Skip to content

Commit b44be85

Browse files
committedJun 25, 2019
Pulseaudio configs for initial audio support
Leave out DSD format parts due to incompatabilities with pulse-droid audio_policy.conf ----------------- ... dsd_compress_passthrough { sampling_rates 2822400|5644800 channel_masks AUDIO_CHANNEL_OUT_MONO|AUDIO_CHANNEL_OUT_STEREO formats AUDIO_FORMAT_DSD devices AUDIO_DEVICE_OUT_WIRED_HEADSET|AUDIO_DEVICE_OUT_WIRED_HEADPHONE|AUDIO_DEVICE_OUT_LINE flags AUDIO_OUTPUT_FLAG_DIRECT|AUDIO_OUTPUT_FLAG_COMPRESS_OFFLOAD|AUDIO_OUTPUT_FLAG_NON_BLOCKING } ... -----------------
1 parent a4ebb5a commit b44be85

File tree

2 files changed

+142
-0
lines changed

2 files changed

+142
-0
lines changed
 

‎sparse/etc/audio_policy.conf

+141
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
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+
5+
global_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+
22+
audio_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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER
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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER
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|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER
44+
flags AUDIO_OUTPUT_FLAG_DEEP_BUFFER
45+
}
46+
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+
}
53+
direct_pcm {
54+
sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|64000|88200|96000|176400|192000|352800|384000
55+
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
56+
formats AUDIO_FORMAT_PCM_16_BIT|AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT|AUDIO_FORMAT_PCM_32_BIT
57+
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_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER
58+
flags AUDIO_OUTPUT_FLAG_DIRECT
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
63+
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
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_AUX_DIGITAL|AUDIO_DEVICE_OUT_PROXY|AUDIO_DEVICE_OUT_USB_DEVICE|AUDIO_DEVICE_OUT_USB_HEADSET|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES|AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER
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+
voip_rx {
75+
sampling_rates 8000|16000|32000|48000
76+
channel_masks AUDIO_CHANNEL_OUT_MONO
77+
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
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_VOIP_RX
80+
}
81+
}
82+
inputs {
83+
primary {
84+
sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
85+
channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO|AUDIO_CHANNEL_IN_FRONT_BACK
86+
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
87+
devices AUDIO_DEVICE_IN_WIRED_HEADSET|AUDIO_DEVICE_IN_BLUETOOTH_SCO_HEADSET|AUDIO_DEVICE_IN_FM_TUNER|AUDIO_DEVICE_IN_VOICE_CALL|AUDIO_DEVICE_IN_USB_DEVICE|AUDIO_DEVICE_IN_USB_HEADSET
88+
}
89+
surround_sound {
90+
sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000
91+
channel_masks AUDIO_CHANNEL_IN_5POINT1|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_INDEX_MASK_6
92+
formats AUDIO_FORMAT_PCM_16_BIT
93+
devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC
94+
}
95+
record_24 {
96+
sampling_rates 8000|11025|12000|16000|22050|24000|32000|44100|48000|96000|192000
97+
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
98+
formats AUDIO_FORMAT_PCM_24_BIT_PACKED|AUDIO_FORMAT_PCM_8_24_BIT
99+
devices AUDIO_DEVICE_IN_BUILTIN_MIC|AUDIO_DEVICE_IN_BACK_MIC|AUDIO_DEVICE_IN_WIRED_HEADSET
100+
}
101+
}
102+
}
103+
a2dp {
104+
inputs {
105+
a2dp {
106+
sampling_rates 44100|48000
107+
channel_masks AUDIO_CHANNEL_IN_MONO|AUDIO_CHANNEL_IN_STEREO
108+
formats AUDIO_FORMAT_PCM_16_BIT
109+
devices AUDIO_DEVICE_IN_BLUETOOTH_A2DP
110+
}
111+
}
112+
}
113+
usb {
114+
outputs {
115+
usb_accessory {
116+
sampling_rates 44100
117+
channel_masks AUDIO_CHANNEL_OUT_STEREO
118+
formats AUDIO_FORMAT_PCM_16_BIT
119+
devices AUDIO_DEVICE_OUT_USB_ACCESSORY
120+
}
121+
}
122+
}
123+
r_submix {
124+
outputs {
125+
submix {
126+
sampling_rates 48000
127+
channel_masks AUDIO_CHANNEL_OUT_STEREO
128+
formats AUDIO_FORMAT_PCM_16_BIT
129+
devices AUDIO_DEVICE_OUT_REMOTE_SUBMIX
130+
}
131+
}
132+
inputs {
133+
submix {
134+
sampling_rates 48000
135+
channel_masks AUDIO_CHANNEL_IN_STEREO
136+
formats AUDIO_FORMAT_PCM_16_BIT
137+
devices AUDIO_DEVICE_IN_REMOTE_SUBMIX
138+
}
139+
}
140+
}
141+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
load-module module-droid-card rate=48000 config=/etc/audio_policy.conf

0 commit comments

Comments
 (0)
Please sign in to comment.