I have been working with Sonic Pi since my brother and his colleague introduced me to it. I’m a software engineer and they work in education. They are planning to use Sonic Pi with students for educational purposes.
When I noticed the scale system in Sonic Pi, I immediately thought this can be implemented with traditional Turkish microtonal scales(maqams). I forked the repo and implemented my own scale system. There are not any binaries for it since I couldn’t manage to form the environment around Windows/Linux. I’ve opened a pull request and awaiting review. But it still has some work to do. i.e The maqams are not circular, I don’t know if it’s problem or not.
Afterwards, we made a collaboration video with my brother(ney) and our friend(percussion). I’ve coded live, and they improvised on the groovy background. I’m an amateur musician myself but I’m still new to concepts of the electronic/house etc. music. So I think the code and the groove is not state of the art . I’ve some different ideas for the live performance. This is the video:
This was the baseline of our application to the Maker Faire Istanbul. The application is accepted and we will perform live in the Faire(27-29 Oct). You can check out their web page.
If anyone wants to try out the maqams, the fork is below. You need to copy scales.rb to your installation folder. I’m really interested in your opinions about it, please do not hesitate to contact or open an issue about it. The musical system is very different from western 12-TeT system(even the notes and the intervals are different!).
Thank you so much for this treasure, it looks wonderful.
I try to play the maqam reflected in the video but I get an error saying it can’t find the maqam hicaz, how can I save your maqams in Sonic Pi ?
As you can see in the gif video I share I copied your github instructions but it doesn’t work,it gives an error message.
Your code buffer has reached capacity.
Please remove some code before continuing.
For working with very large buffers use:
As this file is too large, you need to save it to an external file on your hard drive and then use the load_file function to load it in, passing the path to the file you just created. If you don’t know the path, just drag the newly created file into Sonic Pi and it will autocomplete the path for you
In your screenshot showing your attempt to use run_file, it’s complaining about an attempt to use a variable named scale, which Sonic Pi doesn’t allow as it is the name of a built in function. So, I assume that in the file you are trying to run, it would require changing that variable’s name.
Without seeing the code itself, it would be a little difficult to say anything more…
This looks like replacement code for scale.rb in the application rather than a user run file. It is modifying the (then in 2017) existing scale.rb The mod also requires a change to sonicpiapis.cpp and hence a rebuild of the gui as well. Also you would have to take account of additional changes to scale.rb since this version was produced. It could be used as a basis for modifying the existing scale.rb and sonicpiapis.cpp files.
Heh. Robin beat me to it As he has mentioned, this code is meant to be a replacement/extension of some of Sonic Pi’s internal code, would need to be properly integrated into the app, and does not have several updates made to that particular area of the code since the time it was created…
Hello everyone. I didn’t know messages from this forums ends up in junk folder. I’ve just fixed that and I’m glad that this has some attention.
So my PR got some criticization regarding having so much changes for the file and the system, still there is no way to blend the Turkish music otherwise. Now I will update the scales in the new updated branch ASAP. I’ve a strict schedule nowadays, but I’m more than happy that these scales had some attention.