Skip to content

Instantly share code, notes, and snippets.

Robin Newman rbnpi

  • Near Peterborough
Block or report user

Report or block rbnpi

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
rbnpi / DreamyRelentlessA.rb
Last active Feb 1, 2019
Dreamy Relentless A a piece for Sonic Pi. Hear it at
View DreamyRelentlessA.rb
#DreamyRelentlessA by Robin Newman, February 2019
#In this piece I started by experimenting with two streams of notes
#of varying frequencies intially almost identical. This built up with the addition
#of several similar notes varying in the opposite sense, ie decreasing in frequency
#as the first set increased. The resulting rather dreamy sound was pleasing,
#especially when it resolves to the notes being perfectly in tune.
#I then experimented with adding an insistant repetitive beat, using two
#tones played with :tb303 and :chiplead. Rhythm was added using the spread function
#and I also added some percussion, and repetitively faded between the two streams
#of dreamy notes. Finaly I slowed the whole thing down, and it sounded much better
rbnpi / palladio-RF.rb
Last active Jan 16, 2019
Palladio by Karl Jenkins arranged for Sonic Pi. Play using run_file command. Hear it on
View palladio-RF.rb
#PALLADIO by Karl Jenkins arranged for Sonic Pi by Robin Newman Jan 2019
with_fx :reverb,amp: 2,room: 0.6,mix: 0.7 do
use_synth :blade
use_bpm 90
with_fx :level, amp: 0.7 do
rbnpi / tallis40part-RF.rb
Last active Dec 20, 2018
Spem in Alium Thomas Tallis arrange for Sonic Pi Listen to it at
View tallis40part-RF.rb
#arranged for Sonic Pi by Robin Newman, December 2018
#use run_file "path/to/tallis40part-RF.rb" to run it.
define :pl do |nt,durs,pan,vol=0.2|
in_thread do do |n,d|
play n,attack: 0.1,sustain: d*0.9,release: d*0.1,pan: pan,amp: vol
sleep d
rbnpi / SP-KeyboardController2.rb
Last active May 12, 2019
computer keyboard input to Sonic Pi (version 2) See article on and video on youtube at (SP-KeyboardController3.rb allows synth selection)
View SP-KeyboardController2.rb
#experimental program to control Sonic Pi from the keyboard
#developed from an orbianl program written by Robin Newman, April 2016
#you can play notes direct, or initiate any of 10 liveloops
#now updated to use OSC communiation from the key polling program
#set up hash to contain notes
#list of notes
l=[:c4,:cs4, :d4, :ds4, :e4, :f4, :fs4, :g4, :gs4, :a4, :as4, :b4, :c5, :cs5, :d5, :ds5, :e5, :f5, :fs5, :g5]
#Author: marktini
#Spirograph curve drawing program
#Version 1.0
#modified to Python3 by Robin Newman Dec 2018
#additions to allow export of x,y coords using OSC message
#with aid of pythonosc library
import math
import turtle
import random
import time
rbnpi / BerliozShepherdsFarewell.rb
Last active Nov 26, 2018
Berlioz Shepherds' Farewell arranged for Sonic Pi. 17 channel midi output, rendered by VMPK ( audio fed back to Sonic Pi. Hear it on
View BerliozShepherdsFarewell.rb
#arranged for Sonic Pi by Robin Newman November 2018
#played by virtual midi piano, audio fed back to Sonic Pi
#as live_audio input
with_fx :reverb,amp: 3,pre_amp: 1,room: 0.8,mix: 0.6 do
live_audio :min,stereo: true
#function to play midi notes/duration lists with optional transpose
define :mplay do |notes,durs,channel,tr,vel=100|
rbnpi / apcOSC1.rb
Created Nov 5, 2018
Sonic Pi fx parameter control using TouchOSC. index.xml is the TouchOSC template. Donwload and zip it and rename to paramControl.touchosc
View apcOSC1.rb
#Sonic Pi 3 automated parameter control for fx calls controlled by TouchOSC
#developed from an idea by Martin Butz. Code developed by Robin Newman, November 2018
use_osc "",9000 #address of TouchOSC and input port
#initialise some parameters
#these will be updated further by signals from TouchOSC
set :start,0
set :finish,0.5
set :dur,1
set :type,:fade
rbnpi / apcPROG.rb
Created Nov 5, 2018
Controlling fx parameters in Sonic Pi: 2 live loops with 5 with_fx wrappers. See thread
View apcPROG.rb
#Sonic Pi 3 automated parameter control for fx calls controlled by TouchOSC
#inspired by Martin Butz. Code developed by Robin Newman, November 2018
#programatically controlled fadeing of fx opt levels
use_random_seed 886543
#setup some starting values
set :kill,false
set :finishTime,120 #duration set for the piece
#start values for next input AFTER the initial fade of the 5 fx used
View fxControlDemo.rb
#This program demonstrates the control of fx parameters to give smooth fades
#in their effects. Prompted by a thread
#started by Martin Butz
#Martin Butz's original fade function renamed, and simplified
#for only two fade types fade and wave
#fade up or down is selected automatically from the relation#
#between start and finish values
define :fadeSteps do |start, finish, len, type|
rbnpi /
Created Oct 26, 2018
OSC broadcast repeater for use with Sonic Pi. A video showing use is at and an article is being written (will post details here)
#!/usr/bin/env python3
#broadcast received OSC message
#written by Robin Newman, October 2018
#designed for use with Sonic Pi 3
#requires python-osc
#install with sudo pip3 install python-osc
import argparse
from pythonosc import osc_message_builder
from pythonosc import udp_client
from pythonosc import dispatcher
You can’t perform that action at this time.