chippy - API documentation¶
- class chippy.Synthesizer(framerate=44100, amplitude=1.0)¶
- add_wave_header(pcm_data)¶
Add a RIFF standard Wave header to raw PCM data
- Parameters:
pcm_data – A bytestring of raw PCM data.
- Returns:
A fully formed Wave object with correct file header, ready to be saved to disk or used directly.
- adsr_envelope(attack, decay, release, length, sustain_level=0.5)¶
An Attack, decay, sustain, release envelope.
- Parameters:
attack – The attack rate in seconds.
decay – The decay rate in seconds.
release – The release rate in seconds.
length – The total length in seconds. Must be larger than
the attack, decay, and release rates combined. :param sustain_level: The sustain amplitude, on a scale from 0.0 to 1.0. :return: A finite iterator for the length provided.
- static composite_generator(*generators)¶
Creates a composited generator of all input generators.
- Parameters:
generators – Two or more wave generators.
- Returns:
A new generator with the summed value of the input generators.
- static flat_envelope(amplitude)¶
A flat envelope, which has essentially no effect.
- Parameters:
amplitude – The flat amplitude to return.
- Returns:
An infinite repeat of the amplitude provided.
- linear_decay_envelope(length, peak=1.0)¶
A simple linear decay envelope.
- Parameters:
length – The total length in seconds.
peak – The initial peak amplitude, on a scale of 0.0 to 1.0.
- Returns:
A finite iterator for the length provided.
- static save_raw_pcm(pcm_data, file_name='rawpcm.wav')¶
Save raw PCM data to disk, removing RIFF header if any.
- Parameters:
pcm_data – A bytestring of raw PCM data.
file_name – Desired file name. Defaults to “rawpcm.wav”.
- save_wave(pcm_data, file_name='riffwave.wav')¶
Add a RIFF Wave header to raw PCM data, and save to disk.
- Parameters:
pcm_data – A bytestring of raw PCM data.
file_name – Desired file name. Defaults to “riffwave.wav”.