Namespaces

Variants
Actions

Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.

Adding listener's location effects to the Symbian C++ audio player

From Wiki
Jump to: navigation, search

Archived.pngArchived: This article is archived because it is not considered relevant for third-party developers creating commercial solutions today. If you think this article is still relevant, let us know by adding the template {{ReviewForRemovalFromArchive|user=~~~~|write your reason here}}.

The article is believed to be still valid for the original topic scope.

Article Metadata
Code ExampleTested with
Devices(s): Nokia N95
Compatibility
Platform(s): S60 3rd Edition
Platform Security
Signing Required: Self-Signed
Capabilities: None
Article
Keywords: CListenerLocation
Created: User:Technical writer 1 (09 Oct 2008)
Last edited: lpvalente (23 Sep 2014)

Contents

Overview

The S60 platform has several audio enhancement APIs that can be used to modify the audio experience. One of them is the CListenerLocation API. This API makes the listener's location for the audio source appear to change.

This snippet can be self-signed.

Preconditions

The audio player must be fully constructed before constructing the instance of the API. This can be done with the following lines of code:

iMdaAudioPlayerUtility =
CMdaAudioPlayerUtility::NewFilePlayerL(aFileName,
*this,
EMdaPriorityNormal,
EMdaPriorityPreferenceTimeAndQuality);

MMP file

The following capabilities and libraries are required:

CAPABILITY NONE
LIBRARY ListenerLocationEffect.lib
HEADER ListenerLocationBase.h

Source file

First you need to construct the reverb utility instance:

 iListener = CListenerLocation::NewL( *iMdaAudioPlayerUtility );

To set the listener's location effect on, you need to set the X,Y, and Z coordinates for the listener, and then enable and apply the effect on the player.

  iListener->SetLocationCartesianL( iPositionX, iPositionY, iPositionZ );
 
if(!iListener->IsEnabled())
iListener->EnableL();
 
iListener->ApplyL();

You can also add a 3D effect by having a timer that periodically changes the coordinates of the effect.

To set the listeners location effect off, just call the following line of code:

 iListener->DisableL();


Test application

Media:3D AudioEfects.zip

See also

Adding doppler effects to the audio player in Symbian C++

Adding source location effects to the Symbian C++ audio player

Adding bass boost to the Symbian C++ audio player

Adding stereo widening to the Symbian C++ audio player

Adding reverb to the Symbian C++ audio player

Adding equalizer to the Symbian C++ audio player

This page was last modified on 23 September 2014, at 19:51.
215 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×