Difference between revisions of "ChucK/Programs"

From CSWiki
Jump to: navigation, search
 
(94 intermediate revisions by 21 users not shown)
Line 1: Line 1:
 
= [[ChucK]] Programs =
 
= [[ChucK]] Programs =
This is ''THE'' place to share your programs.
+
* This is the centralized place to share your programs
 
+
You can upload programs and images using this link:
You can add your programs (and images) by uploading your .ck (and image) file using this link:
+
* [[Special:Upload]] upload your file.  Warning: this only works for image files, not for .ck programs.
* [[Special:Upload]] upload your file  
 
 
To see the list of uploads:
 
To see the list of uploads:
 
* [[Special:Imagelist]] to see list of uploads
 
* [[Special:Imagelist]] to see list of uploads
 +
Or, you may choose to make a new page containing the code, which you
 +
can link from this page like this:
 +
* [[ChucK/foo.ck]] : (enter description) : author
 +
* feel free to put explanations on the code pages
 +
* note: In your code listings, remember to put a space before every line in the code, including empty lines - otherwise the wiki will render the code into multiple blocks.  [[FractalMelody.ck|here]] is an example that works.
 +
* for a multi-part program, or for larger pieces, you may want to create a new page that describes the program/piece and links to the components.  [[ChucK/Programs/Dinky|here]] is an example of a multi-part program page.
  
  
Or, you may choose to make a new link, like so, and then click on it when you are done editing and
+
== Standalone Programs ==
you will be linked to a blank page where you can drop in code.
+
* [[FractalMelody.ck|FractalMelody]] : Recursive Chuck Program : Kristjan Varnik (2004)
* [[ChucK/foo.ck]] : (enter description) : author
+
* [[bwv645.ck|Bwv645]] : from [[ChucKing_Scores]] : Pedro López-Cabanillas (2006)
 +
* [[Green.ck|Greensleeves]] : from [[ChucKing_Scores]] : Pedro López-Cabanillas (2006)
 +
* [[Anamag04.ck|Anamag04]] : from [[ChucKing_Scores]] : Pedro López-Cabanillas (2006)
 +
* [[shakercycle.ck|ShakerCycle]] : fun noise with Shaker : --art (2006)
 +
* [[StereoChordEGG.ck|StereoChordEGG]] : Simulation of Ancient Technology: jahbini (2005)
 +
* [[ChucK/Bad_VOSIM.ck|Bad_VOSIM]] : quick and dirty vosim : no one (2004)
 +
* [[ChucK/Examples|some examples]] from distrobution : team (current)
 +
* [http://www.stacken.kth.se/stackhack/20041028/index.en results] : stacken ChucK competition (2004)
 +
* [[ChucK/fm.ck|FM example]] : Basic FM "by-hand" example : Ge Wang (2004)
 +
* [[ethereal.ck|Ethereal]] : Generates crappy new age music (course assignment, not personal artistic statement!) : Graham Percival (2005)
 +
* [[son_of_ethereal.ck|SonOfEthereal]] : As a learning experiment; I took Graham's program and tried to add and change some various aspects of it. : T. Scott (2007)
 +
* [[logistic.ck|Logistic Map sonification]] : Generates noise based on a fractaline mathematical object : Graham Percival (2006)
 +
* [[shepard.ck|Shepard tones]] : Generates a shepard tone : Graham Percival (2006)
 +
* [[ChucK/CanonD.ck|Canon in D]] : Famous Johann Pachelbel canon in D : Pedro López-Cabanillas (2007)
 +
* [[EasyMIDI.ck|Simple Polyphonic MIDI]]: 10 tones of polyphonic MIDI awesomeness... using a very simple/straightforward method: drool (2007)
 +
* [[LiSa examples]]
 +
* [[Triangular_Popcorn.ck|Triangular Popcorn]]: A poor version of Popcorn in chuck. : Ryan Henszey (2007)
 +
* [[metronome.ck|Metronome]]: A simple metronome for miniAudicle : Jascha Narveson (2007)
 +
* [[MAUWii.ck | MAUWii]]: Maps Wii data onto sliders : Jascha Narveson (2007)
 +
* [http://ccrma.stanford.edu/~jchrsmt/Compose/Chuck/enginedrone.ck Multi-channel Chuck composition] : Example composition (data files required) that builds multi-channel sound in Chuck.  The piece is a series of engine (e.g. lawnmower, leafblower...) drones:  jeff smith (2007).
 +
* [[bass_funct.ck|2D Linear Dynamical System]] with the two variables mapped to frequencies of sin oscillators. Change the A matrix for different systems : Watson (2008)
 +
* [[Modedular.ck | Modedular: class for musical modes and operations]] - Build, acquire notes/chords from, and rotate musical modes. by kijjaz (2008) - still a testing version.
 +
* [[DrumPatterns.ck | Drum Patterns]] generation algorithm alpha : Ruslan Prokopchuk (2008)
 +
* [http://www.local-guru.net/blog/pages/chuckicontrol Chuck-iControl] A chuck script to map the midievents generated from an iControl controller board to osc, by Nikolaus Gradwohl (2008)
 +
* [http://vilson.void.cc/wiki/index.php?n=Main.ChuckWiimote ChuckWiimote] A ChucK interface to Wiimote (+ Nunchuk) using the DarwiinRemoteOSC handler.
  
 +
== Multiple-component Programs ==
 +
* [[ChucK/Programs/12BarBlues|12 bar blues]] : 12 Bar Blues standard : Rasmus Kaj + Gary Williams (2005)
 +
* [[ChucK/Programs/Dinky|Dinky]] : Dinky class/driver : Ge Wang (2005)
  
 +
== Code for Complete Pieces ==
 +
* (add a few)
  
NOTE: In your code listings if you have a blank line with no spaces (when you are leaving white space to separate parts of your program) the WIKI will use separate boxes and it will look very bad. Just go to all the blank lines and put in a space. This is easy to do with a powerful text editor like Emacs or Vi.
 
 
== Related Links ==
 
* [[ChucK/Sounds]] - another place to post/listen to programs
 
* [[ChucK/Examples]] - example programs
 
* [[ChucKing_Scores]] - tutorial on writing scores in ChucK
 
* [[ChucK/Dev/Tools]] - programs/tools written '''for''' using ChucK
 
* [http://www.stacken.kth.se/stackhack/20041028/index.en stacken] : stacken ChucK competition (2004)
 
  
== Standalone Programs ==
+
== Useful ChucK Components ==
* [[StereoChordEGG.ck]] : Simulation of Ancient Technology: jahbini
+
* [http://smelt.cs.princeton.edu/ S.M.E.L.T.] : starter toolkit for building laptop instruments : Rebecca Fiebrink and Ge Wang (2007)
* [[FractalMelody.ck]] : Recursive Chuck Program : Kristjan Varnik
+
* [[ChucK/sequencer.ck|sequencer.ck]] : simple sequencer for building drum loops, etc. : Spencer Salazar (2006)
* [[ChucK/Bad_VOSIM.ck]] : quick and dirty vosim : no one
+
* [http://ccrma.stanford.edu/~jchrsmt/Compose/Chuck/nchannel4.ck 4 channel] [http://ccrma.stanford.edu/~jchrsmt/Compose/Chuck/nchannel8.ck 8 channel] [http://ccrma.stanford.edu/~jchrsmt/Compose/Chuck/nchannel16.ck 16 channel] [http://ccrma.stanford.edu/~jchrsmt/Compose/Chuck/nchannel18.ck 18 channel]  : jeff smith (2007) toolkit for building multi-channel sound in chuck.  Examples included.
* [[ivyTree.ck]] : generative, algorithmic program based on an extended metaphor of cell differentiation and plant growth : Matthew Shanley
+
* [[ChucK/kijjaz-utility-classes.ck | kijjaz's utility classes]] : simple classes providing utilities for general use
* [[Chord-o-matic.ck]] : any midi note turns into a minor or major chord : paniq
+
* [[ChucK/kijjaz-friends-sounds.ck | kijjaz and friends at electro-music.com's sound designs]] : releases of our attempts on creating some sounds, especially with low CPU usage. (So to make it nice for using in live situation as well.)
 +
* [[ChucK/ear-saver.ck|Protect your ears!]] : Here's a simple example showing a good habit to get in to if you code with headphones on...  (Jascha Narveson, 2012)
  
== Larger pieces ==
 
* [http://www.stacken.kth.se/~kaj/2005/chuck12.en ChucK 12-bar blues] : A drum beat and a 12-bar blues standard : Rasmus Kaj
 
** [[hihat.ck]] : the hihat program (with commented out syntax error) : Gary Williams
 
** [[kick.ck]] : the kick drum program (with commented out syntax error) : Gary Williams
 
** [[snare.ck]] : the snare drum program (with commetned out syntax error) : Gary Williams
 
** [[baseloop.ck]] : the base loop program : Gary Williams
 
** The current version of Frankenstein didn't allow dividing a float by a dur, so I just commented the divide op and substituted a simple assign, which may not be what Rasmus was aiming at -- I'm not sure it positions to the end of the sndbuf correctly. -- Gary
 
*** All I was aiming for is that the sound should not be heard when loading, but only when I "tell it to start".  Maybe there is some better way of doing that? -- Rasmus
 
**** To not let sndbuf play until triggered, set .play or .rate to 0.0 (0.0 => s.rate) and set it to 1.0 when you want to start. -- Ge
 
  
 
== Wish List ==
 
== Wish List ==
Line 44: Line 62:
 
* Symphonic orchestra
 
* Symphonic orchestra
 
* Techno / Industrial
 
* Techno / Industrial
 +
 +
 +
== Related Links ==
 +
* [[ChucK/Sounds]] - another place to post/listen to programs
 +
* [[ChucK/Examples]] - example programs
 +
* [[ChucKing_Scores]] - tutorial on writing scores in ChucK
 +
* [[ChucK/Dev/Tools]] - programs/tools written '''for''' using ChucK

Latest revision as of 21:14, 20 February 2012

ChucK Programs

  • This is the centralized place to share your programs

You can upload programs and images using this link:

  • Special:Upload upload your file. Warning: this only works for image files, not for .ck programs.

To see the list of uploads:

Or, you may choose to make a new page containing the code, which you can link from this page like this:

  • ChucK/foo.ck : (enter description) : author
  • feel free to put explanations on the code pages
  • note: In your code listings, remember to put a space before every line in the code, including empty lines - otherwise the wiki will render the code into multiple blocks. here is an example that works.
  • for a multi-part program, or for larger pieces, you may want to create a new page that describes the program/piece and links to the components. here is an example of a multi-part program page.


Standalone Programs

  • FractalMelody : Recursive Chuck Program : Kristjan Varnik (2004)
  • Bwv645 : from ChucKing_Scores : Pedro López-Cabanillas (2006)
  • Greensleeves : from ChucKing_Scores : Pedro López-Cabanillas (2006)
  • Anamag04 : from ChucKing_Scores : Pedro López-Cabanillas (2006)
  • ShakerCycle : fun noise with Shaker : --art (2006)
  • StereoChordEGG : Simulation of Ancient Technology: jahbini (2005)
  • Bad_VOSIM : quick and dirty vosim : no one (2004)
  • some examples from distrobution : team (current)
  • results : stacken ChucK competition (2004)
  • FM example : Basic FM "by-hand" example : Ge Wang (2004)
  • Ethereal : Generates crappy new age music (course assignment, not personal artistic statement!) : Graham Percival (2005)
  • SonOfEthereal : As a learning experiment; I took Graham's program and tried to add and change some various aspects of it. : T. Scott (2007)
  • Logistic Map sonification : Generates noise based on a fractaline mathematical object : Graham Percival (2006)
  • Shepard tones : Generates a shepard tone : Graham Percival (2006)
  • Canon in D : Famous Johann Pachelbel canon in D : Pedro López-Cabanillas (2007)
  • Simple Polyphonic MIDI: 10 tones of polyphonic MIDI awesomeness... using a very simple/straightforward method: drool (2007)
  • LiSa examples
  • Triangular Popcorn: A poor version of Popcorn in chuck. : Ryan Henszey (2007)
  • Metronome: A simple metronome for miniAudicle : Jascha Narveson (2007)
  • MAUWii: Maps Wii data onto sliders : Jascha Narveson (2007)
  • Multi-channel Chuck composition : Example composition (data files required) that builds multi-channel sound in Chuck. The piece is a series of engine (e.g. lawnmower, leafblower...) drones: jeff smith (2007).
  • 2D Linear Dynamical System with the two variables mapped to frequencies of sin oscillators. Change the A matrix for different systems : Watson (2008)
  • Modedular: class for musical modes and operations - Build, acquire notes/chords from, and rotate musical modes. by kijjaz (2008) - still a testing version.
  • Drum Patterns generation algorithm alpha : Ruslan Prokopchuk (2008)
  • Chuck-iControl A chuck script to map the midievents generated from an iControl controller board to osc, by Nikolaus Gradwohl (2008)
  • ChuckWiimote A ChucK interface to Wiimote (+ Nunchuk) using the DarwiinRemoteOSC handler.

Multiple-component Programs

  • 12 bar blues : 12 Bar Blues standard : Rasmus Kaj + Gary Williams (2005)
  • Dinky : Dinky class/driver : Ge Wang (2005)

Code for Complete Pieces

  • (add a few)


Useful ChucK Components


Wish List

What sample programs would you like to see?

  • Symphonic orchestra
  • Techno / Industrial


Related Links