Download [factorial] for Pd. Source included with Mac binary:
Download [factorial] for Pd. Source included with Mac binary:
I will be in residence at EMS in Stockholm this summer to compose new works for my multichannel 8-string guitar system.
Read more here:
“The nonprofit Apex Art mounts shows proposed by young and emerging curators. The current one, “Space Between the Skies: A Virtual Reality Experience,” lives up to its title. Oculus headsets hanging from the ceiling offer an opportunity to experience the technology and consider representations of space and landscape created especially for video or virtual reality.”
Read more | SoHo and TriBeCa, a Cradle of Contemporary Art:
Photo by Savannah Kenney
“Space Between the Skies,” a group exhibition organized by Christopher Manzione, featuring the work of Seth Cluett, John Craig Freeman, Ricky Graham, Christopher Manzione, Nicholas O’Brien, and Rachel Rossin.
How the Audio Works
I developed software to encode multiple audio point sources for the piece with Chris and Seth; the patch used a library I’m developing in C for Pd called grambilib~:
Point sources are adjusted using your typical b-format rotations, moving the soundfield position relative to the gyro data from the Oculus Rift (i.e., every point source encoded within the soundfield maintains its relative position to the other point sources in the soundfield when the user moves their head). Distance (gain or perceived amplitude / volume) per source is simulated based on the euclidean distance between Cartesian locations of each audio source relative to the player position in Unity.
Data from the Oculus (and from the Unity world in general) is sent over OSC using a custom C# script based on UnityOSC:
This concept will be extended to 3d, b-format cube for Propellerfest (Hoboken, May 20th):
Space Between the Skies runs at apexart in NYC from March 24 – May 14, 2016
All of my software is moving to Github: https://github.com/rickygraham
An ambisonics library for Pd, written in C. Available cross-platform.
[grambipan~], [grambiman~], and [grambidec~] are a series of ambisonic objects for Pd. They will form a large part of the new grambilib~ library I am finishing this semester, allowing a user to control angle and elevation using an audio-rate signal.
All objects are written in the C programming language. The externals (collectively) allow a user to manipulate 1st (3d), 2nd (2d), and 3rd (2d) order ambisonics for mono, stereo, quad, 5.0, hexagonal, octagonal, and b-format cube (3d) array configurations.
These objects are largely based on my rg.ambi~ abstractions from 2015 (also available from my Github repositories).
A simple ambisonic panner with message and audio-rate controls for azimuth and elevation. Supports 1st (3d), 2nd (2d), and 3rd (2d) order.
This object supports 3d b-format manipulations, including rotate, tilt, tumble, and rotate-tilt. 1st order support only.
A simple ambisonic decoder based on FuMa coefficients, including, mono, stereo, quad, pent, hex, oct, and b-format cube.
A tonal abstraction external for Pd, written in C. Based on tonal theory by Lerdahl.
This is an external for Pd written in C. It is largely based on ideas presented in Fred Lerdahl’s book, “Tonal Pitch Space”, on the construction of melodies.
Version 1 takes any MIDI input and outputs values for pitch class, basic space, closure, tension, ratios of asymmetrical attraction, ratios of asymmetrical attraction & pitch class distance, and pitch class distance.
The user may change the configuration of the basic space to accommodate any of the 7 modes of the major scale.
The user may also offset pitch class zero if they want zero to be something other than Middle C (C3 /4, etc.).
Version 2 will have list outputs and more useful construction arguments.
I’m working on a virtual reality and spatial audio piece with Messrs. Cluett and Manzione as part of the Virtual/Transposed Landscapes exhibition at apexart in NYC. The opening reception is on March 23 from 6pm to 8pm. Thanks to Christopher Manzione for curating the show.
March 24 – May 14, 2016
Featuring work by:
John Craig Freeman
I’ll be performing a late night set at SEAMUS 2016 (Statesboro, GA) in February and two sets at an art exhibition in Jersey City in March. Both events will feature new music.
Feb 12th – Society for Electro-Acoustic Music in the United States national conference at Georgia Southern University, Statesboro, GA. Late night set at the Eagle Creek Brewery. Full schedule available below:
(I will also be rising early the following day to give a paper on my ongoing sonification project with Evan Lynch at the MIT Media Lab. More on that soon).
Ricky Graham is someone that I came to respect through his work. My friend Gregory turned me on to his music, and listening to it became part of my daily routine. Then I reached out to him about doing the podcast, and was happy to get his consent. I needed to get ahead on recordings, so this one was done while visiting LA for the NAMM conference.
I was intrigued by Ricky’s work as a guitarist that is also, clearly, neck-deep in technology. I was also drawn in by his hacker-like mentality in finding ways to make things work – and work together. This chat was as laid back as could be, and I quickly forgot I was talking to anyone but a good friend, because he’s as engaging to talk to as can be. We ended up talking guitar synths, rugby, guitarisms within software and even balancing tech with playing.
As happens so often with great guests, this discussion immediately got me interested in trying out some new techniques, doing some actual recording and just plain getting-off-my-duff. Whether you are into guitars or not, you are sure to be inspired by Ricky Graham.
Check out the interview via the link below:
[grambipan~] and [grambidec~] are two new (basic) ambisonic objects for Pd. They will form a large part of the new grambilib~ library I am finishing this semester, allowing a user to control angle and elevation using an audio-rate signal. They’re largely based on the rg.ambi~ abstractions from 2015. All objects are written in the C programming language. Both externals collectively allow a user to use 1st (3d), 2nd (2d), and 3rd (2d) order ambisonics for mono, stereo, quad, 5.0, hexagonal, octagonal, and b-format cube (3d) array configurations.
You can grab Version 1 for Mac (32-bit / 64bit) here. Version 2 will feature a library format, including the [grambiman~] object for rotation, tilt, tumble soundfield manipulations. Version 2 will also be available for Linux and Windows.
A few updates to Version 1. lerdahl.c and lerdahl.pd_linux now included in the .zip. Windows coming soon.