1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). |
2 // All rights reserved. |
2 // All rights reserved. |
3 // This component and the accompanying materials are made available |
3 // This component and the accompanying materials are made available |
4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members |
4 // under the terms of "Eclipse Public License v1.0" |
5 // which accompanies this distribution, and is available |
5 // which accompanies this distribution, and is available |
6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 // |
7 // |
8 // Initial Contributors: |
8 // Initial Contributors: |
9 // Nokia Corporation - initial contribution. |
9 // Nokia Corporation - initial contribution. |
10 // |
10 // |
11 // Contributors: |
11 // Contributors: |
53 |
53 |
54 /** |
54 /** |
55 @publishedAll |
55 @publishedAll |
56 @released |
56 @released |
57 |
57 |
58 A set of priority values which define the behaviour to be adopted by an |
58 Audio priority preference values. These are to be interpreted as discrete values and not separate flags. |
59 audio client if a higher priority client takes over the device. |
|
60 */ |
59 */ |
61 enum TMdaPriorityPreference |
60 enum TMdaPriorityPreference |
62 { |
61 { |
63 /** |
62 /** |
64 No priority. |
63 Default value - no specific meaning. |
65 */ |
64 */ |
66 EMdaPriorityPreferenceNone = 0x00000000, |
65 EMdaPriorityPreferenceNone = 0, |
67 /** |
66 /** |
68 The audio data is time sensitive. The playback operation fails if it cannot happen when |
67 The audio data is time sensitive. The playback operation may fail if it cannot happen when |
69 requested but degraded output such as mixing or muting is allowed. |
68 requested but degraded output such as mixing or muting is allowed. Note that this is the |
|
69 default behaviour anyway, but this declaration is maintained for compatability. */ |
|
70 EMdaPriorityPreferenceTime = 1, |
|
71 /** |
|
72 The audio data should be played at the best possible quality (for example, it should not be degraded by |
|
73 muting or mixing). This is an advisory to the adaptation and can be ignored. |
70 */ |
74 */ |
71 EMdaPriorityPreferenceTime = 0x00000001, |
75 EMdaPriorityPreferenceQuality = 2, |
72 /** |
76 /** |
73 The audio data must be played at the best possible quality (for example, it must not be degraded by |
77 The audio data is both time and quality sensitive. Identical in behaviour to EMdaPriorityPreferenceQuality. |
74 muting or mixing). The playback operation is delayed until the sound device is available for exclusive use. |
|
75 */ |
78 */ |
76 EMdaPriorityPreferenceQuality = 0x00000002, |
79 EMdaPriorityPreferenceTimeAndQuality = 3 |
77 /** |
|
78 The audio data is both time and quality sensitive. The playback operation fails if it cannot |
|
79 happen immediately at the highest quality. |
|
80 */ |
|
81 EMdaPriorityPreferenceTimeAndQuality = EMdaPriorityPreferenceTime|EMdaPriorityPreferenceQuality |
|
82 }; |
80 }; |
83 |
81 |
84 /** |
82 /** |
85 @publishedAll |
83 @publishedAll |
86 @released |
84 @released |
113 @publishedAll |
111 @publishedAll |
114 @released |
112 @released |
115 |
113 |
116 A class type representing the audio client's priority, |
114 A class type representing the audio client's priority, |
117 priority preference and state settings. |
115 priority preference and state settings. |
|
116 |
|
117 Note: The Priority Value and Priority Preference are used primarily when deciding what to do when |
|
118 several audio clients attempt to play or record simultaneously. In addition to the Priority Value and Preference, |
|
119 the adaptation may consider other parameters such as the SecureId and Capabilities of the client process. |
|
120 Whatever, the decision as to what to do in such situations is up to the audio adaptation, and may |
|
121 vary between different phones. Portable applications are advised not to assume any specific behaviour. |
|
122 |
118 */ |
123 */ |
119 class TMMFPrioritySettings |
124 class TMMFPrioritySettings |
120 { |
125 { |
121 public: |
126 public: |
122 TMMFPrioritySettings(); |
127 TMMFPrioritySettings(); |
123 /** |
128 /** |
124 Absolute priority of a client of the MMF Server. |
129 The Priority Value - this client's relative priority. This is a value between EMdaPriorityMin and |
125 |
130 EMdaPriorityMax and represents a relative priority. A higher value indicates a more important request. |
126 Used by the policy server to determine which client should gain access to the sound device. |
|
127 |
|
128 The priority which should be an integer in the range -100 to +100. |
|
129 */ |
131 */ |
130 TInt iPriority; |
132 TInt iPriority; |
131 |
133 |
132 /** |
134 /** |
133 The priority preference that expresses the nature of the priority that can be none, |
135 The Priority Preference - an additional audio policy parameter. The suggested default is |
134 time (or speed), quality or both time and quality. |
136 EMdaPriorityPreferenceNone. Further values are given by TMdaPriorityPreference, and additional |
135 |
137 values may be supported by given phones and/or platforms, but should not be depended upon by |
136 If this is set to EMdaPriorityPreferenceTime then the audio data is time sensitive. The playback |
138 portable code. |
137 operation fails if it cannot happen when requested but degraded output such as mixing or muting |
|
138 is allowed. |
|
139 |
|
140 If this is set to EMdaPriorityPreferenceQuality then the audio data must be played at the best possible |
|
141 quality (for example, it must not be degraded by muting or mixing). The playback operation is delayed |
|
142 until the sound device is available for exclusive use. |
|
143 |
|
144 If this is set to EMdaPriorityPreferenceTimeAndQuality then the audio data is both time and quality |
|
145 sensitive. The playback operation fails if it cannot happen immediately at the highest quality. |
|
146 */ |
139 */ |
147 TMdaPriorityPreference iPref; |
140 TInt iPref; |
148 |
141 |
149 /** |
142 /** |
150 The state of the MMF player such as idle, playing, recording and so on. See the TMMFState enum for possible states. |
143 The state of the MMF player such as idle, playing, recording and so on. See the TMMFState enum for possible states. |
151 */ |
144 */ |
152 TMMFState iState; |
145 TMMFState iState; |