1<!--
2  ~ Copyright (C) 2023 The Android Open Source Project
3  ~
4  ~ Licensed under the Apache License, Version 2.0 (the "License");
5  ~ you may not use this file except in compliance with the License.
6  ~ You may obtain a copy of the License at
7  ~
8  ~      http://www.apache.org/licenses/LICENSE-2.0
9  ~
10  ~ Unless required by applicable law or agreed to in writing, software
11  ~ distributed under the License is distributed on an "AS IS" BASIS,
12  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  ~ See the License for the specific language governing permissions and
14  ~ limitations under the License.
15  -->
16
17<!--
18Each attribute must start with an attribute tag and AudioAttribute usage is set using the usage
19attribute. If one or more of the priority list/interactions is missing it will use the default
20implementation.
21-->
22<oemAudioDuckingConfigurations>
23    <!---
24    Ducking interactions maps the ducking behavior between different audio attributes. For each
25    ducking attribute, it ducks all the attributes in the ducking tag. There can only be one
26    ducking holder for each ducking interaction.
27
28    <duckingInteractions>
29       <duckingInteraction>
30           <attribute usage = "AUDIO_USAGE..."/>
31           <duck>
32               <attribute usage = "AUDIO_USAGE..."/>
33               <attribute usage = "AUDIO_USAGE..."/>
34           </duck>
35       </duckingInteraction>
36       <duckingInteraction>
37           <attribute usage = "AUDIO_USAGE..."/>
38           <duck>
39               <attribute usage = "AUDIO_USAGE..."/>
40               <attribute usage = "AUDIO_USAGE..."/>
41           </duck>
42       </duckingInteraction>
43    </duckingInteractions>
44    -->
45    <duckingInteractions>
46        <duckingInteraction>
47            <attribute usage = "AUDIO_USAGE_ASSISTANCE_NAVIGATION_GUIDANCE"/>
48            <duck>
49                <attribute usage = "AUDIO_USAGE_MEDIA"/>
50                <attribute usage = "AUDIO_USAGE_UNKNOWN"/>
51                <attribute usage = "AUDIO_USAGE_GAME"/>
52                <attribute usage = "AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE"/>
53                <attribute usage = "AUDIO_USAGE_VOICE_COMMUNICATION"/>
54                <attribute usage = "AUDIO_USAGE_CALL_ASSISTANT"/>
55                <attribute usage = "AUDIO_USAGE_VOICE_COMMUNICATION_SIGNALLING"/>
56                <attribute usage = "AUDIO_USAGE_ALARM"/>
57                <attribute usage = "AUDIO_USAGE_NOTIFICATION"/>
58                <attribute usage = "AUDIO_USAGE_NOTIFICATION_EVENT"/>
59                <attribute usage = "AUDIO_USAGE_ASSISTANCE_SONIFICATION"/>
60                <attribute usage = "AUDIO_USAGE_VEHICLE_STATUS"/>
61                <attribute usage = "AUDIO_USAGE_ANNOUNCEMENT"/>
62            </duck>
63        </duckingInteraction>
64        <duckingInteraction>
65            <attribute usage = "AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY"/>
66            <duck>
67                <attribute usage = "AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE"/>
68            </duck>
69        </duckingInteraction>
70        <duckingInteraction>
71            <attribute usage = "AUDIO_USAGE_ASSISTANT"/>
72            <duck>
73                <attribute usage = "AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE"/>
74            </duck>
75        </duckingInteraction>
76        <duckingInteraction>
77            <attribute usage = "AUDIO_USAGE_VOICE_COMMUNICATION"/>
78            <duck>
79                <attribute usage = "AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE"/>
80                <attribute usage = "AUDIO_USAGE_ALARM"/>
81                <attribute usage = "AUDIO_USAGE_NOTIFICATION"/>
82                <attribute usage = "AUDIO_USAGE_NOTIFICATION_EVENT"/>
83                <attribute usage = "AUDIO_USAGE_VEHICLE_STATUS"/>
84            </duck>
85        </duckingInteraction>
86        <duckingInteraction>
87            <attribute usage = "AUDIO_USAGE_CALL_ASSISTANT"/>
88            <duck>
89                <attribute usage = "AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE"/>
90                <attribute usage = "AUDIO_USAGE_ALARM"/>
91                <attribute usage = "AUDIO_USAGE_NOTIFICATION"/>
92                <attribute usage = "AUDIO_USAGE_NOTIFICATION_EVENT"/>
93                <attribute usage = "AUDIO_USAGE_VEHICLE_STATUS"/>
94            </duck>
95        </duckingInteraction>
96        <duckingInteraction>
97            <attribute usage = "AUDIO_USAGE_VOICE_COMMUNICATION_SIGNALLING"/>
98            <duck>
99                <attribute usage = "AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE"/>
100                <attribute usage = "AUDIO_USAGE_ALARM"/>
101                <attribute usage = "AUDIO_USAGE_NOTIFICATION"/>
102                <attribute usage = "AUDIO_USAGE_NOTIFICATION_EVENT"/>
103                <attribute usage = "AUDIO_USAGE_VEHICLE_STATUS"/>
104            </duck>
105        </duckingInteraction>
106        <duckingInteraction>
107            <attribute usage = "AUDIO_USAGE_ALARM"/>
108            <duck>
109                <attribute usage = "AUDIO_USAGE_MEDIA"/>
110                <attribute usage = "AUDIO_USAGE_UNKNOWN"/>
111                <attribute usage = "AUDIO_USAGE_GAME"/>
112            </duck>
113        </duckingInteraction>
114        <duckingInteraction>
115            <attribute usage = "AUDIO_USAGE_NOTIFICATION"/>
116            <duck>
117                <attribute usage = "AUDIO_USAGE_MEDIA"/>
118                <attribute usage = "AUDIO_USAGE_UNKNOWN"/>
119                <attribute usage = "AUDIO_USAGE_GAME"/>
120                <attribute usage = "AUDIO_USAGE_ALARM"/>
121                <attribute usage = "AUDIO_USAGE_ANNOUNCEMENT"/>
122            </duck>
123        </duckingInteraction>
124        <duckingInteraction>
125            <attribute usage = "AUDIO_USAGE_NOTIFICATION_EVENT"/>
126            <duck>
127                <attribute usage = "AUDIO_USAGE_MEDIA"/>
128                <attribute usage = "AUDIO_USAGE_UNKNOWN"/>
129                <attribute usage = "AUDIO_USAGE_GAME"/>
130                <attribute usage = "AUDIO_USAGE_ALARM"/>
131                <attribute usage = "AUDIO_USAGE_ANNOUNCEMENT"/>
132            </duck>
133        </duckingInteraction>
134        <duckingInteraction>
135            <attribute usage = "AUDIO_USAGE_ASSISTANCE_SONIFICATION"/>
136            <duck>
137                <attribute usage = "AUDIO_USAGE_MEDIA"/>
138                <attribute usage = "AUDIO_USAGE_UNKNOWN"/>
139                <attribute usage = "AUDIO_USAGE_GAME"/>
140                <attribute usage = "AUDIO_USAGE_ALARM"/>
141                <attribute usage = "AUDIO_USAGE_ANNOUNCEMENT"/>
142            </duck>
143        </duckingInteraction>
144        <duckingInteraction>
145            <attribute usage = "AUDIO_USAGE_EMERGENCY"/>
146            <duck>
147                <attribute usage = "AUDIO_USAGE_VOICE_COMMUNICATION"/>
148                <attribute usage = "AUDIO_USAGE_CALL_ASSISTANT"/>
149                <attribute usage = "AUDIO_USAGE_VOICE_COMMUNICATION_SIGNALLING"/>
150            </duck>
151        </duckingInteraction>
152        <duckingInteraction>
153            <attribute usage = "AUDIO_USAGE_SAFETY"/>
154            <duck>
155                <attribute usage = "AUDIO_USAGE_MEDIA"/>
156                <attribute usage = "AUDIO_USAGE_UNKNOWN"/>
157                <attribute usage = "AUDIO_USAGE_GAME"/>
158                <attribute usage = "AUDIO_USAGE_ASSISTANCE_NAVIGATION_GUIDANCE"/>
159                <attribute usage = "AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY"/>
160                <attribute usage = "AUDIO_USAGE_ASSISTANT"/>
161                <attribute usage = "AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE"/>
162                <attribute usage = "AUDIO_USAGE_VOICE_COMMUNICATION"/>
163                <attribute usage = "AUDIO_USAGE_CALL_ASSISTANT"/>
164                <attribute usage = "AUDIO_USAGE_VOICE_COMMUNICATION_SIGNALLING"/>
165                <attribute usage = "AUDIO_USAGE_ALARM"/>
166                <attribute usage = "AUDIO_USAGE_NOTIFICATION"/>
167                <attribute usage = "AUDIO_USAGE_NOTIFICATION_EVENT"/>
168                <attribute usage = "AUDIO_USAGE_ASSISTANCE_SONIFICATION"/>
169                <attribute usage = "AUDIO_USAGE_VEHICLE_STATUS"/>
170                <attribute usage = "AUDIO_USAGE_ANNOUNCEMENT"/>
171            </duck>
172        </duckingInteraction>
173        <duckingInteraction>
174            <attribute usage = "AUDIO_USAGE_VEHICLE_STATUS"/>
175            <duck>
176                <attribute usage = "AUDIO_USAGE_MEDIA"/>
177                <attribute usage = "AUDIO_USAGE_UNKNOWN"/>
178                <attribute usage = "AUDIO_USAGE_GAME"/>
179                <attribute usage = "AUDIO_USAGE_NOTIFICATION_TELEPHONY_RINGTONE"/>
180                <attribute usage = "AUDIO_USAGE_ANNOUNCEMENT"/>
181            </duck>
182        </duckingInteraction>
183    </duckingInteractions>
184</oemAudioDuckingConfigurations>