16 November 2005

Call of SetPriority() in audio classes in Symbian Series 60 programming

There is priorities in Audio MMF Server for each client. When you use API classes for recording and playing audio you always have to setup some priority to your audio. There are different priorities for some purposes. What value should you select? In many cases it will be enough to setup EMdaPriorityNormal. If you setup EMdaPriorityMax value then you cannot be interrupted by other MMF Server clients.
But in some cases standard Symbian applications and services can interrupt your audio input/output, for example, beeping of key pressing. You will get KErrDied error code then. What we should do to avoid this? The solution, recommended by Nokia developers is to setup priority of your client to 80, like this:

iAudioPlayer->SetPriority( 80, EMdaPriorityPreferenceTimeAndQuality );

So you won't be interrupted by other clients and will not block audio at all for clients with higher priority.

No comments: