q3osc

an interactive musical performance environment

Project Abstract


q3osc is a heavily modified version of the open-sourced ioquake3 gaming engine featuring an integrated Oscpack implementation of Open Sound Control for bi-directional communication between a game server and one or more external audio servers. By combining ioquake3's internal physics engine and robust multiplayer network code with a full-featured OSC packet manipulation library, the virtual actions and motions of game clients and previously one-dimensional in-game weapon projectiles can be re-purposed as independent and behavior-driven OSC emitting sound-objects for real-time networked performance and spatialization within a multi-channel audio environment.

from "q3osc: or How I Learned to Stop Worrying and Love the Game", In Proceedings of the International Computer Music Association Conference, Belfast, Ireland, 2008. download...

Quick Links


v1.1 - Linux/OSX Source (6.19.2008) [541 MB]*: q3osc_v1.1_6.19.08+.tar.gz
v1.1 - Linux/OSX Source (6.19.2008) [13.9 MB]: q3osc_v1.1_6.19.08.zip
SVN repository (private/read-only)
svn+ssh://gate-ccrma.stanford.edu/user/r/rob/svn/q3osc/

nous sommes tous Fernando...

nous sommes tous Fernando... by Robert Hamilton is an improvisatory work written for the Stanford Laptop Orchestra (SLOrk) using q3osc and ChucK. Four performers control avatars in a virtual environment, firing sound-projectiles which bounce or home-in on individual performers, creating sound events with every bounce/collision with a surface of the environment. Virtual sound sources are laid out in a "+," represented by hemispherical structures in the virtual environment, with hemispherical speakers in the real-world laid out in a similar configuration. Spatialization is correlated between virtual and real-environments, with various aspects of each sound-event (frequency, timbre, duration) mapped to various axis and relationships in the virtual environment. Additionally, each of the four performers has real-time control over one of four super-sets of global parameters controlling respectively Projectile-Speed, Homing-Speed, Client-Speed, and Gravity. These commands are bound to the keyboard (1-5) in increasing increments (0/10, 100, 500, 1000, 3000) and can be triggered at any time during the performance to affect all performers. Performers are encouraged to think of the work as a collaborative improvisation and to explore the environment searching for new performative gestures and sounds.

Fernando for 5 Laptops and 5 Hemispherical Speakers was premiered by the Stanford Laptop Orchestra on May 24, 2008 in the CCRMA stage. A version for 16 performers was performed on June 3, 2008 by the full SLOrk outside in the Knoll Courtyard at CCRMA.

q3osc Demo Videos 1-4

In this series of demo shorts, a single q3osc performer demonstrates a simple mapping scheme where the pitch of a short SinOsc pulse is mapped along the X and Y axes. Both simple projectile bounces as well as homing projectiles are shown in these videos.

downloads:

Demo 1: small, medium, large, full-size.

Demo 2: small, medium, large, full-size.

Demo 3: small, medium, large, full-size.

Demo 4: small, medium, large, full-size.

ioquake3.org article and interview

q3osc was profiled on ioquake3, the home site for the core development of the ioquake3 engine. The article can be found here: http://ioquake3.org/2008/05/22/q3osc-using-ioquake3-as-a-musical-environment/

The article lead to this interview with ioquake3's Khalsa: http://ioquake3.org/2008/06/01/interview-with-robert-hamilton-creator-of-q3osc/