Package com.sun.j3d.audioengines
Class Sample
- java.lang.Object
-
- com.sun.j3d.audioengines.Sample
-
public class Sample extends java.lang.ObjectThe Sample class defines the data and methods associated with a sound sample played through the AudioDevice. This contains all the data fields for non-spatialized and spatialized (positional and directional) sound samples.
-
-
Field Summary
Fields Modifier and Type Field Description protected double[]angularDistanceDirectional Sound's gain can be attenuated based on the listener's location off-angle from the source source direction.protected float[]angularFilterCutoffprotected intangularFilterTypeprotected float[]angularGainprotected double[]attenuationDistanceprotected float[]attenuationGainprotected double[]backAttenuationDistancePairs of distances and gain scale factors that define piecewise linear gain BACK attenuation between each pair.protected float[]backAttenuationGainprotected static booleandebugFlagprotected javax.vecmath.Vector3fdirectionThe Cone Sound's direction vector.protected intdirtyFlagsdirty flags denoting what has changed since last renderingprotected longdurationstatic intDURATION_UNKNOWNprotected floatgainOverall Scale Factor applied to sound gain.protected static booleaninternalErrorsprotected intloopCountNumber of times sound is looped/repeated during playstatic intLOW_PASSprotected booleanmutestatic intNO_FILTERINGDistance Filter Each sound source is attenuated by a filter based on it's distance from the listener.static intNULL_SAMPLENull Sound identifier denotes sound is not created or initializedprotected intnumberOfChannelsprotected floatobstructionFilterCutoffprotected intobstructionFilterTypeprotected floatobstructionGainprotected floatocclusionFilterCutoffprotected intocclusionFilterTypeprotected floatocclusionGainprotected javax.vecmath.Point3fpositionprotected floatrateScaleFactorOverall Scale Factor applied to sound.protected MediaContainersoundDatasound data associated with sound sourceprotected intsoundTypesound data associated with sound sourceprotected Transform3DvworldXfrmprotected booleanvwXfrmFlag
-
Constructor Summary
Constructors Constructor Description Sample()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclear()Clears/re-initialize fields associated with sample data for this sound, and frees any device specific data associated with this sample.protected voiddebugPrint(java.lang.String message)protected voiddebugPrintln(java.lang.String message)intgetDirtyFlags()longgetDuration()floatgetGain()intgetLoopCount()booleangetMuteFlag()intgetNumberOfChannelsUsed()floatgetObstructionGain()floatgetOcclusionGain()floatgetRateScaleFactor()MediaContainergetSoundData()intgetSoundType()longgetStartTime()booleangetVWrldXfrmFlag()voidrender(int dirtyFlags, View view, AuralParameters attribs)voidsetAngularAttenuation(int filterType, double[] angle, float[] attenuationScaleFactor, float[] filterCutoff)voidsetDirection(javax.vecmath.Vector3d direction)voidsetDirtyFlags(int flags)voidsetDistanceGain(double[] frontDistance, float[] frontAttenuationScaleFactor, double[] backDistance, float[] backAttenuationScaleFactor)voidsetGain(float scaleFactor)voidsetLoopCount(int count)voidsetMuteFlag(boolean flag)voidsetObstructionFilter(float cutoffFrequency)voidsetObstructionGain(float scaleFactor)voidsetOcclusionFilter(float cutoffFrequency)voidsetOcclusionGain(float scaleFactor)voidsetPosition(javax.vecmath.Point3d position)voidsetRateScaleFactor(float scaleFactor)voidsetSoundData(MediaContainer ref)voidsetSoundType(int type)voidsetVWrldXfrmFlag(boolean flag)
-
-
-
Field Detail
-
debugFlag
protected static final boolean debugFlag
- See Also:
- Constant Field Values
-
internalErrors
protected static final boolean internalErrors
- See Also:
- Constant Field Values
-
NULL_SAMPLE
public static final int NULL_SAMPLE
Null Sound identifier denotes sound is not created or initialized- See Also:
- Constant Field Values
-
soundData
protected MediaContainer soundData
sound data associated with sound source
-
soundType
protected int soundType
sound data associated with sound source
-
gain
protected float gain
Overall Scale Factor applied to sound gain.
-
rateScaleFactor
protected float rateScaleFactor
Overall Scale Factor applied to sound.- Since:
- Java 3D 1.3
-
loopCount
protected int loopCount
Number of times sound is looped/repeated during play
-
DURATION_UNKNOWN
public static final int DURATION_UNKNOWN
- See Also:
- Constant Field Values
-
duration
protected long duration
-
numberOfChannels
protected int numberOfChannels
-
mute
protected boolean mute
-
vworldXfrm
protected Transform3D vworldXfrm
-
vwXfrmFlag
protected boolean vwXfrmFlag
-
position
protected javax.vecmath.Point3f position
-
attenuationDistance
protected double[] attenuationDistance
-
attenuationGain
protected float[] attenuationGain
-
dirtyFlags
protected int dirtyFlags
dirty flags denoting what has changed since last rendering
-
direction
protected javax.vecmath.Vector3f direction
The Cone Sound's direction vector. This is the cone axis.
-
backAttenuationDistance
protected double[] backAttenuationDistance
Pairs of distances and gain scale factors that define piecewise linear gain BACK attenuation between each pair. These are used for defining elliptical attenuation regions.
-
backAttenuationGain
protected float[] backAttenuationGain
-
angularDistance
protected double[] angularDistance
Directional Sound's gain can be attenuated based on the listener's location off-angle from the source source direction. This can be set by three parameters: angular distance in radians gain scale factor filtering (currently the only filtering supported is lowpass)
-
angularGain
protected float[] angularGain
-
NO_FILTERING
public static final int NO_FILTERING
Distance Filter Each sound source is attenuated by a filter based on it's distance from the listener. For now the only supported filterType will be LOW_PASS frequency cutoff. At some time full FIR filtering will be supported.- See Also:
- Constant Field Values
-
LOW_PASS
public static final int LOW_PASS
- See Also:
- Constant Field Values
-
angularFilterType
protected int angularFilterType
-
angularFilterCutoff
protected float[] angularFilterCutoff
-
obstructionGain
protected float obstructionGain
-
obstructionFilterType
protected int obstructionFilterType
-
obstructionFilterCutoff
protected float obstructionFilterCutoff
-
occlusionGain
protected float occlusionGain
-
occlusionFilterType
protected int occlusionFilterType
-
occlusionFilterCutoff
protected float occlusionFilterCutoff
-
-
Method Detail
-
debugPrint
protected void debugPrint(java.lang.String message)
-
debugPrintln
protected void debugPrintln(java.lang.String message)
-
getDuration
public long getDuration()
-
getStartTime
public long getStartTime()
-
getNumberOfChannelsUsed
public int getNumberOfChannelsUsed()
-
setDirtyFlags
public void setDirtyFlags(int flags)
-
getDirtyFlags
public int getDirtyFlags()
-
setSoundType
public void setSoundType(int type)
-
getSoundType
public int getSoundType()
-
setSoundData
public void setSoundData(MediaContainer ref)
-
getSoundData
public MediaContainer getSoundData()
-
setMuteFlag
public void setMuteFlag(boolean flag)
-
getMuteFlag
public boolean getMuteFlag()
-
setVWrldXfrmFlag
public void setVWrldXfrmFlag(boolean flag)
-
getVWrldXfrmFlag
public boolean getVWrldXfrmFlag()
-
setGain
public void setGain(float scaleFactor)
-
getGain
public float getGain()
-
setLoopCount
public void setLoopCount(int count)
-
getLoopCount
public int getLoopCount()
-
setPosition
public void setPosition(javax.vecmath.Point3d position)
-
setDistanceGain
public void setDistanceGain(double[] frontDistance, float[] frontAttenuationScaleFactor, double[] backDistance, float[] backAttenuationScaleFactor)
-
setDirection
public void setDirection(javax.vecmath.Vector3d direction)
-
setAngularAttenuation
public void setAngularAttenuation(int filterType, double[] angle, float[] attenuationScaleFactor, float[] filterCutoff)
-
setRateScaleFactor
public void setRateScaleFactor(float scaleFactor)
-
getRateScaleFactor
public float getRateScaleFactor()
-
setObstructionGain
public void setObstructionGain(float scaleFactor)
-
getObstructionGain
public float getObstructionGain()
-
setObstructionFilter
public void setObstructionFilter(float cutoffFrequency)
-
setOcclusionGain
public void setOcclusionGain(float scaleFactor)
-
getOcclusionGain
public float getOcclusionGain()
-
setOcclusionFilter
public void setOcclusionFilter(float cutoffFrequency)
-
clear
public void clear()
Clears/re-initialize fields associated with sample data for this sound, and frees any device specific data associated with this sample.
-
render
public void render(int dirtyFlags, View view, AuralParameters attribs)
-
-