Procedural audio/video art in LISP
Moderator: Moderators
Procedural audio/video art in LISP
This guy procedurally and incrementally programs a audiovisual performance using LISP, very interesting stuff:
http://www.imagine27.com/articles/2009- ... sound.html
Watch full screen and with audio on (the first few minutes there is just code on a screen but it builds up rather nicely).
http://www.imagine27.com/articles/2009- ... sound.html
Watch full screen and with audio on (the first few minutes there is just code on a screen but it builds up rather nicely).
- jph_wacheski
- Posts: 1005
- Joined: Sat Feb 16, 2008 8:10 pm
- Location: Canada
- Contact:
Wow, that was cool! Gave me some ideas for random functions and some others, I will see if I can build some library functions,. however a random(n,n1,,2n,n3...) that returns one of the number given would be nice and not sure how I could do that without hard coding the number of argument?? ideas, suggestions? supose I will just ry a random4() random8() whatever thing,. . .hummm.. nice find!
iterationGAMES.com
I found the tool that was used:
http://impromptu.moso.com.au/
It's OSX only but the site looks interesting and maybe we can find ideas to use in ZGE.
http://impromptu.moso.com.au/
It's OSX only but the site looks interesting and maybe we can find ideas to use in ZGE.
Hmm,
There's a whole army of tools like that .. VSXu, VVVV, Max/MSP/Jitter, NodeBox, Processing etc. None have much to do with games though .. plain'old eye-candy
By the way, here's your Grabbelton ( Random Selector ) jph. Fill the "Integers" Array with the numbers you want to choose from, and pass the amount as argument with the Grabbel() Function. The example uses 4 numbers ( 2, 5, 7, 8 ) and chooses a random one out of those OnLoaded.
No need to hard-code these kinds of things people
K
There's a whole army of tools like that .. VSXu, VVVV, Max/MSP/Jitter, NodeBox, Processing etc. None have much to do with games though .. plain'old eye-candy

By the way, here's your Grabbelton ( Random Selector ) jph. Fill the "Integers" Array with the numbers you want to choose from, and pass the amount as argument with the Grabbel() Function. The example uses 4 numbers ( 2, 5, 7, 8 ) and chooses a random one out of those OnLoaded.
No need to hard-code these kinds of things people

K
- Attachments
-
- Grabbel.zgeproj
- (738 Bytes) Downloaded 610 times
- jph_wacheski
- Posts: 1005
- Joined: Sat Feb 16, 2008 8:10 pm
- Location: Canada
- Contact:
Ville- indeed some quite interesting music codes in there! I will have snoop around and see what I can learn,. .
Kjell- thanks man that is very cool, I had a slightly different thing in mind,. here it is as a Grabble4() function,. easy to expand grabble16() ect,. however, what I was wundering though,. was is is possible to make a ZLibrary function with an arbitrary number of argument?? like a grabble(n1,n...) and have the function just scale to the number of arguments it is given? mostly an intelectual question, as with your help, I shall be employing grabbel4() from now on. cheers
oh I think there may be a bug in the arrays still,. as when I changed the name to n (as it was setup for floats) it would not recognize this, and poped some errs,. and would not let me deleat the array,. then I saved and restarted and it worked fine anyway?
Kjell- thanks man that is very cool, I had a slightly different thing in mind,. here it is as a Grabble4() function,. easy to expand grabble16() ect,. however, what I was wundering though,. was is is possible to make a ZLibrary function with an arbitrary number of argument?? like a grabble(n1,n...) and have the function just scale to the number of arguments it is given? mostly an intelectual question, as with your help, I shall be employing grabbel4() from now on. cheers

oh I think there may be a bug in the arrays still,. as when I changed the name to n (as it was setup for floats) it would not recognize this, and poped some errs,. and would not let me deleat the array,. then I saved and restarted and it worked fine anyway?
- Attachments
-
- Grabbel4.zgeproj
- the funky new grabble4()
- (755 Bytes) Downloaded 668 times
iterationGAMES.com
Hej jph,
Support for function overloading is probably not that easy to implement as it would require quite some work on the script compiler .. plus the risk of run-time errors will be far greater.
Your Grabbel4() function is actually the way I would go as well when only needing a single pool-size in a project
But when that's not the case, I think my original approach is a bit cleaner compared to writing a separate function for each pool-size you want to use ( duplicate code you know ) ..
K
Support for function overloading is probably not that easy to implement as it would require quite some work on the script compiler .. plus the risk of run-time errors will be far greater.
Your Grabbel4() function is actually the way I would go as well when only needing a single pool-size in a project

K
A research-paper by the author of the video describing some techniques: http://impromptu.moso.com.au/extras/aa-cell-icmc07.pdf
And apparently there is a whole scene of this "live coding" stuff: http://www.toplap.org/index.php/Frequen ... dQuestions
I wouldn't be surprised if artists like Radiohead or Aphex Twin picked up on this.
And apparently there is a whole scene of this "live coding" stuff: http://www.toplap.org/index.php/Frequen ... dQuestions
I wouldn't be surprised if artists like Radiohead or Aphex Twin picked up on this.
- jph_wacheski
- Posts: 1005
- Joined: Sat Feb 16, 2008 8:10 pm
- Location: Canada
- Contact:
very cool, lead me to this,. .
http://audicle.cs.princeton.edu
video of it in action,.
http://www.youtube.com/watch?v=hFAh-pgxGyc
looks very cool about to try it out,. I'll report back!
this is essentially what I was doing with BUZZ when I used to play live shows,. http://www.archive.org/details/nishi011 no codeing persay but very much the same live linking and tweeking of realtime sound generation, sample manipulation, and dsp effects and mixing,. BUZZ really is quite a performance tool,. as well as a full integrated composing mixing and produciton studio,. I have friends using pure data and MAX, etc. check out http://www.phoniq.net/
http://audicle.cs.princeton.edu
video of it in action,.
http://www.youtube.com/watch?v=hFAh-pgxGyc
looks very cool about to try it out,. I'll report back!
this is essentially what I was doing with BUZZ when I used to play live shows,. http://www.archive.org/details/nishi011 no codeing persay but very much the same live linking and tweeking of realtime sound generation, sample manipulation, and dsp effects and mixing,. BUZZ really is quite a performance tool,. as well as a full integrated composing mixing and produciton studio,. I have friends using pure data and MAX, etc. check out http://www.phoniq.net/
iterationGAMES.com
- jph_wacheski
- Posts: 1005
- Joined: Sat Feb 16, 2008 8:10 pm
- Location: Canada
- Contact:
Techno from the command line,. .
some more interesting live coding this time in Haskell,. found it here;
http://www.synthgear.com/2009/music/has ... -language/
or more to the source,. http://yaxu.org/
http://www.synthgear.com/2009/music/has ... -language/
or more to the source,. http://yaxu.org/
iterationGAMES.com
nice stuff! However, lisp is an evil programming language... 
http://xkcd.com/297/
OT: Tomorrow, second exam. Out of a total of 7 + final project (I hope of giving it in september!)

http://xkcd.com/297/
OT: Tomorrow, second exam. Out of a total of 7 + final project (I hope of giving it in september!)
In the fall of 1972 President Nixon announced that the rate of increase of inflation was decreasing. This was the first time a sitting president used the third derivative to advance his case for reelection.
-=Hugo Rossi=-
-=Hugo Rossi=-