org.jouvieje.fmodex.enumerations
Class FMOD_SPEAKERMODE
java.lang.Object
org.jouvieje.fmodex.enumerations.FMOD_SPEAKERMODE
- All Implemented Interfaces:
- java.lang.Comparable, org.jouvieje.fmodex.enumerations.Enumeration
- public class FMOD_SPEAKERMODE
- extends java.lang.Object
- implements org.jouvieje.fmodex.enumerations.Enumeration, java.lang.Comparable
These are speaker types defined for use with the System::setSpeakerMode or System::getSpeakerMode command.
Remarks
These are important notes on speaker modes in regards to sounds created with FMOD_SOFTWARE.
Note below the phrase 'sound channels' is used. These are the subchannels inside a sound, they are not related and
have nothing to do with the FMOD class "Channel".
For example a mono sound has 1 sound channel, a stereo sound has 2 sound channels, and an AC3 or 6 channel wav file have 6 "sound channels".
FMOD_SPEAKERMODE_RAW
---------------------
This mode is for output devices that are not specifically mono/stereo/quad/surround/5.1 or 7.1, but are multichannel.
Use System::setSoftwareFormat to specify the number of speakers you want to address, otherwise it will default to 2 (stereo).
Sound channels map to speakers sequentially, so a mono sound maps to output speaker 0, stereo sound maps to output speaker 0 & 1.
The user assumes knowledge of the speaker order. FMOD_SPEAKER enumerations may not apply, so raw channel indices should be used.
Multichannel sounds map input channels to output channels 1:1.
Channel::setPan and Channel::setSpeakerMix do not work.
Speaker levels must be manually set with Channel::setSpeakerLevels.
FMOD_SPEAKERMODE_MONO
---------------------
This mode is for a 1 speaker arrangement.
Panning does not work in this speaker mode.
Mono, stereo and multichannel sounds have each sound channel played on the one speaker unity.
Mix behavior for multichannel sounds can be set with Channel::setSpeakerLevels.
Channel::setSpeakerMix does not work.
FMOD_SPEAKERMODE_STEREO
-----------------------
This mode is for 2 speaker arrangements that have a left and right speaker.
- Mono sounds default to an even distribution between left and right. They can be panned with Channel::setPan.
- Stereo sounds default to the middle, or full left in the left speaker and full right in the right speaker.
- They can be cross faded with Channel::setPan.
- Multichannel sounds have each sound channel played on each speaker at unity.
- Mix behavior for multichannel sounds can be set with Channel::setSpeakerLevels.
- Channel::setSpeakerMix works but only front left and right parameters are used, the rest are ignored.
FMOD_SPEAKERMODE_QUAD
------------------------
This mode is for 4 speaker arrangements that have a front left, front right, rear left and a rear right speaker.
- Mono sounds default to an even distribution between front left and front right. They can be panned with Channel::setPan.
- Stereo sounds default to the left sound channel played on the front left, and the right sound channel played on the front right.
- They can be cross faded with Channel::setPan.
- Multichannel sounds default to all of their sound channels being played on each speaker in order of input.
- Mix behavior for multichannel sounds can be set with Channel::setSpeakerLevels.
- Channel::setSpeakerMix works but side left, side right, center and lfe are ignored.
FMOD_SPEAKERMODE_SURROUND
------------------------
This mode is for 5 speaker arrangements that have a left/right/center/rear left/rear right.
- Mono sounds default to the center speaker. They can be panned with Channel::setPan.
- Stereo sounds default to the left sound channel played on the front left, and the right sound channel played on the front right.
- They can be cross faded with Channel::setPan.
- Multichannel sounds default to all of their sound channels being played on each speaker in order of input.
- Mix behavior for multichannel sounds can be set with Channel::setSpeakerLevels.
- Channel::setSpeakerMix works but side left / side right are ignored.
FMOD_SPEAKERMODE_5POINT1
------------------------
This mode is for 5.1 speaker arrangements that have a left/right/center/rear left/rear right and a subwoofer speaker.
- Mono sounds default to the center speaker. They can be panned with Channel::setPan.
- Stereo sounds default to the left sound channel played on the front left, and the right sound channel played on the front right.
- They can be cross faded with Channel::setPan.
- Multichannel sounds default to all of their sound channels being played on each speaker in order of input.
- Mix behavior for multichannel sounds can be set with Channel::setSpeakerLevels.
- Channel::setSpeakerMix works but side left / side right are ignored.
FMOD_SPEAKERMODE_7POINT1
------------------------
This mode is for 7.1 speaker arrangements that have a left/right/center/rear left/rear right/side left/side right
and a subwoofer speaker.
- Mono sounds default to the center speaker. They can be panned with Channel::setPan.
- Stereo sounds default to the left sound channel played on the front left, and the right sound channel played on the front right.
- They can be cross faded with Channel::setPan.
- Multichannel sounds default to all of their sound channels being played on each speaker in order of input.
- Mix behavior for multichannel sounds can be set with Channel::setSpeakerLevels.
- Channel::setSpeakerMix works and every parameter is used to set the balance of a sound in any speaker.
FMOD_SPEAKERMODE_PROLOGIC
------------------------------------------------------
This mode is for mono, stereo, 5.1 and 7.1 speaker arrangements, as it is backwards and forwards compatible with stereo,
but to get a surround effect a Dolby Prologic or Prologic 2 hardware decoder / amplifier is needed.
Pan behavior is the same as FMOD_SPEAKERMODE_5POINT1.
If this function is called the numoutputchannels setting in System::setSoftwareFormat is overwritten.
For 3D sounds, panning is determined at runtime by the 3D subsystem based on the speaker mode to determine which speaker the
sound should be placed in.
Platforms Supported
Win32, Win64, Linux, Linux64, Macintosh, Xbox360, PlayStation 2, PlayStation Portable, PlayStation 3, Wii, Solaris, iPhone
See Also
System::setSpeakerMode
System::getSpeakerMode
System::getDriverCaps
System::setSoftwareFormat
Channel::setSpeakerLevels
Methods inherited from class java.lang.Object |
getClass, hashCode, notify, notifyAll, wait, wait, wait |
FMOD_SPEAKERMODE_RAW
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_RAW
FMOD_SPEAKERMODE_MONO
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_MONO
FMOD_SPEAKERMODE_STEREO
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_STEREO
FMOD_SPEAKERMODE_QUAD
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_QUAD
FMOD_SPEAKERMODE_SURROUND
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_SURROUND
FMOD_SPEAKERMODE_5POINT1
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_5POINT1
FMOD_SPEAKERMODE_7POINT1
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_7POINT1
FMOD_SPEAKERMODE_PROLOGIC
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_PROLOGIC
FMOD_SPEAKERMODE_MAX
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_MAX
FMOD_SPEAKERMODE_FORCEINT
public static final FMOD_SPEAKERMODE FMOD_SPEAKERMODE_FORCEINT
asInt
public int asInt()
- Specified by:
asInt
in interface org.jouvieje.fmodex.enumerations.Enumeration
- Returns:
- the integer value of the enumeration constant.
toString
public java.lang.String toString()
equals
public boolean equals(java.lang.Object object)
compareTo
public int compareTo(java.lang.Object object)
- Specified by:
compareTo
in interface java.lang.Comparable
get
public static FMOD_SPEAKERMODE get(int nativeValue)
- Retrieve a FMOD_SPEAKERMODE enum field with his integer value
- Parameters:
nativeValue
- the integer value of the field to retrieve
- Returns:
- the FMOD_SPEAKERMODE enum field that correspond to the integer value
get
public static FMOD_SPEAKERMODE get(Pointer pointer)
- Retrieve a FMOD_SPEAKERMODE enum field from a Pointer
- Parameters:
pointer
- a pointer holding an FMOD_SPEAKERMODE enum field
- Returns:
- the FMOD_SPEAKERMODE enum field that correspond to the enum field in the pointer
iterator
public static java.util.Iterator iterator()
- Returns:
- an
Iterator
over the elements in this enumeration.
Can be cast to Iterator
in Java 1.5.
NativeFmodEx Project - © Copyright 2005-2010 - Jérôme Jouvie (Jouvieje)
NativeFmodEx is an Open Source Project under GNU LGPL License
My sites : http://jerome.jouvie.free.fr/
(Documentation Copyright © Firelight Technologies - FMOD Ex - http://www.fmod.org)