Package net.paulhertz.pixelaudio
Class WaveSynth
java.lang.Object
net.paulhertz.pixelaudio.WaveSynth
Implements a combination of color organ and additive audio synth.
Animates pixels using phase shifting of audio generators in
waveDataList
.-
Field Summary
FieldsModifier and TypeFieldDescriptionint
float[]
int[]
comments for JSON fileint
float
float
int[]
int
int
boolean
float
the increment in phase over the image pixels, typically TWO_PI / image sizeint
int[]
array of color values for mask, especially useful when it is constantfloat
float[]
int
The sampling frequency, the number of samples read in one second of sound.int
int
boolean
int
int[]
array of colors associated with the WaveData operatorsfloat[]
array of amplitudes associated with the WaveData operatorsfloat
offset for normailzing signal, see renderFrame methodfloat
scaling facotr for normalizing signal, see renderFrame method -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionclone()
int
float
getGain()
float
getGamma()
int
static int[]
getHistoBounds
(int[] source) int
int
float
int
int
getStep()
int
getStop()
int
int
getWidth()
boolean
boolean
boolean
float
noiseAt
(int x, int y) static float[]
normalize
(float[] sig) static float[]
normalize
(float[] sig, float limit) void
float[]
renderAudio
(int frame) float[]
renderAudio
(int frame, float limit) float[]
renderAudioRaw
(int frame) void
renderFrame
(int frame) int
renderPixel
(int frame, int pos, ArrayList<WaveData> wdList) void
setAnimSteps
(int animSteps) void
setComments
(String comments) void
setEditMode
(boolean isEditMode) void
setGain
(float gain) void
setGamma
(float gamma) void
setHistoHigh
(int histoHigh) void
setHistoLow
(int histoLow) void
setMapper
(PixelAudioMapper mapper) void
setNoiseiness
(float noiseiness) void
setRenderAudio
(boolean isRenderAudio) void
setSampleRate
(int newSampleRate) void
setScaleHisto
(boolean isScaleHisto) void
setStep
(int step) void
setStop
(int stop) void
setVideoFilename
(String videoFilename) void
setVideoFramerate
(int videoFramerate) void
setWaveData
(ArrayList<WaveData> wdList) void
setWaveDataList
(ArrayList<WaveData> waveDataList) static int[]
stretch
(int[] source, int low, int high) toString()
int
weightedColor
(int[] colors, float[] weights)
-
Field Details
-
mapper
-
mapImage
-
colorSignal
public int[] colorSignal -
audioSignal
public float[] audioSignal -
renderSignal
public float[] renderSignal -
waveDataList
-
mapSize
public int mapSize -
dataLength
public int dataLength -
gain
public float gain -
gamma
public float gamma -
gammaTable
public int[] gammaTable -
useGammaTable
public boolean useGammaTable -
isScaleHisto
public boolean isScaleHisto -
histoLow
public int histoLow -
histoHigh
public int histoHigh -
animSteps
public int animSteps -
step
public int step -
stop
public int stop -
noisiness
public float noisiness -
comments
comments for JSON file -
sampleRate
public int sampleRateThe sampling frequency, the number of samples read in one second of sound. By default, for WaveSynth instances that are intended to be primarily visual, mapSize is the sampling frequency. This makes one period of a 1.0 Hz wave fill the entire signal curve. OTOH, if we want the image to represent an audio signal that is also produced by additive synthesis, we should set samplingFrequency to a standard such as 44100 or 48000. -
mapInc
public float mapIncthe increment in phase over the image pixels, typically TWO_PI / image size -
weights
public float[] weightsarray of amplitudes associated with the WaveData operators -
waveColors
public int[] waveColorsarray of colors associated with the WaveData operators -
maskScan
public int[] maskScanarray of color values for mask, especially useful when it is constant -
woff
public float woffoffset for normailzing signal, see renderFrame method -
wscale
public float wscalescaling facotr for normalizing signal, see renderFrame method -
videoFramerate
public int videoFramerate -
videoFilename
-
-
Constructor Details
-
WaveSynth
-
-
Method Details
-
setMapper
-
setWaveData
-
getWaveDataList
-
setWaveDataList
-
getGain
public float getGain() -
setGain
public void setGain(float gain) -
getGamma
public float getGamma() -
setGamma
public void setGamma(float gamma) -
isScaleHisto
public boolean isScaleHisto() -
setScaleHisto
public void setScaleHisto(boolean isScaleHisto) -
getHistoLow
public int getHistoLow() -
setHistoLow
public void setHistoLow(int histoLow) -
getHistoHigh
public int getHistoHigh() -
setHistoHigh
public void setHistoHigh(int histoHigh) -
getNoiseiness
public float getNoiseiness() -
setNoiseiness
public void setNoiseiness(float noiseiness) -
getAnimSteps
public int getAnimSteps() -
setAnimSteps
public void setAnimSteps(int animSteps) -
getStop
public int getStop() -
setStop
public void setStop(int stop) -
getStep
public int getStep() -
setStep
public void setStep(int step) -
getComments
-
setComments
-
getVideoFramerate
public int getVideoFramerate() -
setVideoFramerate
public void setVideoFramerate(int videoFramerate) -
getVideoFilename
-
setVideoFilename
-
getMapper
-
getWidth
public int getWidth() -
getHeight
public int getHeight() -
getSampleRate
public int getSampleRate() -
setSampleRate
public void setSampleRate(int newSampleRate) -
clone
-
toString
-
isRenderAudio
public boolean isRenderAudio() -
setRenderAudio
public void setRenderAudio(boolean isRenderAudio) -
isEditMode
public boolean isEditMode() -
setEditMode
public void setEditMode(boolean isEditMode) -
prepareAnimation
public void prepareAnimation() -
renderFrame
public void renderFrame(int frame) -
renderPixel
-
weightedColor
public int weightedColor(int[] colors, float[] weights) -
renderAudio
public float[] renderAudio(int frame) -
renderAudioRaw
public float[] renderAudioRaw(int frame) -
renderAudio
public float[] renderAudio(int frame, float limit) -
noiseAt
public float noiseAt(int x, int y) -
normalize
public static float[] normalize(float[] sig, float limit) -
normalize
public static float[] normalize(float[] sig) -
getHistoBounds
public static int[] getHistoBounds(int[] source) -
stretch
public static int[] stretch(int[] source, int low, int high)
-