Tuesday 25th November, 2014
- Windows version no longer needs special firewall exceptions to run
- Added license information to info window
- Minor grammar and spelling tweaks to tutorial
Friday 21st November, 2014
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 exellent 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.
- 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 bothsleep
andsync
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
andsynth
now treat 'notes'nil
,:r
and:rest
as rests and don't trigger any synths.
- 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
- 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
andrrand_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
- 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
Tuesday 9th September, 2014
- Fix recording functionality
- Improve documentation content and layout
- Close off OSC server from external clients
- Add History, Contributors and Community pages to info window
- Improve startup speed on OS X
- Re-work and add to shortcuts for key actions:
- on RP they are all
alt-*
prefixed - on OS X they are all
cmd-*
prefixed
- on RP they are all
- Improve highlighting of log messages (
cue
/sync
messages are more clearly highlighted) - Log now communicates when a run has completed executing
- Fix bug encountered when stopping threads in super fast loops (stopped comms with server)
Tuesday 2nd September, 2014
- Complete rewrite since v1.0
- Support for Live Coding - redefining behaviour whilst music is playing
- New timing system - timing now guaranteed to be accurate
- Many new synths
- New chainable studio FX system
- Support for sample playback
- Inclusion of over 70 CC0 licensed samples from http://freesound.org
- Support for controlling and modifying synth, fx and sample playback arguments after they have been triggered
- Completely re-designed GUI
- Help system with full documentation, tutorial and many examples
- Record functionality (for recording performances/pieces)
- Suport for controlling system audio settings on RP