v2.8.0 - Karlsruhe
Version 2.8 - 'Karlsruhe'
Friday 20th November, 2015
This release, named after Karlsruhe, one of the home cities of live
coding, is mainly a maintenance release with a strong focus on both
performance, stability and documentation. This is therefore the fastest
and most stable release of Sonic Pi ever with a massive 10% performance
improvement on the original Raspberry Pi 1. It also ships with new
translations in Polish, Japanese and French. Many of these improvements
(such as the complete rewrite of the OSC stack) are not documented in
this release list but can instead be found in the commit logs over on
Github.
However, not to go unnoticed are a number of exciting new features. For
example we now have a new Band EQ FX, the ability to use MIDI note names
such as :e5
as values for opts such as cutoff:
, and new powerful
cutoff envelopes on the sampler.
Breaking Changes
- Shortcuts for switching buffers have changed. They are now
M-{
and
M-}
for switching left and right respectively. sync
no longer inherits BPM by default. Set thebpm_sync:
opt to
true to enable BPM inheritance.- Random seed generation for new threads is now reset on calls to
use_random_seed
.
New Fns
octs
- returns a ring of successive octaves.assert
- for raising an exception if the argument is not true.assert_equal
- for raising an exception if the two arguments are not
equal.bt
- converts the specified time w.r.t. the current BPM.inspect
- similar toprint
but prints the inspected version of the argument.
GUI
- New translations for Polish, Japanese and French.
- Improve efficiency of logging panel.
M-RET
is now a duplicate shortcut for running the code.- Log title bar is now hidden in full-screen mode.
- Log - don't display └ or ├ if the line is blank, instead display │
- Add sample name autocompletion to more fns such as
sample_duration
.
Documentation
- New tutorial section on ring chains (chainable functions for modifying rings)
- Tilburg 2 example slightly tweaked for Raspberry Pi 1 compatibility.
- Many minor tweaks and improvements in all areas.
Synths & FX
- New FX - Band EQ for attenuating or boosting a specific frequency band.
- New synth - DPulse - a detuned pulse wave.
- Sampler now has a cutoff envelope which can be accessed via new opts
which mirror the standard envelope opts but with acutoff_
prefix
(such ascutoff_attack
,cutoff_decay_level
and friends). - Sampler now correctly handles samples with different sample rates.
- Bitcrusher FX now has an internal low pass filter modifiable via a new
cutoff
opt. - Panslicer now correctly honours min and max pan values.
- New default opt
on:
for bothsample
andsynth
. This acts like
if
but ensures all the opt vals are evaluated (useful if wanting to
keep the consumption of random streams or ticks consistent even when
not triggering a synth. - MIDI opts such as
cutoff:
can now accept note names such as:c4
. - FX learned the global
slide:
opt to match synths.
Improvements
- Massive performance improvements.
- Teach
play_pattern_timed
to handle rings. current_transpose
now returns 0 if there is no current
transposition.- BPM scaling is now honoured when controlling synths and FX
- All
with_fx*
fns now return the result of their block. spark
now handles rings correctly.spark
now treats booleans as 1s and 0s so you can now spark rings of bools.puts
,print
andmc_message
now handle multiple message arguments
Bug Fixes
- Ensure
with_fx
doesn't swallow TL modifications such as
transposition, current synth etc. - Ensure
with_fx
doesn't affect random seed. - Improve reliability of boot process on Mac and Windows.
- The FX
pre_amp:
opt is no longer scaled w.r.t. the current BPM. - Fixed GUI side of update checking system.
Releases
Mac | |
Link | Sonic-Pi-for-Mac-v2.8.0.dmg |
Size | 61M |
MD5 | 2e6d91fd777900782492ca3b38245723 |
SHA256 | 2e6cceb30d2c464e38810d2e8baadde315fc196aff75f0bb4d445c46a02a9a74 |
Raspberry Pi (Jessie) | |
Link | Sonic-Pi-for-RPi-Jessie-v2.8.0.tgz |
Size | 66M |
MD5 | b47111d04dceb2997540f9e7764b9faa |
SHA256 | 58aa121a24c9d06b958199bdf62aab990c6f424c1e1651de453981788b18ec87 |
Raspberry Pi (Wheezy) | |
Link | Sonic-Pi-for-RPi-Wheezy-v2.8.0.tgz |
Size | 66M |
MD5 | e2f8de24afb93618ffb0f4ca787cfcc1 |
SHA256 | 3f252a7714a5a71d8a03d3d115340c616fa6116acf29f1ae7000d27995333e0d |
Windows | |
Link | Sonic-Pi-for-Win-v2.8.0.msi |
Size | 75M |
MD5 | 26dda533ab64bffa67049f4a50616027 |
SHA256 | 6c427110af73ca396a274f5f5dbcab682634694daef9d7a99fca2fa22ab8c226 |