1.1 --- a/epoc32/include/mmf/common/mmfbase.h Wed Mar 31 12:27:01 2010 +0100
1.2 +++ b/epoc32/include/mmf/common/mmfbase.h Wed Mar 31 12:33:34 2010 +0100
1.3 @@ -1,9 +1,9 @@
1.4 // Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies).
1.5 // All rights reserved.
1.6 // This component and the accompanying materials are made available
1.7 -// 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
1.8 +// under the terms of "Eclipse Public License v1.0"
1.9 // which accompanies this distribution, and is available
1.10 -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
1.11 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
1.12 //
1.13 // Initial Contributors:
1.14 // Nokia Corporation - initial contribution.
1.15 @@ -55,30 +55,28 @@
1.16 @publishedAll
1.17 @released
1.18
1.19 -A set of priority values which define the behaviour to be adopted by an
1.20 -audio client if a higher priority client takes over the device.
1.21 +Audio priority preference values. These are to be interpreted as discrete values and not separate flags.
1.22 */
1.23 enum TMdaPriorityPreference
1.24 {
1.25 /**
1.26 - No priority.
1.27 + Default value - no specific meaning.
1.28 */
1.29 - EMdaPriorityPreferenceNone = 0x00000000,
1.30 + EMdaPriorityPreferenceNone = 0,
1.31 /**
1.32 - The audio data is time sensitive. The playback operation fails if it cannot happen when
1.33 - requested but degraded output such as mixing or muting is allowed.
1.34 + The audio data is time sensitive. The playback operation may fail if it cannot happen when
1.35 + requested but degraded output such as mixing or muting is allowed. Note that this is the
1.36 + default behaviour anyway, but this declaration is maintained for compatability. */
1.37 + EMdaPriorityPreferenceTime = 1,
1.38 + /**
1.39 + The audio data should be played at the best possible quality (for example, it should not be degraded by
1.40 + muting or mixing). This is an advisory to the adaptation and can be ignored.
1.41 */
1.42 - EMdaPriorityPreferenceTime = 0x00000001,
1.43 + EMdaPriorityPreferenceQuality = 2,
1.44 /**
1.45 - The audio data must be played at the best possible quality (for example, it must not be degraded by
1.46 - muting or mixing). The playback operation is delayed until the sound device is available for exclusive use.
1.47 + The audio data is both time and quality sensitive. Identical in behaviour to EMdaPriorityPreferenceQuality.
1.48 */
1.49 - EMdaPriorityPreferenceQuality = 0x00000002,
1.50 - /**
1.51 - The audio data is both time and quality sensitive. The playback operation fails if it cannot
1.52 - happen immediately at the highest quality.
1.53 - */
1.54 - EMdaPriorityPreferenceTimeAndQuality = EMdaPriorityPreferenceTime|EMdaPriorityPreferenceQuality
1.55 + EMdaPriorityPreferenceTimeAndQuality = 3
1.56 };
1.57
1.58 /**
1.59 @@ -115,36 +113,31 @@
1.60
1.61 A class type representing the audio client's priority,
1.62 priority preference and state settings.
1.63 +
1.64 +Note: The Priority Value and Priority Preference are used primarily when deciding what to do when
1.65 +several audio clients attempt to play or record simultaneously. In addition to the Priority Value and Preference,
1.66 +the adaptation may consider other parameters such as the SecureId and Capabilities of the client process.
1.67 +Whatever, the decision as to what to do in such situations is up to the audio adaptation, and may
1.68 +vary between different phones. Portable applications are advised not to assume any specific behaviour.
1.69 +
1.70 */
1.71 class TMMFPrioritySettings
1.72 {
1.73 public:
1.74 TMMFPrioritySettings();
1.75 /**
1.76 - Absolute priority of a client of the MMF Server.
1.77 -
1.78 - Used by the policy server to determine which client should gain access to the sound device.
1.79 -
1.80 - The priority which should be an integer in the range -100 to +100.
1.81 + The Priority Value - this client's relative priority. This is a value between EMdaPriorityMin and
1.82 + EMdaPriorityMax and represents a relative priority. A higher value indicates a more important request.
1.83 */
1.84 TInt iPriority;
1.85
1.86 /**
1.87 - The priority preference that expresses the nature of the priority that can be none,
1.88 - time (or speed), quality or both time and quality.
1.89 -
1.90 - If this is set to EMdaPriorityPreferenceTime then the audio data is time sensitive. The playback
1.91 - operation fails if it cannot happen when requested but degraded output such as mixing or muting
1.92 - is allowed.
1.93 -
1.94 - If this is set to EMdaPriorityPreferenceQuality then the audio data must be played at the best possible
1.95 - quality (for example, it must not be degraded by muting or mixing). The playback operation is delayed
1.96 - until the sound device is available for exclusive use.
1.97 -
1.98 - If this is set to EMdaPriorityPreferenceTimeAndQuality then the audio data is both time and quality
1.99 - sensitive. The playback operation fails if it cannot happen immediately at the highest quality.
1.100 + The Priority Preference - an additional audio policy parameter. The suggested default is
1.101 + EMdaPriorityPreferenceNone. Further values are given by TMdaPriorityPreference, and additional
1.102 + values may be supported by given phones and/or platforms, but should not be depended upon by
1.103 + portable code.
1.104 */
1.105 - TMdaPriorityPreference iPref;
1.106 + TInt iPref;
1.107
1.108 /**
1.109 The state of the MMF player such as idle, playing, recording and so on. See the TMMFState enum for possible states.