I've been playing with live coding Music environments lately here is a short description of the environments I've used so far
Sonic PI is a live coding music environment that comes bundled with most raspberry pi images and was invented to teach coding through making sounds. But don't be fooled by it's simple interface or the name - Sonic PI is a pretty serious tool for making music. Despite it's name it runs on Linux, MacOS, Windows and - surprice! - a raspberry pi and is based on supercollider and ruby.
To program it you write ruby programs that contain loops to trigger various synths and samples - you can add a bunch of effects and control various parameters of the synths. It also allows you to write pretty complex melodies and chord structures, by adding random elements to your code.
Sonic pi already comes with a impressive collection of loops, samples, example programs and synths to get you started, but it also allows you to add your own samples or supercollider synth definitions if you want to.
Chuck is a pretty unique programming language, that allows you to write virtual instruments and control them either with your code or with various controllers via midi, Hid-events, osc, or whatever else you come up with. You can start and stop your code in sync with the loops already running and it's the basis for the laptop orchestra.
The language used feels a bit strange in the beginning but one gets used to it pretty fast.
PureData + automatonism
Automatonism is a Modular Synth that runs on PureData Vanilla - which means it runs pretty much everywhere. It's a really impressive collection of modules, plus you can use it to livepatch and edit your modules. Since it runs on puredata, you can also use regular puredata structures should you ever get stuck with the provided modules.
The modules help to create a playable pure data patch pretty fast and allow you to expand from there if you want to dive deeper into the pure data universe.
Each of the frameworks I tested this weekend is pretty cool and each of them has it's strengths and weaknesses - I haven't played enough with them to choose a favourite yet. I will try to integrate them into my current Bitwig, VST-Plugin and hardware synth setup and see which one I end up usingread more ...
a 7/4 loop meets a 4/4 loop in this polyrhytmic exploration, featuring my Mother 32, 0-Coast, MiniNova and Streichfett
read more ...
Nikos Priniotakis posted a teaser of a denoising script for blender animations a few months ago, that shows really impressive improvements on a noisy cycles animation (see his original tweet here) I sent some twitter messages back and forth with him and he sent me the links to the opencv denoise function he used for the demo. So I finaly found the time to wirte a short python script that uses pyopencv to denoise all the pictures in a folder and copies it to another folder.
The script I used to denoise my animation is here
import cv2 import os import numpy as np from matplotlib import pyplot as plt files = os.listdir("metabubbles/") for f in files: if f.endswith('.png') and f.startswith('0'): print f img = cv2.imread("metabubbles/%s" %f); dst = cv2.fastNlMeansDenoisingColored(img) cv2.imwrite('res/%s' %f, dst);
The denoising process is no magical pixiedust that can be sprinkled on your noisy cycles-renders to fix everything but when used correcly it can improve preview renders a lot, but if the script is used on an image sequence that is too noisy it introduced a whole lot of new artifacts. I used the script on an amiation I rendered last year. Here is how the original video compares to the denoised version.
read more ...