Sonic Pi Versions Save

Code. Music. Live.

v4.5.1

1 week ago

This is a maintanence and bugfix release which includes updates to all the major internal dependencies. The main goal of this release is to fix boot issues on Windows with specific locale settings.

Translations

  • Improvements to the Chinese, Dutch, German, Indonesian, Italian, Japanese and Russian translations.

Bugfixes

  • Only remove one level of comments when uncommenting

Releases

Mac - Intel (macOS 12+)
Link Sonic-Pi-for-Intel-Mac-x64-v4-5-1.dmg
Size 145M
MD5 3de35c6ca9ac1396a43156c1e3fa2fb3
SHA256 15d589a27636edc4a4b9e9685950d857c7dd076d310497d650f90a387645456a
Mac - Apple Silicon (macOS 13+)
Link Sonic-Pi-for-Mac-arm64-v4-5-1.dmg
Size 127M
MD5 0da7cc7508f2ec94e701ef3e7864b364
SHA256 58c72fca0b42588060c21d4d677cc8ffe377ef82409e7f2a73fff0fc2163d278
Windows x64 (10/11)
Link Sonic-Pi-for-Win-x64-v4-5-1.msi
Size 247M
MD5 c35cef126c7e7115f6ef147ff9e82999
SHA256 6caae70cd6c6c289c8b3a4a368edaff76f5e513989ece5ff4f5d77acf3c7ed7b
Raspberry Pi OS (Bookworm)
Link sonic-pi_4.5.1_1_bookworm.arm64.deb
Size 87M
MD5 d2c98f287b9941c468f936890b733d71
SHA256 2808c21863fcd3dd9bd7efdf4fecd802510451a92eda578ff9f69b7f5e1806d4

v4.5.0

6 months ago

This release comes packed with a number of exciting new synths for you to play with. We have a new hard-hitting kick drum :gabberkick for that gabber sound and a new vintage electric piano :rhodey synth. There are also 16 new percussive synths inspired by the infamous TR 808 drum synthesiser. All the synths come with many opts for you to play with to manipulate and change the default timbres.

There are also a number of minor improvements and bug fixes as detailed below.

Have fun and get your live coded 808 on!

Synths

  • New synth: :rhodey - The sound of an electric piano from the 60's and 70's, producing a characteristic metallic sound for notes below :g2. Adapted for Sonic Pi from SuperCollider Code.
  • New synth :gabberkick - An aggressive Gabber synth sound adapted for Sonic Pi from SuperCollider Code
  • 16 new 808 inspired synths based on Yoshinosuke Horiuchi's: :sc808_bassdrum, :sc808_snare, :sc808_clap, :sc808_tomlo, :sc808_tommid, :sc808_tomhi, :sc808_congalo, :sc808_congamid, :sc808_congahi, :sc808_rimshot, :sc808_claves, :sc808_maracas, :sc808_cowbell, :sc808_closed_hihat, :sc808_open_hihat, :sc808_cymbal,

Improvements

  • Improve error message for invalid midi_to_hz args

Translations

  • Improvements to the Chinese, Danish, Portuguese, and Spanish translations.
  • Add native language name for Arabic

Bugfixes

  • Fixed a regression in the error reporting - "did you mean" suggestions now work again.
  • Fix system language detection when the language is generic English

Releases

Mac - Apple Silicon (macOS 13+)
Link Sonic-Pi-for-Mac-arm64-v4-5-0.dmg
Size 126M
MD5 24d52ebb3695881c3fda10c0dbbf51e6
SHA256 3e333bbaaeed36331448eb4a7e31faf866b2c8176ab59962ba3d5d48d6dce7b0
Mac - Intel (macOS 11+)
Link Sonic-Pi-for-Intel-Mac-x64-v4-5-0.dmg
Size 163M
MD5 9f5d77d2213cf3e85d544c51ff6c72ab
SHA256 e5aee461fba113ef3e3a43ba9feb8e49bcf824e76d4aa195191c82d4ce387ab3
Windows x64 (10/110)
Link Sonic-Pi-for-Win-x64-v4-5-0.msi
Size 218M
MD5 3892e2084a1c74da3285133c6368b6cf
SHA256 4c52da5ee00c4404f267c2ae2d85607334b0f852cc2d0150548cc682108e5592
Raspberry Pi OS 64bit 'Bookworm' - released on October 10th 2023
Link sonic-pi_4.5.0_1_bookworm.arm64.deb
Size 87M
MD5 c1db90f1c28bd3934d8cfb9cdd4c4c01
SHA256 6ee415a1a97448adc517723e624611493dfe68b7c7f8d355563fda9bc75c00be

v4.4.0

10 months ago

This release comes chock-full of new samples to play with. Firstly we have 5 new samples donated to Sonic Pi by the wonderful electric artist Arovane. These are a selection of glitchy beats recorded at 130 BPM. To best use these either use_bpm 130 or use the beat_stretch opt to make them fit seamlessly into your current BPM. They're also wonderful to use with the onset: option for extracting individual sounds to use on their own. Thank-you so much to Arovane for letting us play with these amazing new sounds.

Continuing on the sample theme, there are also 20 new hi-hat samples. These all have a :hat_ prefix and there's a wide variety of sounds to play with ranging from acoustic to electro to metal. They're perfect for adding a sense of drive or groove to your tracks.

This version of Sonic Pi is also the first to support a fully native build for Apple Macs running Apple Silicon CPUs such as the M1 and M2. This means that Sonic Pi can now run on modern Mac computers without needing Rosetta to run things under emulation.

Samples

  • New looping samples contributed by the wonderful electronic artist Arovane. The new samples are: :arovane_beat_a, :arovane_beat_b, :arovane_beat_c, :arovane_beat_d, :arovane_beat_e.
  • 20 new hi-hat samples: :hat_snap, :hat_zap, :hat_cats, :hat_tap, :hat_bdu, :hat_psych, :hat_zild, :hat_zan, :hat_zgump, :hat_noiz, :hat_sci, :hat_star, :hat_gem, :hat_raw, :hat_yosh, :hat_mess, :hat_cab, :hat_gnu, :hat_hier, :hat_metal.

GUI

  • Improve text formatting of the information window that pops up with a boot error.

Documentation

  • Improvements to section 8.2 of the tutorial where the code has been updated to better match the behaviour of play_pattern_timed.
  • Improved play_pattern_timed function documentation.

Translations

  • Improvements to the Catalan, Chinese, Croatian, French, Georgian, Hebrew, Indonesian, Latvian, German, Portuguese, Russian, Slovak, Spanish, Swahili and Turkish translations.

Bugfixes

  • Syntax and runtime errors are now correctly coloured once again - pink for runtime and blue for syntax.
  • Fix == operator when comparing maps with nil. Now returns false as expected.

Releases

Mac - Apple Silicon (macOS 13+)
Link Sonic-Pi-for-Mac-arm64-v4-4-0.dmg
Size 141M
MD5 7f0b2cc9dfb631356be91c4e87100935
SHA256 fa4020ac4c3259bbed6d456c4b0e13126fe404c1b474654bffd583335f5d0ab5
Mac - Intel (macOS 11+)
Link Sonic-Pi-for-Intel-Mac-x64-v4-4-0.dmg
Size 166M
MD5 314e140a83a1abc845925b0676890a2b
SHA256 7ed0e94cf92fdf2e8d51ee42c5f7c3478fbcef9630eb12dccf203f5e72bb517f
Windows x64 (10/11)
Link Sonic-Pi-for-Win-x64-v4-4-0.msi
Size 261M
MD5 2d7527943c145f1a37d137af9bde5c89
SHA256 bc51015840161b1f0bfe4ccaae9cc0edbbe8a9d3d45799b8b2da1feb7dfc7ca9
Raspberry Pi - 64 bit (Bullseye)
Link sonic-pi_4.4.0_1_bullseye.arm64.deb
Size 96M
MD5 ba5ef6e4c79370d9f62a94314daf3fa8
SHA256 0f0ce293470663ab23d1e5314d8256fc20ee9fc94e1f9b8235b6bd5c727a3326

v4.3.0

1 year ago

Version 4.3.0 'Pathfinder'

30th September 2022

This is another maintenance and bugfix release - primarily addressing a critical issue with configuring external sound cards for audio input. This was accidentally introduced in v4.2. An issue with the auto-indentation preference in the GUI has also been addressed.

The GUI is now restricted to having one instance open at any one time. Having multiple instances of Sonic Pi running simultaneously can cause conflicts. This is now no longer possible, which should reduce any issues users may have observed when accidentally opening the app multiple times in quick succession. Now, only the first instance will open and all the subsequent others will exit before starting if they detect another instance already running.

GUI

  • Restrict running instances to only allow one instance of Sonic Pi to be running at any one time on a given machine.

Translations

  • Improvements to the Dutch, Estonian, Japanese and Polish translations.

Bugfixes

  • The behaviour of external audio card configuration should now be as it was in v4.1.
  • The auto-indent preference in the GUI now works as expected. Unchecking will stop the GUI from automatically reformatting the code.

Releases

macOS 10.15+
Link Sonic-Pi-for-Mac-x64-v4-3-0.dmg
Size 128M
MD5 a72795543420734aabd6fc004debd0b4
SHA256 c5646b221d61ba55c8e1025a646718d1244333bd57e2a7bccc8eb71c5a7be585
Windows x64 10/11
Link Sonic-Pi-for-Win-x64-v4-3-0.msi
Size 203M
MD5 2d0c9796fb67a956b85820459ad0cb22
SHA256 86074ea63392c145d037eae54567311f0a8178906a3e2fe809746ce966c612cc
Raspberry Pi OS - Bullseye - (64 bit)
Link sonic-pi_4.3.0_1_bullseye.arm64.deb
Size 88M
MD5 41439e913679787cfb579aaa4a36ea9e
SHA256 44acb5b1cf6aee18f282fa15109b27f8d0336cb20841b755154fc8e947568bc5
Raspberry Pi OS - Bullseye - (32 bit)
Link sonic-pi_4.3.0_1_bullseye.armhf.deb
Size 88M
MD5 cd5e2570d3f9fb68f06b8f4d282effdb
SHA256 61fe3ac0747e9b8440857d4d71d79b1360376efeb5f765258d2ce82477891525

v2.1.1

1 year ago
  • Windows version no longer needs special firewall exceptions to run
  • Added license information to info window
  • Minor grammar and spelling tweaks to tutorial

Full Changelog: https://github.com/sonic-pi-net/sonic-pi/compare/v2.1.0...v2.1.1

v4.2.0

1 year ago

Version 4.2.0 'Batch'

14th September 2022

The main purpose of this release is to address a booting issue discovered on a school Windows cluster with common security restrictions. This issue was reported by Adam Cooper from Moor Park High School & Sixth Form in the UK. Adam was wonderfully helpful in finding the specific issue and testing potential solutions. Thanks Adam!

If you happen to have had any trouble running v4 of Sonic Pi on your school clusters, please give this release a go! (Note, this issue didn't affect v3 of Sonic Pi).

In addition, there have been some translation improvements, Global Time Warp now has a greater range and a couple of time_warp related bugs were found and dealt with. Have fun!

GUI

  • Change Global Time Warp range from +-250 to -250 -> 999. This lets users access the full phase down to a BPM of 48.

Improvements

  • Booting process on Windows has been modified to enable it to run when executing in an environment which restricts access to CMD (which prevents terminal usage and running .bat files). This is typical in schools.
  • Sonic Pi stores all its history, configuration and logs in a folder called .sonic-pi which is typically placed in the user's home directory. If the user happens to not have permission to write to their home directory, Sonic Pi now raises a descriptive error on boot and explains that the fix is to set an environment variable called SONIC_PI_HOME to point to a directory the user does have permission to write to.

Translations

  • Improvements to the Dutch, Hungarian and Indonesian translations.

Bugfixes

  • Teach timing safety system that time_warp doesn't sleep (even if it contains calls to sleep internally). This now means that wrapping all code within a live_loop with time_warp no longer causes the thread to spin out of control. It instead reports that the live loop did not sleep as expected.
  • Throw error when attempting to call sync within a time_warp. This is because time warps are effectively timeless and sync asks the running thread to wait for an unknown period (until a matching event appears). Attempting to wait within a timeless context is clearly nonsensical!

Releases

macOS 10.15+
Link Sonic-Pi-for-Mac-x64-v4-2-0.dmg
Size 128M
MD5 da5ee6df18ca869729ec001bad75051c
SHA256 08fa08e5a6fbdc8adb000a832c03e4f98aeaf8688104b7c6ecf54a0a3ab9d0e0
Windows x64 10/11
Link Sonic-Pi-for-Win-x64-v4-2-0.msi
Size 203M
MD5 dacbcc04ba4bdd9ce5da6603db34cd2b
SHA256 e71329970bc4ca024290586cd253832535554e50afce3b3df98cb858193c8710
Raspberry Pi OS (Bullseye) 64 bit
Link sonic-pi_4.2.0_1_bullseye.arm64.deb
Size 88M
MD5 7bffc92ea2172ddb5b4bb9bab49e9c81
SHA256 433ffd5bcd8e55aa743a3e8b1c76f04d2a4799c05847ce882a64cfe5f62f9366
Raspberry Pi OS (Bullseye) 32 bit
Link sonic-pi_4.2.0_1_bullseye.armhf.deb
Size 88M
MD5 18725a00c1bd9ff7291fec0206bac228
SHA256 37ab107fa72bf43e4f38922d6d00dcf8179fe9ce6ca5086bdaf72cd61740a033

v2.0.1

1 year ago

Version 2.0.1 - 'Phoenix'

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
  • 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)

v4.1.0

1 year ago

Version 4.1.0 'Phase'

30th August 2022

The release of v4 of Sonic Pi introduced the ability to change the tempo of live running code to an external beat. This is possible either by setting the tempo manually to a specific BPM (Beats Per Minute) or by using the Tap Tempo button to tap along to an external rhythm. However, even when you do this, it's quite likely that things still don't sound quite right as there's a good chance that the two rhythms are out of phase despite being at the same tempo. This release introduces a new feature - Global Time Warp which lets you shift the phase of Sonic Pi's timing back or forward up to 250 milliseconds to let you align it with an external rhythm.

Taking a quick step back, what does it mean for two rhythms to be out of phase and why is it a problem? Imagine you had two metronomes ticking away. If one has a higher tempo than the other, then one will be ticking faster than the other. This can be fixed by setting the tempos to be the same. However, unless they were both started at exactly the same time, they both wont be ticking at the same time. Instead, one will tick, then the other, then the first, then the second, etc. The second will always be a little later than the first and as they are at the same tempo, they will never catch up with each other, they will always tick at different times. This is called being out of phase. When two rhythms are out of phase it can sound very messy. Therefore, being able to get rhythms to start at exactly the same time is really important to being able to jam together and for it to sound good.

The new Global Time Warp control lets you shift the timing of all triggered synths, MIDI and OSC messages forwards or backwards by a specified time in milliseconds. You can either slide a slider or type in a specific time to adjust the phase of Sonic Pi's timing to match the phase of an external rhythm.

This means you can now easily jam to an external track - first by tapping out the tempo and then by shifting the phase using the new Global Time Warp controls until it sounds right. This is essentially what DJs do when they mix tracks together in a live set - only now you can layer coded rhythms, basslines and riffs on top of external music with code. This is not only a great way to perform live, but it's also a wonderful way to practice - by jamming along to music you love.

In addition to this, the accuracy of the Tap Tempo functionality has been improved in addition to UI tweaks to all the metronome controls.

Have fun jamming in phase to external music and take your live coding collaborations to the next level!

GUI

  • New Global Time Warp controls. This lets you adjust the timing of all scheduled events (synths, samples, MIDI and OSC) forwards or backwards up to 250 milliseconds. This is important for matching the phase of an external rhythm.
  • Improved Tap Tempo logic aimed towards increased BPM detection accuracy and speed.
  • BPM scrubber and new Global Time Warp scrubber now respond to mouse wheel changes.

Improvements

  • Clearly specify in the tutorial that user-defined function names should start with a lower case letter. Therefore use define :foo rather than define :Foo.

Translations

  • Minor improvements to the Indonesian, Korean Portuguese (Brazil) and Russian translations.

Bugfixes

  • The duration: opt for midi_clock_beat has been fixed.
  • Fix scsynth_opts and scsynth_opts_override options in the ~/.sonic-pi/config/audio-settings.toml config file.
  • Audio output via external soundcards on macOS should now work without requiring audio inputs to be enabled in the GUI.
  • current_debug now correctly returns true if logging/debug is enabled (the default). Previously it reported the inverse.
  • Minor improvements to documentation layout.

Releases

macOS 10.15 (Catalina)+
Link Sonic-Pi-for-Mac-x64-v4-1-0.dmg
Size 129M
MD5 bb20d0d723236028c4b1cee2961c812c
SHA256 cf3cee887ddfe9e436b48167116e17e21a1b57fbce685697fc77b0736305d67a
Windows 10/11 x64
Link Sonic-Pi-for-Win-x64-v4-1-0.msi
Size 203M
MD5 12d85ccf447a9f87e06cc03cde2976cc
SHA256 46a3756d15884becfa6195d12ce63715117b2fc9cd7053e19358d58f422b23c0
Raspberry Pi OS (Bullseye) 64 bit
Link sonic-pi_4.1.0_1_bullseye.arm64.deb
Size 92M
MD5 25a4f9bcdaef3bbfc8db070802d6b881
SHA256 e0683aa68cab0d15270cabe7f51b0a8d12056a093f5fd6ca2a598a288e8f8654
Raspberry Pi OS (Bullseye) 32 bit
Link sonic-pi_4.1.0_1_bullseye.armhf.deb
Size 88M
MD5 5a23a7dd6fa112a15b9795ef0c73f091
SHA256 a5caf041b02d721c35b8ea01623881c0c3636f918f3d76457e6afa5962af16cb

v4.0.3

1 year ago

Version 4.0.3 'Dovetail'

18th July 2022

This is a minor bugfix and maintenance release.

Improvements

  • The docs for beat have been updated to reflect the beat value can no longer be assumed to start at 0. This changed since Ableton Link integration in v4 which now defines the initial beat value based on its internal state.

Translations

  • Minor improvements to the Vietnamese translation.

Bugfixes

  • A regression in the function midi_sysex introduced in v4 has been resolved. midi_sysex can now be called as expected.

Releases

macOS (10.15 Catalina+)
Link Sonic-Pi-for-Mac-x64-v4-0-3.dmg
Size 129M
MD5 0670dbcbb01967dd64cd42ed8dd002ae
SHA256 68c31ce8679759aac565794d962970b86cdd36dce5b59c9d92c9a8810bec2119
Windows 10/11 x64
Link Sonic-Pi-for-Win-x64-v4-0-3.msi
Size 202M
MD5 fc7bf535ccdca97d6e3fce4683259a85
SHA256 404113a6a72a24bbc74709b01d49f6ce998eb48bc4fce6e90e326d4e362e2b0e
Raspberry Pi OS 64-bit
Link sonic-pi_4.0.3_1_bullseye.arm64.deb
Size 92M
MD5 c6629117c149298282ded821a79bc597
SHA256 8dc6f56f9bb2d307b2176abd98c7e5fffcd75939265d7997800bad133bcf91c1
Raspberry Pi OS 32-bit
Link sonic-pi_4.0.3_1_bullseye.armhf.deb
Size 88M
MD5 4eb2686d224036567d95662d6fdf3233
SHA256 cd38733e5ace3ffee5e67b624717cf91778367ecd1d55e7f84b28c1d41e708a2

v4.0.2

1 year ago

15th July 2022

Hot on the heals of v4.0.1 here's another bugfix release addressing an issue with the translations.

During the last year there has been significant upheaval of the process used to build Sonic Pi. Somehow, during this upheaval, the translations never got added into the final release builds, despite being part of the dev builds. This has been true since v4.0 BETA 1 back in August 2021 - yet it somehow went unnoticed until now. Apologies! This release fixes this and re-introduces the translations which are so important for lowering the barrier to entry across the world.

As a bonus, a couple of nice improvements also managed to sneak in for good measure. Have fun!

GUI

  • All the translations are now available again - including the vast amount of new translation effort since v3.3.1 was released.
  • Loading a file no longer erases the undo history. This means that you can now "undo" a file load in the current buffer and return it to the state prior to the load.
  • The BPM-scrubbing behaviour (clicking your mouse and dragging to change the BPM) has been tweaked to make it easier to use.
  • Improvements for the Portuguese translation.

Releases

macOS (10.15 Catalina+)
Link Sonic-Pi-for-Mac-x64-v4-0-2.dmg
Size 129M
MD5 54663be97cf61ba2aff9b31622f10c01
SHA256 2b20d5855b41a5a9e56aec1a268d6466f5f392ae5a08f6cf63c8151d9c85b7ab
Windows 10/11 x64
Link Sonic-Pi-for-Win-x64-v4-0-2.msi
Size 202M
MD5 3193813eb0486c775b0815a03d0b8253
SHA256 b1b5e02d3de08c06cc1017231d89345a144fdb2048ee2cf38d78ca2af55d46fc
Raspberry Pi OS 64-bit
Link sonic-pi_4.0.2_1_bullseye.arm64.deb
Size 92M
MD5 62214df0168e391a5dc464db03922c60
SHA256 37ddd51b9b066c5c531dd137b85b2902915875ac9de189459cd3aca6e52bea30
Raspberry Pi OS 32-bit
Link sonic-pi_4.0.2_1_bullseye.armhf.deb
Size 88M
MD5 d908c99a6c921dfc49862d5d0268b7f6
SHA256 48f992aa59cc162b928ea468005a34edd04f2c8d5ced28f6a2410ca437072650