JSR-234 1.1

javax.microedition.amms.control.audio3d
Interface ObstructionControl

All Superinterfaces:
javax.microedition.media.Control

public interface ObstructionControl
extends javax.microedition.media.Control

ObstructionControl provides a mechanism to control the overall level of an audio signal flowing directly from a sound source to the Spectator. Additionally, it provides the capability of filtering (attenuating) the high frequency components of the signal to a specified degree.

Source Obstruction

Typically, an ObstructionControl can be obtained from a SoundSource3D. This control specifies how much of the direct sound from a sound source can be heard. It can also be used to muffle the high frequency components of a sound, as though there was a physical object obstructing the sound waves as they travel from the sound source to the user.

Default Values

The default values for the properties of all obstruction controls (whether the application has obtained them or not) are:

level = 0 mB
HFLevel = 0 mB

Example values

The following values, for example, could be used to simulate an object made of the listed material obstructing (only) the direct path between the SoundSource3D and the Spectator:

level (mB)HFLevel (mB)
single window -1988 -812
double window -2000 -3000
thin door -1188 -612
thick door -2816 -1584
wood wall -2000 -2000
brick wall -3000 -2000
stone wall -4080 -1920
curtain -180 -1020


Method Summary
 int getHFLevel()
          Returns the level at which high frequency components are being transmitted directly from the source.
 int getLevel()
          Returns the overall level being transmitted directly from the source.
 void setHFLevel(int HFLevel)
          Sets the level at which high frequency components will be transmitted directly from the source.
 void setLevel(int level)
          Sets the overall level that will be transmitted directly from the source.
 

Method Detail

setLevel

void setLevel(int level)
Sets the overall level that will be transmitted directly from the source.

Parameters:
level - the new output level in millibels (mB, 1 mB = 1/100 dB) at which the sound directly from a source will be heard compared to a non-obstructed source; must be a non-positive value. Setting the level to 0 makes the source non-obstructed.
Throws:
java.lang.IllegalArgumentException - if the given level is positive

getLevel

int getLevel()
Returns the overall level being transmitted directly from the source.

Returns:
the overall level being transmitted in millibels

setHFLevel

void setHFLevel(int HFLevel)
Sets the level at which high frequency components will be transmitted directly from the source.

Parameters:
HFLevel - the new output level at 5000 Hz in millibels (mB, 1 mB = 1/100 dB) at which the sound directly from a source will be heard compared to the overall level of the source; must be a non-positive value. Setting the level to 0 makes the source's frequency response flat.
Throws:
java.lang.IllegalArgumentException - if the given level is positive

getHFLevel

int getHFLevel()
Returns the level at which high frequency components are being transmitted directly from the source.

Returns:
the level at which 5000 Hz frequency components are being transmitted in millibels

JSR-234 1.1

Copyright © 2004-2007 Nokia Corporation. See the Copyright for details.