- java.lang.Object
-
- org.refcodes.audio.SoundSampleImpl
-
- All Implemented Interfaces:
SamplingRateAccessor
,SoundSample
,org.refcodes.mixin.IndexAccessor
,org.refcodes.mixin.TimeStampAccessor
- Direct Known Subclasses:
MonoSampleImpl
public class SoundSampleImpl extends Object implements SoundSample
ASoundSample
represents multiple amplitudes (one for each channel,e.g. two in case we have classical stereo sound) assigned to an according time positioning.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.IndexAccessor
org.refcodes.mixin.IndexAccessor.IndexBuilder<B extends org.refcodes.mixin.IndexAccessor.IndexBuilder<B>>, org.refcodes.mixin.IndexAccessor.IndexMutator, org.refcodes.mixin.IndexAccessor.IndexProperty
-
Nested classes/interfaces inherited from interface org.refcodes.audio.SamplingRateAccessor
SamplingRateAccessor.SamplingRateBuilder<B extends SamplingRateAccessor.SamplingRateBuilder<B>>, SamplingRateAccessor.SamplingRateMutator, SamplingRateAccessor.SamplingRateProperty
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.TimeStampAccessor
org.refcodes.mixin.TimeStampAccessor.TimeStampBuilder<B extends org.refcodes.mixin.TimeStampAccessor.TimeStampBuilder<B>>, org.refcodes.mixin.TimeStampAccessor.TimeStampMutator, org.refcodes.mixin.TimeStampAccessor.TimeStampProperty
-
-
Constructor Summary
Constructors Constructor Description SoundSampleImpl(double[] aSample)
Constructs aSoundSample
instance with the according time and sample settings.SoundSampleImpl(double[] aSample, int aSamplingRate)
Constructs aSoundSample
instance with the according time and sample settings.SoundSampleImpl(double aTimeMillis, double[] aSample)
Constructs aSoundSample
instance with the according time and sample settings.SoundSampleImpl(double aTimeMillis, double[] aSample, int aSamplingRate)
Constructs aSoundSample
instance with the according time and sample settings.SoundSampleImpl(long aIndex, double[] aSample)
Constructs aSoundSample
instance with the according time and sample settings.SoundSampleImpl(long aIndex, double[] aSample, int aSamplingRate)
Constructs aSoundSample
instance with the according time and sample settings.SoundSampleImpl(long aIndex, double aTimeMillis, double[] aSample)
Constructs aSoundSample
instance with the according time and sample settings.SoundSampleImpl(long aIndex, double aTimeMillis, double[] aSample, int aSamplingRate)
Constructs aSoundSample
instance with the according time and sample settings.SoundSampleImpl(SoundSample aSample)
Constructs aSoundSample
instance with the according sound sample's settings
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
getIndex()
double[]
getSampleData()
Returns the sample's data for the according time positioning.int
getSamplingRate()
Retrieves the sampling rate from the sampling rate property.double
getTimeStamp()
Returns the position in time of this sound sample in ms.String
toString()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.refcodes.audio.SoundSample
getChannelCount
-
-
-
-
Constructor Detail
-
SoundSampleImpl
public SoundSampleImpl(SoundSample aSample)
Constructs aSoundSample
instance with the according sound sample's settings- Parameters:
aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.
-
SoundSampleImpl
public SoundSampleImpl(double[] aSample)
Constructs aSoundSample
instance with the according time and sample settings.- Parameters:
aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.
-
SoundSampleImpl
public SoundSampleImpl(double aTimeMillis, double[] aSample)
Constructs aSoundSample
instance with the according time and sample settings.- Parameters:
aTimeMillis
- The time positioning of this sound sample.aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.
-
SoundSampleImpl
public SoundSampleImpl(double aTimeMillis, double[] aSample, int aSamplingRate)
Constructs aSoundSample
instance with the according time and sample settings.- Parameters:
aTimeMillis
- The time positioning of this sound sample.aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.aSamplingRate
- The sampling rate for the given sample.
-
SoundSampleImpl
public SoundSampleImpl(double[] aSample, int aSamplingRate)
Constructs aSoundSample
instance with the according time and sample settings.- Parameters:
aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.aSamplingRate
- The sampling rate for the given sample.
-
SoundSampleImpl
public SoundSampleImpl(long aIndex, double[] aSample)
Constructs aSoundSample
instance with the according time and sample settings.- Parameters:
aIndex
- The index of the sample according to its position in the sample sequence (e.g. sound file).aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.
-
SoundSampleImpl
public SoundSampleImpl(long aIndex, double[] aSample, int aSamplingRate)
Constructs aSoundSample
instance with the according time and sample settings.- Parameters:
aIndex
- The index of the sample according to its position in the sample sequence (e.g. sound file).aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.aSamplingRate
- The sampling rate for the given sample.
-
SoundSampleImpl
public SoundSampleImpl(long aIndex, double aTimeMillis, double[] aSample)
Constructs aSoundSample
instance with the according time and sample settings.- Parameters:
aIndex
- The index of the sample according to its position in the sample sequence (e.g. sound file).aTimeMillis
- The time positioning of this sound sample.aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.
-
SoundSampleImpl
public SoundSampleImpl(long aIndex, double aTimeMillis, double[] aSample, int aSamplingRate)
Constructs aSoundSample
instance with the according time and sample settings.- Parameters:
aIndex
- The index of the sample according to its position in the sample sequence (e.g. sound file).aTimeMillis
- The time positioning of this sound sample.aSample
- The sample (set of values representing the channels, one channel per value) for the related time positioning.aSamplingRate
- The sampling rate for the given sample.
-
-
Method Detail
-
getSampleData
public double[] getSampleData()
Returns the sample's data for the according time positioning. A sample is a value or set of values at a point in time. In case of mono audio, a sample represents a single value, in case of stereo audio, a sample represents a set of values, one value represents one channel (e.g. two channels when we have a left and a right speaker).- Specified by:
getSampleData
in interfaceSoundSample
- Returns:
- The sample's data for the according time positioning.
-
getTimeStamp
public double getTimeStamp()
Returns the position in time of this sound sample in ms.- Specified by:
getTimeStamp
in interfaceSoundSample
- Specified by:
getTimeStamp
in interfaceorg.refcodes.mixin.TimeStampAccessor
- Returns:
- The sound sample's time positioning.
-
getSamplingRate
public int getSamplingRate()
Retrieves the sampling rate from the sampling rate property.- Specified by:
getSamplingRate
in interfaceSamplingRateAccessor
- Returns:
- The sampling rate stored by the sampling rate property.
-
getIndex
public long getIndex()
- Specified by:
getIndex
in interfaceorg.refcodes.mixin.IndexAccessor
-
-