On S60 devices
The ReverbControl
value reverb level does
not map straight from JSR-234 side to S60 Effect API. As the reverb level
is just a single value in JSR-234, the Effect API uses three different values
(reverb level for late reverberation, reflections level for early reflections
and room level for overall reverberation level) to define the same thing.
That is, Effect API (which uses MMA's IA-SIG 2.0's definitions) has more fine-grain
control over reverb than JSR-234.
JSR-234's definition is closest to the definition of reflections level in the Effect API. Therefore, the mapping of room level is currently done using the following algorithm:
int getReverbLevel() { return ( reflectionsLevel + roomLevel ); } int setReverbLevel( int newLevel ) { if ( newLevel > 0 ) { throw new IllegalArgumentException("Too high reverb level."); } int tempChange = newLevel - ( reflectionsLevel + roomLevel ); reflectionsLevel = newLevel - roomLevel; reverbLevel = reverbLevel + tempChange; return newLevel; }
On Series 40 devices
ReverbControl
does not support any other scope apart
from LIVE_ONLY
.
ReverbControl
supports all environments specified
in the JSR-234
specification
.
On Series 40 devices
SoundSource3D
accepts Players
created with DRM-protected
media.
Most JSR-135 audio formats are supported, except the following:
amr
amr-wb
For more information, see GlobalManager.getSupportedSoundSource3DPlayerTypes
.