Synths¶
Synths are used by the wave channel to define the shape of its waveform and how that shape changes over time.
A synth is defined by a sequence of 16 waveforms. In LSDJ waveforms can be drawn by hand, or can be generated by tweaking the softsynth’s parameters.
If you update the synth’s waves or its parameters, the synth’s wave synth overwrite lock in its parent song will be updated appropriately. Modifying the wave frames manually will enable the lock, while modifying its parameters will disable the lock.
Usage Examples¶
# Get the raw waveforms for synth $3
waves = song.synths[0x3].waves
# Get the end volume for synth $9
vol = song.synths[0x9].end.volume
API Reference¶
-
class
pylsdj.
Synth
(song, index)¶ -
distortion
¶ use
"clip"
or"wrap"
distortion
-
end
¶ parameters for the end of the sound, represented as a SynthSoundParams object
-
filter_resonance
¶ boosts the signal around the cutoff frequency, to change how bright or dull the wave sounds
-
filter_type
¶ the type of filter applied to the waveform; one of
"lowpass"
,"highpass"
,"bandpass"
,"allpass"
-
index
¶ the synth’s index within its parent song’s synth table
-
phase_type
¶ compresses the waveform horizontally; one of
"normal"
,"resync"
,"resync2"
-
song
¶ the synth’s parent Song
-
start
¶ parameters for the start of the sound, represented as a SynthSoundParams object
-
wave_synth_overwrite_lock
¶ if True, the synth’s waveforms override its synth parameters; if False, its synth parameters override its waveforms
-
waveform
¶ the synth’s waveform type; one of
"sawtooth"
,"square"
,"sine"
-
waves
¶ a list of the synth’s waveforms, each of which is a list of bytes
-