- java.lang.Object
-
- org.refcodes.audio.MonoSampleBuilderImpl
-
- All Implemented Interfaces:
MonoSample
,MonoSampleBuilder
,SampleBuilder<MonoSample,MonoSampleBuilder>
,SamplingRateAccessor
,SamplingRateAccessor.SamplingRateBuilder<MonoSampleBuilder>
,SamplingRateAccessor.SamplingRateMutator
,SamplingRateAccessor.SamplingRateProperty
,SoundSample
,org.refcodes.mixin.IndexAccessor
,org.refcodes.mixin.IndexAccessor.IndexBuilder<MonoSampleBuilder>
,org.refcodes.mixin.IndexAccessor.IndexMutator
,org.refcodes.mixin.IndexAccessor.IndexProperty
,org.refcodes.mixin.TimeStampAccessor
,org.refcodes.mixin.TimeStampAccessor.TimeStampBuilder<MonoSampleBuilder>
,org.refcodes.mixin.TimeStampAccessor.TimeStampMutator
,org.refcodes.mixin.TimeStampAccessor.TimeStampProperty
public class MonoSampleBuilderImpl extends Object implements MonoSampleBuilder
AMonoSampleBuilderImpl
represents a single amplitude (one for the mono channel) 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 MonoSampleBuilderImpl(double aSample)
Constructs aMonoSample
instance with the according time and sample settings.MonoSampleBuilderImpl(double aTimeMillis, double aSample)
Constructs aMonoSample
instance with the according time and sample settings.MonoSampleBuilderImpl(double aTimeMillis, double aSample, int aSamplingRate)
Constructs aMonoSample
instance with the according time and sample settings.MonoSampleBuilderImpl(double aSample, int aSamplingRate)
Constructs aMonoSample
instance with the according time and sample settings.MonoSampleBuilderImpl(long aIndex, double aSample)
Constructs aMonoSample
instance with the according time and sample settings.MonoSampleBuilderImpl(long aIndex, double aTimeMillis, double aSample)
Constructs aMonoSample
instance with the according time and sample settings.MonoSampleBuilderImpl(long aIndex, double aTimeMillis, double aSample, int aSamplingRate)
Constructs aMonoSample
instance with the according time and sample settings.MonoSampleBuilderImpl(long aIndex, double aSample, int aSamplingRate)
Constructs aMonoSample
instance with the according time and sample settings.MonoSampleBuilderImpl(long aIndex, int aSamplingRate)
Constructs aSoundSampleBuilder
instance with the according time and sample settings.MonoSampleBuilderImpl(MonoSample aSample)
Constructs aMonoSample
instance with the according sound sample's settings
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
decreaseIndex()
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.void
increaseIndex()
void
setIndex(long aIndex)
void
setMonoData(double aSampleData)
Sets the sample's data for the according time positioning.void
setSamplingRate(int aSamplingRate)
Sets the sampling rate for the sampling rate property.void
setTimeStamp(double aTimeInMillis)
Sets 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.MonoSample
getMonoData
-
Methods inherited from interface org.refcodes.audio.MonoSampleBuilder
withDecreaseIndex, withIncreaseIndex, withIndex, withMonoData, withSamplingRate, withTimeStamp
-
Methods inherited from interface org.refcodes.audio.SampleBuilder
updateTimeStamp
-
Methods inherited from interface org.refcodes.audio.SamplingRateAccessor.SamplingRateProperty
letSamplingRate
-
Methods inherited from interface org.refcodes.audio.SoundSample
getChannelCount
-
-
-
-
Constructor Detail
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(MonoSample aSample)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(double aSample)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(double aTimeMillis, double aSample)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(double aTimeMillis, double aSample, int aSamplingRate)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(double aSample, int aSamplingRate)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(long aIndex, double aSample)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(long aIndex, double aSample, int aSamplingRate)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(long aIndex, double aTimeMillis, double aSample)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(long aIndex, double aTimeMillis, double aSample, int aSamplingRate)
Constructs aMonoSample
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.
-
MonoSampleBuilderImpl
public MonoSampleBuilderImpl(long aIndex, int aSamplingRate)
Constructs aSoundSampleBuilder
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).aSamplingRate
- The sampling rate for the given sample.
-
-
Method Detail
-
setMonoData
public void setMonoData(double aSampleData)
Sets 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:
setMonoData
in interfaceMonoSampleBuilder
- Parameters:
aSampleData
- The sample's data for the according time positioning.
-
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
-
setIndex
public void setIndex(long aIndex)
- Specified by:
setIndex
in interfaceorg.refcodes.mixin.IndexAccessor.IndexMutator
-
increaseIndex
public void increaseIndex()
- Specified by:
increaseIndex
in interfaceorg.refcodes.mixin.IndexAccessor.IndexMutator
-
decreaseIndex
public void decreaseIndex()
- Specified by:
decreaseIndex
in interfaceorg.refcodes.mixin.IndexAccessor.IndexMutator
-
setTimeStamp
public void setTimeStamp(double aTimeInMillis)
Sets the position in time of this sound sample in ms.- Specified by:
setTimeStamp
in interfaceMonoSampleBuilder
- Specified by:
setTimeStamp
in interfaceorg.refcodes.mixin.TimeStampAccessor.TimeStampMutator
- Parameters:
aTimeInMillis
- The sound sample's time positioning in ms.
-
setSamplingRate
public void setSamplingRate(int aSamplingRate)
Sets the sampling rate for the sampling rate property.- Specified by:
setSamplingRate
in interfaceSamplingRateAccessor.SamplingRateMutator
- Parameters:
aSamplingRate
- The sampling rate to be stored by the sampling rate property.
-
-