9 ms·
Sonic Pi is a code-based music creation and performance tool
- cube2222 6y agoLooks really nice, I'll be sure to try it out! For people interested in this, there's also a recent project https://github.com/overtone/overtone https://github.com/overtone/overtone which looks similar, using Clojure though (which seems to deem itself better to live programming).
- cube2222 6y agoOh, the main contributor to Overtone is actually also the main contributor to Sonic Pi!
- simongray 6y agoYeah, he started out with Overtone + a special emacs configuration (emacs-live) and had a short-lived duo called Meta-eX playing music using that setup: https://meta-ex.com/ https://meta-ex.com/
- jimmcslim 6y agoThere is also Andrew Sorenson's [1] Extempore [2] which is also a Lisp. [1] https://twitter.com/digego https://twitter.com/digego [2] https://extemporelang.github.io/ https://extemporelang.github.io/
- benswift 6y agoYep. In fact, lisps tend to pop up quite a bit in livecoding (and in other places, really). https://github.com/toplap/awesome-livecoding https://github.com/toplap/awesome-livecoding is a nice curated list of live coding languages and tools.
- delineator 6y agoIn addition to Sonic Pi, I've also enjoyed experimenting with @neauoire's [0] Orca[1] and @yaxu's [2] TidalCycles[3]. Orca[1] is like a moving 2D functional programming crossword puzzle for generating sequences, be sure to watch some tutorial videos to get started. TidalCycles[3] is a lovely way to very concisely and quickly generate looping patterns of samples and tones, still getting my head around it. [0] https://twitter.com/neauoire https://twitter.com/neauoire [1] https://hundredrabbits.itch.io/orca https://hundredrabbits.itch.io/orca examples on twitter: https://twitter.com/hashtag/ORC%CE%9B https://twitter.com/hashtag/ORC%CE%9B [2] https://twitter.com/yaxu https://twitter.com/yaxu [3] https://tidalcycles.org/ https://tidalcycles.org/ examples on twitter: https://twitter.com/hashtag/TidalCycles https://twitter.com/hashtag/TidalCycles
- abetusk 6y agoSam Aaron [1], the creator of Sonic-Pi, just released v3.2.0 [2]. I've only played around with Sonic-Pi a bit but I find it exceptional. It has the sound quality that I would expect from a more professional tool while still being accessible to the beginner and being programmer friendly. It's also completely free/libre/open source. There's a good community over at the discussion forum `in_thread` [3]. Sam Aaron also has many videos of him practicing, live streaming, etc., complete with code in the background to see what he's doing [4]. I'm a bit light on the details but I think Sonic-Pi uses `supercollider` [5] "underneath" as the audio synthesis engine. I've heard that Sam Aaron offsets some of his income by doing live gigs and talks. COVID-19 has put a damper on that so I would encourage people to donate to his Patreon [6] if they can. [1] http://sam.aaron.name/ http://sam.aaron.name/ [2] https://in-thread.sonic-pi.net/t/sonic-pi-v3-2-tau-released/3361 https://in-thread.sonic-pi.net/t/sonic-pi-v3-2-tau-released/... [3] https://in-thread.sonic-pi.net/ https://in-thread.sonic-pi.net/ [4] https://www.youtube.com/user/samaaronuk/videos https://www.youtube.com/user/samaaronuk/videos [5] https://github.com/samaaron/sonic-pi/wiki/Sonic-Pi-Internals https://github.com/samaaron/sonic-pi/wiki/Sonic-Pi-Internals [6] https://www.patreon.com/samaaron https://www.patreon.com/samaaron
- raverbashing 6y agoSeconding everything you say here It takes a while to get it but it is very powerful. Docs could be a bit better (they're not bad) but in the end it is Ruby code. I would also be happier if I had a CLI because the IDE editor has (minor) issues but it also helps a lot with its integration with the rest of the system But those are minor issues in a great project. Yes it uses supercollider (too bad that API is much more complicated than Sonic-Pi)
- abetusk 6y agoI haven't used it but apparently there's a `sonic-pi-cli` project that has a command line interface to Sonic Pi [1]. It's unclear to me whether the Sonic Pi IDE has to be running to use it, though. I agree the documentation could be better but, in it's favor, there's a built in tutorial/examples along with built in documentation in the IDE that gets you most of the way there. I find it hard to track down what some of the options do on effects and other functions but these are minor complaints of mine. [1] https://github.com/Widdershin/sonic-pi-cli https://github.com/Widdershin/sonic-pi-cli
- lydzb123 6y agoOo! I will maybe check this out. I've explored Supercollider and thought that was v interesting, though a bit tedious to jump into actual music making with for me personally.
- jweather 6y agoPlease do check it out. Supercollider is like walking into a fully-stocked machine shop with a comprehensive 9000-step guide to building your own car. Sonic Pi is like a go-kart with the engine already running. It's very approachable, and with Supercollider on the back end, incredibly capable.
- louis8799 6y agoI really hope that it has python api
- weego 6y agoThere's a number of SuperCollider wrappers that use python for scripting, FoxDot is the most well known in live coding I think For reference Id say the most mature ones other than sonic pi are tidalcycles (haskell) and overtone (clojure) tidalcycles is my favourite out of the bunch
- Already__Taken 6y agoThe is doing a/some sessions for githubs conference in a couple of days.
- ingenieros 6y agoIt's happening tomorrow actually: https://githubsatellite.com/schedule/#satellite-kickstart-58-live-coded-dj-set-with-sam-aaron https://githubsatellite.com/schedule/#satellite-kickstart-58...
- kimburgess 6y agoThe entire second stream has a pretty solid lineup of creative/live coding. It’s a horrible TZ to make from Australia, but I’ll be up mainly for that.
- ingenieros 6y agoFYI: "Every session will be recorded and made available soon after it ends. If you’re double-booked or tuning in from a different time zone after the live session time, you can catch up by clicking on past session titles in the Schedule once they are uploaded."
- albybisy 6y agoWhat's the advantage of a "code-based" music creation respect of the classic one musicians use?
- thinkloop 6y agoProbably similar to using dreamweaver visual editor vs. writing code to make a website.
- r4vik 6y agoyou can translate your thoughts into sound without having to have any sort of manual dexterity or years of practice
- snorremd 6y agoI agree. I spent years of my childhood learning to play the piano. I did not have the patience to practice four hours a day , so I never became more than moderately proficient. And learning to play an instrument does not necessarily mean learning to create music. While playing off sheet music and focusing on dexterity exercises can be rewarding, they are not creative activities. With Sonic Pi you can focus on music creation and simple programming concepts. It is rewarding in a different way.
- fredfjohnsen 6y ago> While playing off sheet music and focusing on dexterity exercises can be rewarding, they are not creative activities. Of all the idiotic things written in the comments of HN (there are plenty...) this has to be, hands down, the most idiotic. There are literally an infinite number of possible expressions in terms of muscle movement & hand / eye coordination involved in an activity like playing the piano & this is BEFORE discussing the activity of using that infinite set of expressions to actually interpret music played from memory, by ear, or from a page. The fact that you think it's not a "creative activity" says more about your lack of creativity than anything else.
- 6y ago
- StrauXX 6y agoDid anyone get this running on Ubuntu/Mint? When I `sudo apt get install sonic-pi` and start sonic-pi (even with root privileges) the loading screen appears and nothing happens. There are no logged error-messages in the terminal either.
- deleted 6y ago[deleted]
- xrd 6y agoI second this. I tried a few months ago to get it working and was really frustrated with the state of the build scripts on Ubuntu and variants.
- DarkCrusader2 6y agoAfter mucking around a bit, I found this doc[1] which worked pretty well for me on Ubuntu 19.10. There is also some effort underway to build an appimage on their forums[2]. [1] https://github.com/samaaron/sonic-pi/blob/master/INSTALL-LINUX.md https://github.com/samaaron/sonic-pi/blob/master/INSTALL-LIN... [2] https://in-thread.sonic-pi.net/t/sonic-pi-as-an-appimage/2743 https://in-thread.sonic-pi.net/t/sonic-pi-as-an-appimage/274...
- delineator 6y agoRobin Newman has just released today a Sonic Pi 3.2.2 deb file for Ubuntu 20.04, see: https://twitter.com/rbnman/status/1257673599755915265 https://twitter.com/rbnman/status/1257673599755915265 He notes this deb will NOT be suitable for Ubuntu 18.04.
- deleted 6y ago[deleted]
- FraKtus 6y agoI will definitely show that to my daughter. It looks like a nice way to introduce kids to coding. Specially if you are into IDM.
- bob33212 6y agoMy 8 year old enjoys it.
- nkozyra 6y agoThis reminds me a great deal of Supercollider, which is pretty robust and time-tested. One of the things that bothers me about Supercollider is its weird server architecture and esoteric language. I'll take Ruby over that, but these things really beg for APIs that let you hook in with other languages.
- delineator 6y agoIn Sonic Pi you can send and receive MIDI messages and OSC messages to interoperate with external synthesiser hardware and software. Sonic Pi comes bundled with SuperCollider. The Sonic Pi server calls out to SuperCollider to play samples, synth tones, and apply FX. See the slightly out of date diagram here for details: https://delftswa.gitbooks.io/desosa2016/content/sonicpi/chapter.html#Context-view https://delftswa.gitbooks.io/desosa2016/content/sonicpi/chap...
- nkozyra 6y agoYou can handle midi in/out/thru natively in supercollider, too.
- jweather 6y agoSonic Pi is a friendly Ruby face on the Supercollider engine, so the family resemblance is no coincidence. I'm not sure what a universal API would look like, but you can easily build Sonic Pi sketches to take in things like OSC or MIDI from other programs or peripherals.
- jimmcslim 6y agoOne wonders what the great classical composers would have done with these tools?
- zerr 6y agoThey would have had tool fatigue :)
- Leszek 6y agoThere's also a _great_ talk from the creator (Sam Aaron) on Sonic Pi, including live-coding examples and some wonderful insights on how computer science is taught in schools: https://www.youtube.com/watch?v=OLLwG_SN8oo https://www.youtube.com/watch?v=OLLwG_SN8oo
- ntoll 6y agoI know Sam (the creator) and can vouch that he's a good guy and a bit of a legend. He hasn't had the easiest of rides when it comes to sustainable support for his work. I'd encourage folks to contribute here: https://www.patreon.com/samaaron https://www.patreon.com/samaaron (he'll certainly do wonderful things with such support).
- spdegabrielle 6y agoThis is awesome - I have it set up to play my synth over midi
- opminion 6y agoSonic Pi is an instrument designed for optimal usability by a ten year old, while using text-based syntax just like a normal programming language. I have seen a 9-year old reinventing nested loops with it, just because that's what she needed to make a tune. The install and learning curve is as flat as it gets, there's no excuse for not trying it if you are curious.
- WillPostForFood 6y agoI'm upvoting because I agree it is a great tool for kids, and a fun way to introduce some coding. But people might misinterpret what you are saying as meaning it is dumbed down, or too simple for real work. It is just well designed IMO, great for a 10 year old, but equally great for sophisticated technical user. I.e., this is not Scratch.
- birracerveza 6y agoSonic Pi is really fun to play around. However, the editor is fucking abysmal and turns me off every time I try to use it, since I can't use my muscle memory to copy/paste/multiselect and have to otherwise learn another set of keybinding that make no sense whatsoever (instead of CTRL-X to cut you have ALT-X, for example). I wish I were able to use VSCode. I know an extension exists, but it only sends the current file to the Sonic Pi session and has no autocompletion, which is fairly necessary during a live-coding music session to keep the tunes flowing. If I'll ever get around to understand how to develop an extension I'll try my hand at it, I guess. But otherwise yeah, it's some good stuff and has lots of unexplored potential. https://www.youtube.com/watch?v=KJPdbp1An2s https://www.youtube.com/watch?v=KJPdbp1An2s
- delineator 6y agoFor those using Atom, I've had some success using this Atom editor plugin: https://atom.io/packages/sb-atom-sonic-pi https://atom.io/packages/sb-atom-sonic-pi
- Moru 6y agoThey are working on different setups apparently, I was able to use ctrl+c/v to copy paste and next versions promises different selectable profiles. Sadly it defaults to your system language (swedish) and the menu shortcuts collide with some of the commands. I can't use alt+r for running the music for example, it just gets stuck in the menu for "Redigera". Only way I can find to start is by clicking run with the mouse. Can't find a way to switch language either. Really great program, daughter really loved the few minutes we had before bedtime. Not that it's only for kids, it's nothing like scratch where you can get started but the next step up is gigantic to programming. It seems to nicely scale up with your learning level. I'm no musician though so can't say how far we get with it :-)
- rhodin 6y agoDidn't Joe Armstorng use this to DJ at a Erlang User Conference? Can't find it now, but at least there is this talk from a years ago: https://www.youtube.com/watch?v=4SUdnOUKGmo https://www.youtube.com/watch?v=4SUdnOUKGmo
- francescoc 6y agoIt was a keynote he did together with Sam. Loved it....
- francescoc 6y agoThis is another keynote from CodeMesh in memory of Joe joining together the tiddly wiki and the SonicPi, by Sam, Erlang co-inventor Robert Virding and tiddly wiki inventor Jeremy Rushton: https://www.youtube.com/watch?v=aUji_DlXjm8 https://www.youtube.com/watch?v=aUji_DlXjm8
- 0xdeadbeefbabe 6y agoHow does it compare to csound?
- seph-reed 6y ago> Powerful enough for professional musicians. Having worked with professional electronic musicians, I will say this is likely really useful for getting some interesting layers, but is not a professional environment in and of itself. I don't mean to say this isn't fun, or that you can't make some really cool stuff. It's just not that there's wayyy more programmers involved with VSTs and DAWs than in this one project, and there's ultimately no competition from a professional perspective.
- olivierestsage 6y agoHas anyone had any luck getting this running on a non-Raspbian Linux distro?
- xipho 6y agoIIRC he has at least one YT video where he bemoans the lack of Linux support for sound, sounded like it was non-trivial in many cases.
- suyash 6y agoFor those who are interested in making music with Java Programming, check out : http://www.jfugue.org http://www.jfugue.org
- bwanab 6y agoI would feel remiss not pointing out Sam Aaron’s prior project Overtone which while similar in spirit to Sonic-Pi is much more oriented toward the programmer/musician and less to the musician/programmer. It’s interface language is Clojure which probably tells a lot. Both projects are amazing, but, after playing with Sonic-Pi, I’ve stuck with Overtone as my coded music synthesis toolset.
- Karrot_Kream 6y agoOther than programming language, what are the main differences?
- bwanab 6y agoThe main difference to me is that Overtone is closer to the “medal”, where medal in this case is Supercollider.
- galaxyLogic 6y agoCan you program tempo envelopes?
- felipesabino 6y agoIt seems really fun watching others, but I guess my lacking music theory knowledge makes everything I try to result in awful noise instead of anything resembling music Anyone out there have any good resources for using Sonic-Pi (or anything else) as a hands on way to to learn more about music theory? Do you think doing any MOOC in music theory can help? Or is it something that I just have to put hours on and just keep fiddling and trying?
- georgianar 6y agoThis kind Man brought my Lover back In less than 3 days, i saw wonders, my Lover came back to me and my life got back just like a completed puzzle… am so happy.. thanks to Robinsonbucler@ { gmail }. com for saving my life. Mr Robinson is the best I’ve ever met! Thanks, thanks thanks_____________