public class Wave
extends java.lang.Object
implements java.io.Serializable
Constructor and Description |
---|
Wave()
Constructor
|
Wave(java.io.InputStream inputStream)
Constructor
|
Wave(java.lang.String filename)
Constructor
|
Wave(WaveHeader waveHeader,
byte[] data)
Constructor
|
Modifier and Type | Method and Description |
---|---|
byte[] |
getBytes()
Get the wave data in bytes
|
byte[] |
getFingerprint() |
FingerprintSimilarity |
getFingerprintSimilarity(Wave wave) |
double[] |
getNormalizedAmplitudes() |
short[] |
getSampleAmplitudes()
Get the amplitudes of the wave samples (depends on the header)
|
Spectrogram |
getSpectrogram()
Get the wave spectrogram
|
Spectrogram |
getSpectrogram(int fftSampleSize,
int overlapFactor)
Get the wave spectrogram
|
WaveHeader |
getWaveHeader()
Get the wave header
|
void |
leftTrim(double second)
Trim the wave data from beginning
|
void |
leftTrim(int numberOfSample)
Trim the wave data from beginning
|
float |
length()
Length of the wave in second
|
void |
rightTrim(double second)
Trim the wave data from ending
|
void |
rightTrim(int numberOfSample)
Trim the wave data from ending
|
int |
size()
Data byte size of the wave excluding header size
|
java.lang.String |
timestamp()
Timestamp of the wave length
|
java.lang.String |
toString() |
void |
trim(double leftTrimSecond,
double rightTrimSecond)
Trim the wave data
|
void |
trim(int leftTrimNumberOfSample,
int rightTrimNumberOfSample)
Trim the wave data
|
public Wave()
public Wave(java.lang.String filename)
filename
- Wave filepublic Wave(java.io.InputStream inputStream)
inputStream
- Wave file input streampublic Wave(WaveHeader waveHeader, byte[] data)
waveHeader
- data
- public void trim(int leftTrimNumberOfSample, int rightTrimNumberOfSample)
leftTrimNumberOfSample
- Number of sample trimmed from beginningrightTrimNumberOfSample
- Number of sample trimmed from endingpublic void leftTrim(int numberOfSample)
numberOfSample
- numberOfSample trimmed from beginningpublic void rightTrim(int numberOfSample)
numberOfSample
- numberOfSample trimmed from endingpublic void trim(double leftTrimSecond, double rightTrimSecond)
leftTrimSecond
- Seconds trimmed from beginningrightTrimSecond
- Seconds trimmed from endingpublic void leftTrim(double second)
second
- Seconds trimmed from beginningpublic void rightTrim(double second)
second
- Seconds trimmed from endingpublic WaveHeader getWaveHeader()
public Spectrogram getSpectrogram()
public Spectrogram getSpectrogram(int fftSampleSize, int overlapFactor)
fftSampleSize
- number of sample in fft, the value needed to be a number to power of 2overlapFactor
- 1/overlapFactor overlapping, e.g. 1/4=25% overlapping, 0 for no overlappingpublic byte[] getBytes()
public int size()
public float length()
public java.lang.String timestamp()
public short[] getSampleAmplitudes()
public java.lang.String toString()
toString
in class java.lang.Object
public double[] getNormalizedAmplitudes()
public byte[] getFingerprint()
public FingerprintSimilarity getFingerprintSimilarity(Wave wave)