Package wellen.dsp
Class Sampler
java.lang.Object
wellen.dsp.Sampler
- All Implemented Interfaces:
DSPNodeOutput
plays back an array of samples at different speeds.
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
add_listener
(SamplerListener sampler_listener) void
static void
draw_sampler_buffer_circular
(Sampler sampler, processing.core.PGraphics g, float radius_min, float radius_max, int step) static void
draw_sampler_position_circular
(Sampler fSampler, processing.core.PGraphics g, float radius_min, float radius_max) void
enable_loop
(boolean loop) int
void
forward()
float[]
float
int
int
get_in()
int
int
float
int
float
int
get_out()
int
float
float
float
boolean
void
interpolate_samples
(boolean interpolate_samples) boolean
boolean
boolean
load
(byte[] buffer) load the sample data from *raw* byte data.load
(byte[] buffer, boolean little_endian) load the sample data from *raw* byte data.void
note_off()
void
note_on()
void
note_on
(int note, int velocity) float
output()
returns the output signal.void
void
play()
void
record
(float sample) void
record
(float[] samples) boolean
remove_listener
(SamplerListener sampler_listener) void
void
rewind()
void
set_amplitude
(float amplitude) void
set_buffer
(float[] buffer) void
set_duration
(float seconds) void
set_edge_fading
(int edge_fade_padding) void
set_frequency
(float frequency) void
set_in
(int in_point) void
void
set_loop_in
(int loop_in_point) void
set_loop_in_normalized
(float loop_in_point_normalized) void
set_loop_out
(int loop_out_point) void
set_loop_out_normalized
(float loop_out_point_normalized) void
set_out
(int out_point) void
set_speed
(float speed) void
void
stop()
void
tune_frequency_to
(float frequency_scale) this function can be used to tune a loaded sample to a specific frequency.
-
Field Details
-
NO_LOOP_POINT
public static final int NO_LOOP_POINT- See Also:
-
-
Constructor Details
-
Sampler
public Sampler() -
Sampler
public Sampler(int buffer_size) -
Sampler
public Sampler(float[] buffer) -
Sampler
public Sampler(float[] buffer, float sampling_rate)
-
-
Method Details
-
add_listener
-
remove_listener
-
load
load the sample data from *raw* byte data. the method assumes a raw format with 32bit float in a value range from -1.0 to 1.0.- Parameters:
buffer
- raw byte data ( assuming 4 bytes per sample, 32-bit float aka WAVE_FORMAT_IEEE_FLOAT_32BIT )- Returns:
- instance with buffer loaded
-
load
load the sample data from *raw* byte data. the method assumes a raw format with 32bit float in a value range from -1.0 to 1.0.- Parameters:
buffer
- raw byte data ( assuming 4 bytes per sample, 32-bit float aka WAVE_FORMAT_IEEE_FLOAT_32BIT )little_endian
- true if byte data is arranged in little endian order- Returns:
- instance with buffer loaded
-
get_in
public int get_in() -
set_in
public void set_in(int in_point) -
get_out
public int get_out() -
set_out
public void set_out(int out_point) -
get_speed
public float get_speed() -
set_speed
public void set_speed(float speed) -
set_frequency
public void set_frequency(float frequency) -
set_amplitude
public void set_amplitude(float amplitude) -
get_buffer
public float[] get_buffer() -
set_buffer
public void set_buffer(float[] buffer) -
interpolate_samples
public void interpolate_samples(boolean interpolate_samples) -
interpolate_samples
public boolean interpolate_samples() -
get_position
public int get_position() -
get_position_normalized
public float get_position_normalized() -
get_position_fractional_part
public float get_position_fractional_part() -
is_playing
public boolean is_playing() -
set_duration
public void set_duration(float seconds) -
get_duration
public float get_duration() -
output
public float output()Description copied from interface:DSPNodeOutput
returns the output signal.- Specified by:
output
in interfaceDSPNodeOutput
- Returns:
- output signal
-
get_edge_fading
public int get_edge_fading() -
set_edge_fading
public void set_edge_fading(int edge_fade_padding) -
rewind
public void rewind() -
forward
public void forward() -
is_looping
public boolean is_looping() -
enable_loop
public void enable_loop(boolean loop) -
set_loop_all
public void set_loop_all() -
play
public void play() -
stop
public void stop() -
start_recording
public void start_recording() -
resume_recording
public void resume_recording() -
pause_recording
public void pause_recording() -
delete_recording
public void delete_recording() -
record
public void record(float sample) -
record
public void record(float[] samples) -
is_recording
public boolean is_recording() -
get_length_recording
public int get_length_recording() -
end_recording
public int end_recording() -
get_loop_in
public int get_loop_in() -
set_loop_in
public void set_loop_in(int loop_in_point) -
get_loop_in_normalized
public float get_loop_in_normalized() -
set_loop_in_normalized
public void set_loop_in_normalized(float loop_in_point_normalized) -
get_loop_out
public int get_loop_out() -
set_loop_out
public void set_loop_out(int loop_out_point) -
get_loop_out_normalized
public float get_loop_out_normalized() -
set_loop_out_normalized
public void set_loop_out_normalized(float loop_out_point_normalized) -
note_on
public void note_on() -
note_on
public void note_on(int note, int velocity) -
note_off
public void note_off() -
tune_frequency_to
public void tune_frequency_to(float frequency_scale) this function can be used to tune a loaded sample to a specific frequency. after the sampler has been tuned the methodset_frequency(float)
can be used to play the sample at a desired frequency.- Parameters:
frequency_scale
- the assumed frequency of the sampler buffer in Hz
-
draw_sampler_buffer_circular
public static void draw_sampler_buffer_circular(Sampler sampler, processing.core.PGraphics g, float radius_min, float radius_max, int step) -
draw_sampler_position_circular
public static void draw_sampler_position_circular(Sampler fSampler, processing.core.PGraphics g, float radius_min, float radius_max)
-