Yig, the Father of Serpents is a network music environment for creating and manipulating feedback.
C++ TeX Scala SuperCollider JavaScript CSS Other
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
doc
graphics
gui
interface
network
oscpack
resources
rtaudio
sc++
.DS_Store
.gitignore
COPYING
Doxyfile
README.md
Yig.pro
Yig.pro.user
Yig.pro.user.0b4c92c
Yig.pro.user.2.5pre1
Yig.pro.user.2.6pre1
YigDevNotes.txt
YigInfo.plist
YigResources.qrc
YigSynths.scd
main.cpp
yig.cpp
yig.h

README.md


Yig - A network music instrument for constructing feedback matrices synchronized with OSC using OSCthulhu
Chad McKinney, 2011-2012

Licensed under GNU GPL 3.0
See COPYING for licensing details


ABOUT

Yig is a project written by myself (Chad McKinney, http://chadmckinneyaudio.com) in part towards my research in network music. The goal is to explore the concept of divergence as a side of effect of chaotic synthesis and network dynamics.


STATE OF THE PROJECT

The project is actively used by my network band Glitch Lich (http://glitchlich.com) and has seen many performances. Currently I would consider the project to be somewhere between a late alpha and early beta phase. There are several features that are notably missing (easy score / synth folder changes, more operating system support, better performance, bug fixes, etc...) however it is still very usable in it's current state should you be willing to put it in a little work. It is the product of several months of on and of development, however at the moment I am focusing on other projects so it won't see much rapid development at the moment. That said, it is something I will be using for a while so it won't be completely dormant either.


DEPENDANCIES

Compiling Yig isn't something to take lightly. Unless you're serious about doing some dev work on it or you're just hell bent on getting it to run on Linux, I would use the pre-built binary. Here's a list of dependencies

Qt framework Boost 1.49 with compiled libraries SuperCollider built from source libsc++ (my own project, you can find it here: https://github.com/ChadMcKinney/libscpp)

for networking: OSCthulhu (a project by my brother Curtis McKinney with some work by myself. You can find it here: https://code.google.com/p/lagutils/downloads/list) A server (this can be a run as local computer in a LAN or on a separate server system)

You'll need to modify the .pro file to point to the correct paths.


SUPPORTED OPERATING SYSTEMS

Currently there are only prebuilt binaries for OS X 10.6+ with 64bit architecture. Soon I will try to get a 10.5 32bit binary up as well. Linux and Windows are theoretically possible, but the biggest hurdle will be getting SuperCollider and libsc++ playing nice.


USAGE

For a quick tour you can just run the binary, drag some synths out and play solo. I imagine you're going to be interested in networking, as this is a big part of the system. Doing this might be slightly more complicated than you might like at first, however you'll be thankful that the networking is solid. Networking is accompolished via OSCthulhu, however that project is also seeing initial growth and will require some work on your part to get it running. You'll need to grab a client from the download which you can get as a precompiled binary, however you will also need to grab the source so you can compile the server code on your server. Follow the OSCthulhu documentation for implementation details. When using with OSCthulhu make sure you have it up first so that when you boot up Yig it notifies OSCthulhu of the correct port to use for communication. For synth def creation and score writing see the /resources folder for further documentation.


CONTACT

If you have any questions about the software or want some help setting it up, please email me at seppukuzombie[at]gmail[dot]com. If you have any feature requests or found annoying bugs please let me know, or if you're interested enough, make the change yourself in the source and make a pull request on git hub.


THANKS AND RECOGNITION

I would like to thank the University of Sussex for funding my PhD which in turn supported the development of this software. I would also like to thank Ross Bencina, the author of OscPack which is used for the OSC communication. I'd like to thank the SuperCollider developers for creating a wonderful language which I've used for many years and also because Yig's audio engine utilizes scsynth as an internal server. Finally I'd like to thank Nick Collins, Curtis McKinney, Cole Ingraham, and Ben O'Brien for directly supporting the development of Yig by testing, evaluating, performing with, and criticizing it. It is certainly better for their efforts.