github sonic-pi-net/sonic-pi v2.1.0
v2.1.0 - 'Core'

latest releases: v4.5.1, v4.5.0, v4.4.0...
7 years ago

The focus of release is very much on technical improvements, efficiency
and general polish.

The most obvious and exciting change is the introduction of the
live_loop which will change the way you work with Sonic Pi. For more
information on live_loop take a look at the new section in the
tutorial. Another very exciting development is that v2.1 marks the
official support for Windows thanks to the excellent work by Jeremy
Weatherford. Finally, this release is also the first release where Sonic
Pi has a Core Team of developers. Please give a warm welcome to Xavier
Riley, Jeremy Weatherford and Joseph Wilk.

API Changes

  • New fn live_loop - A loop for live coding
  • New fn inc - increment
  • New fn dec - decrement
  • New fn quantise - quantise a value to resolution
  • New fn factor? - Factor test
  • New fn at - Run a block at the given times
  • New fn degree - for resolving a note in a scale by degree such as :i, :iv
  • New fn chord_degree - Construct chords based on scale degrees
  • New TL fn use_sample_bpm - for changing the BPM based on a sample's duration
  • New fn rest? - Determine if note or args is a rest
  • New fn vt - Get virtual time
  • New fn set_control_delta! - Set control delta globally
  • wait now handles both sleep and sync functionality
  • Allow first arg to play to be a proc or lambda. In which case simple call it and use the result as the note
  • Teach play to accept a single map argument (in which case it will extract :note key out if it exists.
  • Fns play and synth now treat 'notes' nil, :r and :rest as rests and don't trigger any synths.

GUI Modifications

  • Updated and improved tutorial
  • Much improved autocompletion
  • Add HPF, LPF, mono forcer and stereo swapping preferences to new studio section for use when performing with Sonic Pi through an external PA.
  • Shortcuts overhauled - now supports basic Emacs-style Ctrl-* navigation.
  • Shortcuts Alt-[ and Alt-] now cycle through workspaces
  • Shortcuts now work when toolbar is hidden
  • Font sizes for individual workspaces are now stored between sessions
  • Ctl-Mouse-wheel zooms font on Windows
  • Links are now clickable (opening external browser)
  • Entries in docsystem's synth arg table are now clickable and will take focus down to arg documentation
  • Stop users accidentally clearing entire workspace if they type quickly after hitting run
  • Hitting F1 or C-i over a function name now opens up the doc system at the relevant place

Bugs/Improvements

  • Reworked examples.
  • Much improved efficiency in many areas - especially for Raspberry Pi.
  • Avoid occasional clicking sound when stopping runs
  • Note Cb is now correctly resolved to be a semitone lower than C
  • Non RP systems now start with more audio busses (1024)
  • Array#sample and Array#shuffle are now correctly seeded with thread local random generator
  • Log files are now placed into ~/.sonic-pi/log
  • Chords and scales now wrap around when accessed from indexes outside of their range.
  • rand_i and rrand_i now correctly return integers rather than floats
  • rrand arguments now correctly handle a range of 0 (i.e. min == max)
  • Line offset in error messages is now correct
  • When saving files on Windows, CRLF line endings are used
  • Stop users defining functions with same name as core API fns

Synths, Samples & FX

  • New samples (bass drums, snares and loops)
  • Allow mod_range param to have negative values (for oscillating with lower notes)
  • Change slide mechanism to default to linear sliding with support for changing the curve type. All modifiable args now have corresponding _slide_shape and _slide_curve args.
  • Improve TB303 synth - now supports separate cutoff ADSR envelopes. New args:
    • cutoff_attack,
    • cutoff_sustain,
    • cutoff_decay,
    • cutoff_release,
    • cutoff_min_slide,
    • cutoff_attack_level,
    • cutoff_sustain_level,
    • cutoff_env_curve

Releases

Mac
Link Sonic-Pi-for-Mac-v2.1.0.dmg
Size 52M
MD5 e782e7ad0ff742c7ef8d672daf0f1cd6
SHA256 8adcc17b43406f39cd7fb6a59bcb7e29641c09eda131f98272d1b8ab04899e1e
Raspberry Pi (Wheezy)
Link Sonic-Pi-for-RPi-Wheezy-v2.1.0.tgz
Size 36M
MD5 1db953dfb3b44a2e30d1bebf61682833
SHA256 2d094e3bab7a63b72d400c1ef8c0bed31e4eceeb042f28de26cf26a372a568f5
Windows
Link Sonic-Pi-for-Win-v2.1.0.msi
Size 65M
MD5 6ee01a5c980621ca73dd5a0bc50d656d
SHA256 25dd2dad75c7c78067ac0e8f1fe3d147d843a1e1f4d23e14de52d32002b639cb

Don't miss a new sonic-pi release

NewReleases is sending notifications on new releases.