Class Sample

java.lang.Object
com.sun.j3d.audioengines.Sample

public class Sample extends Object
The 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 Details

    • debugFlag

      protected static final boolean debugFlag
      See Also:
    • internalErrors

      protected static final boolean internalErrors
      See Also:
    • NULL_SAMPLE

      public static final int NULL_SAMPLE
      Null Sound identifier denotes sound is not created or initialized
      See Also:
    • 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:
    • 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:
    • LOW_PASS

      public static final int LOW_PASS
      See Also:
    • 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
  • Constructor Details

    • Sample

      public Sample()
  • Method Details

    • debugPrint

      protected void debugPrint(String message)
    • debugPrintln

      protected void debugPrintln(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)