mmlibs/mmfw/inc/MdaAudioSamplePlayer.h
author hgs
Tue, 02 Nov 2010 12:13:59 +0000
changeset 5 b220a9341636
parent 0 b8ed18f6c07b
permissions -rw-r--r--
2010wk46_01
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     1
// Copyright (c) 1999-2009 Nokia Corporation and/or its subsidiary(-ies).
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     2
// All rights reserved.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     3
// This component and the accompanying materials are made available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     5
// which accompanies this distribution, and is available
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     7
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     8
// Initial Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    10
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    11
// Contributors:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    12
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    13
// Description:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    14
//
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    15
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    16
#ifndef __MDAAUDIOSAMPLEPLAYER_H
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    17
#define __MDAAUDIOSAMPLEPLAYER_H
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    18
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    19
#include <e32std.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    20
#include <f32file.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    21
#include <mmf/common/mmfaudio.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    22
#include <mmf/common/mmfbase.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    23
#include <mmf/common/mmfcontrollerframeworkbase.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    24
#include <mmf/common/mmfstandardcustomcommands.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    25
#include <mmf/common/mmfdrmcustomcommands.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    26
#include <mmfclntutility.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    27
#include <mmf/common/mmfdurationinfocustomcommands.h>
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    28
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    29
class CMdaServer;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    30
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    31
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    32
@publishedAll
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    33
@released
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    34
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    35
An interface to a set of audio player callback functions.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    36
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    37
The class is a mixin and is intended to be inherited by the client
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    38
class which is observing the audio playing operation. The functions
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    39
encapsulated by this class are called when specific events occur in
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    40
the process of initialising and playing an audio sample. A reference to
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    41
this object is passed as a parameter when constructing an audio player
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    42
utility object.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    43
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    44
@since  5.0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    45
*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    46
class MMdaAudioPlayerCallback
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    47
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    48
public:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    49
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    50
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    51
	Defines required client behaviour when an attempt to open and
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    52
	initialise an audio sample has completed, successfully or otherwise.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    53
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    54
	@param  aError
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    55
	        The status of the audio sample after initialisation.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    56
	        The following values have the same specific meaning
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    57
	        across all EPOC platforms: KErrNone the
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    58
	        sample is ready to play. KErrNotSupported
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    59
	        the audio format or particular encoding type is not
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    60
	        recognised or not supported. KErrNotFound
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    61
	        the audio sample cannot be found.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    62
	        KErrNoMemory there is insufficient memory
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    63
	        to play this audio sample. Other values are possible
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    64
	        indicating a problem opening the audio sample. These
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    65
	        values are dependent on the EPOC platform.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    66
	@param  aDuration
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    67
	        The duration of the audio sample.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    68
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    69
	virtual void MapcInitComplete(TInt aError, const TTimeIntervalMicroSeconds& aDuration) = 0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    70
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    71
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    72
	Defines required client behaviour when an attempt to playback an audio
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    73
	sample has completed, successfully or otherwise.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    74
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    75
	@param   aError
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    76
	         The status of playback. The following values have the
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    77
	         same specific meaning across all EPOC platforms:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    78
	         KErrNone playing of the audio sample is
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    79
	         complete. KErrCorrupt the sample data is
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    80
	         corrupt. KErrInUse the sound device is in
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    81
	         use by another higher priority client. This can happen
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    82
	         during playback. KErrNoMemory there is
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    83
	         insufficient memory to play this audio sample Other
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    84
	         values are possible indicating a problem opening the
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    85
	         audio sample. These values are dependent on the EPOC
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    86
	         platform.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    87
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    88
	virtual void MapcPlayComplete(TInt aError) = 0;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    89
	};
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    90
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    91
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    92
class CMMFMdaAudioPlayerUtility;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    93
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    94
/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    95
@publishedAll
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    96
@released
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    97
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    98
Plays sampled audio data.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
    99
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   100
The class offers a simple interface to open, play and obtain
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   101
information from, sampled audio data. The audio data can be supplied
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   102
either in a file (file-based), as a descriptor
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   103
(descriptor-based) or as a URL reference (since version 7.0s).
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   104
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   105
While this class is abstract, the three static functions construct, initialise
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   106
and return pointers to instances of concrete classes derived from this
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   107
abstract class. 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   108
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   109
@since  5.0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   110
*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   111
class CMdaAudioPlayerUtility : public CBase, 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   112
							   public MMMFClientUtility
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   113
	{
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   114
public:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   115
	IMPORT_C static CMdaAudioPlayerUtility* NewFilePlayerL(const TDesC& aFileName,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   116
								MMdaAudioPlayerCallback& aCallback,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   117
								TInt aPriority = EMdaPriorityNormal,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   118
								TInt aPref = EMdaPriorityPreferenceTimeAndQuality,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   119
								CMdaServer* aServer = NULL);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   120
	IMPORT_C static CMdaAudioPlayerUtility* NewDesPlayerL(const TDesC8& aData,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   121
								MMdaAudioPlayerCallback& aCallback,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   122
								TInt aPriority = EMdaPriorityNormal,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   123
								TInt aPref = EMdaPriorityPreferenceTimeAndQuality,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   124
								CMdaServer* aServer = NULL);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   125
	IMPORT_C static CMdaAudioPlayerUtility* NewDesPlayerReadOnlyL(const TDesC8& aData,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   126
								MMdaAudioPlayerCallback& aCallback,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   127
								TInt aPriority = EMdaPriorityNormal,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   128
								TInt aPref = EMdaPriorityPreferenceTimeAndQuality,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   129
								CMdaServer* aServer = NULL);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   130
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   131
	// new export from version 7.0
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   132
	IMPORT_C static CMdaAudioPlayerUtility* NewL(MMdaAudioPlayerCallback& aCallback,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   133
								TInt aPriority = EMdaPriorityNormal,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   134
								TInt aPref = EMdaPriorityPreferenceTimeAndQuality);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   135
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   136
	IMPORT_C void UseSharedHeap();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   137
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   138
	~CMdaAudioPlayerUtility();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   139
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   140
	virtual void Play();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   141
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   142
	virtual void Stop();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   143
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   144
	virtual TInt SetVolume(TInt aVolume);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   145
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   146
	virtual void SetRepeats(TInt aRepeatNumberOfTimes, const TTimeIntervalMicroSeconds& aTrailingSilence);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   147
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   148
	virtual void SetVolumeRamp(const TTimeIntervalMicroSeconds& aRampDuration);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   149
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   150
	virtual const TTimeIntervalMicroSeconds& Duration();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   151
	IMPORT_C TMMFDurationInfo Duration(TTimeIntervalMicroSeconds& aDuration);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   152
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   153
	virtual TInt MaxVolume();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   154
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   155
	IMPORT_C void OpenFileL(const TDesC& aFileName);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   156
	IMPORT_C void OpenFileL(const RFile& aFile);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   157
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   158
	IMPORT_C void OpenFileL(const TMMSource& aSource);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   159
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   160
	IMPORT_C void OpenDesL(const TDesC8& aDescriptor);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   161
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   162
	IMPORT_C void OpenUrlL(const TDesC& aUrl, TInt aIapId = KUseDefaultIap, const TDesC8& aMimeType=KNullDesC8);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   163
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   164
	IMPORT_C TInt Pause();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   165
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   166
	IMPORT_C void Close();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   167
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   168
	IMPORT_C TInt GetPosition(TTimeIntervalMicroSeconds& aPosition);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   169
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   170
	IMPORT_C void SetPosition(const TTimeIntervalMicroSeconds& aPosition);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   171
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   172
	IMPORT_C TInt SetPriority(TInt aPriority, TInt aPref);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   173
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   174
	IMPORT_C TInt GetVolume(TInt& aVolume);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   175
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   176
	IMPORT_C TInt GetNumberOfMetaDataEntries(TInt& aNumEntries);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   177
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   178
	IMPORT_C CMMFMetaDataEntry* GetMetaDataEntryL(TInt aMetaDataIndex);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   179
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   180
	IMPORT_C TInt SetPlayWindow(const TTimeIntervalMicroSeconds& aStart,
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   181
								const TTimeIntervalMicroSeconds& aEnd);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   182
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   183
	IMPORT_C TInt ClearPlayWindow();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   184
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   185
	IMPORT_C TInt SetBalance(TInt aBalance = KMMFBalanceCenter);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   186
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   187
	IMPORT_C TInt GetBalance(TInt& aBalance);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   188
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   189
	IMPORT_C void RegisterForAudioLoadingNotification(MAudioLoadingObserver& aCallback);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   190
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   191
	IMPORT_C void GetAudioLoadingProgressL(TInt& aPercentageComplete);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   192
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   193
	IMPORT_C const CMMFControllerImplementationInformation& ControllerImplementationInformationL();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   194
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   195
	IMPORT_C TInt CustomCommandSync(const TMMFMessageDestinationPckg& aDestination, TInt aFunction, const TDesC8& aDataTo1, const TDesC8& aDataTo2, TDes8& aDataFrom);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   196
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   197
	IMPORT_C TInt CustomCommandSync(const TMMFMessageDestinationPckg& aDestination, TInt aFunction, const TDesC8& aDataTo1, const TDesC8& aDataTo2);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   198
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   199
	IMPORT_C void CustomCommandAsync(const TMMFMessageDestinationPckg& aDestination, TInt aFunction, const TDesC8& aDataTo1, const TDesC8& aDataTo2, TDes8& aDataFrom, TRequestStatus& aStatus);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   200
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   201
	IMPORT_C void CustomCommandAsync(const TMMFMessageDestinationPckg& aDestination, TInt aFunction, const TDesC8& aDataTo1, const TDesC8& aDataTo2, TRequestStatus& aStatus);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   202
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   203
	IMPORT_C TInt GetBitRate(TUint& aBitRate);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   204
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   205
	IMPORT_C MMMFDRMCustomCommand* GetDRMCustomCommand();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   206
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   207
	IMPORT_C TInt RegisterAudioResourceNotification(MMMFAudioResourceNotificationCallback& aCallback,TUid aNotificationEventUid,const TDesC8& aNotificationRegistrationData = KNullDesC8);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   208
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   209
	IMPORT_C TInt CancelRegisterAudioResourceNotification(TUid aNotificationEventId);
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   210
    
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   211
	IMPORT_C TInt WillResumePlay();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   212
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   213
	IMPORT_C TInt SetThreadPriority(const TThreadPriority& aThreadPriority) const;	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   214
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   215
private:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   216
	CMdaAudioPlayerUtility();
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   217
	
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   218
protected:
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   219
	/**
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   220
	This member is internal and not intended for use.
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   221
	*/
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   222
	CMMFMdaAudioPlayerUtility* iProperties;
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   223
	}; 
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   224
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   225
b8ed18f6c07b 2010wk40
hgs
parents:
diff changeset
   226
#endif