#include <jack/jack.h>#include <cshellsynth/atomic-types.h>#include <cshellsynth/synth.h>Go to the source code of this file.
Data Structures | |
| struct | cs_cot_t |
Defines | |
| #define | cs_cot_destroy(cs_cot) cs_synth_destroy((cs_synth_t *) (cs_cot)) |
| #define | cs_cot_set_freq(cs_cot, freq) cs_synth_set_freq((cs_synth_t *) (cs_cot), (freq)) |
| #define | cs_cot_set_offset(cs_cot, offset) cs_synth_set_offset((cs_synth_t *) (cs_cot), (offset)) |
| #define | cs_cot_set_amp(cs_cot, amp) cs_synth_set_amp((cs_synth_t *) (cs_cot), (amp)) |
Functions | |
| int | cs_cot_init (cs_cot_t *self, const char *client_name, jack_options_t flags, char *server_name) |
Cotangent Wave Synth
Ruby version: Synths::Cotangent
This produces a wave of the form cot(wt/2)/2
This is useful because
inf Σ sin(nwt) = cot(wt/2)/2 n=1
Note that the ideal cotangent has an infinite peak, though the bandlimited version's peak is finite. You will want to use distortion or some serious amplitude reduction.
| #define cs_cot_destroy | ( | cs_cot | ) | cs_synth_destroy((cs_synth_t *) (cs_cot)) |
Destroy cot synth
See cs_synth_destroy
| #define cs_cot_set_amp | ( | cs_cot, | |||
| amp | ) | cs_synth_set_amp((cs_synth_t *) (cs_cot), (amp)) |
| #define cs_cot_set_freq | ( | cs_cot, | |||
| freq | ) | cs_synth_set_freq((cs_synth_t *) (cs_cot), (freq)) |
| #define cs_cot_set_offset | ( | cs_cot, | |||
| offset | ) | cs_synth_set_offset((cs_synth_t *) (cs_cot), (offset)) |
| int cs_cot_init | ( | cs_cot_t * | self, | |
| const char * | client_name, | |||
| jack_options_t | flags, | |||
| char * | server_name | |||
| ) |
Initialize cot synth
See cs_synth_destroy
1.6.3