[Hopperxx] Oppen Do Down: JavaScript interactive audio

Jim Andrews jim at vispo.com
Thu Apr 12 23:36:21 CDT 2018


OPPEN DO DOWN
http://vispo.com/vismu/oppen

This is a JavaScript version of a 2000 interactive audio piece I 
originally did in Macromedia Director.

I sang/composed, recorded and mixed these sounds.

Blue words are on. Gray words are off. Click a word to toggle its sound.

I show a little bit of Oppen Do Down in a video I did at 
https://youtube.com/watch?v=FcGEMHPhMVw which talks about the heap as a 
new form of music in Nio, Jig-Sound, and Oppen Do Down.

I used the newish Web Audio API to do this new JavaScript version of 
Oppen Do Down. I wrote some tech notes on it at 
http://netartery.vispo.com/?p=1997 before I sat down to do Oppen Do 
Down. Which worked out well. More to come.

The Web Audio API makes this sort of synchronization simpler to do than 
it was in Director. That's because the Web Audio API provides a 
high-performance clock. It's high-performance in that it is apparently 
accurate to considerably less than 1 millisecond. The resolution of this 
clock lets you time events down to the individual sample. Secondly, this 
clock apparently stops for nothing. Whereas yer typical timers in 
computer programming are not the highest priority processes and so are 
subject to delays from higher priority processes doing their thing. 
However, I have read that hackers have used this clock's high precision 
to time how long it takes the browser to do encryption-related things, 
thus helping the hacker figure out the algorithms being used. So some 
browsers apparently cripple the precision of the clock. Everything these 
days is a security issue. Anyway, I talk about this sort of stuff in the 
technotes I mentioned.

Next up, as in Nio and Jig Sound, is the ability to sequence and layer 
synchronized sound icons. In Oppen Do Down, you can only layer them.

Around 2001 or 2002, I got invited to Ottawa to show this piece and some 
others. Turns out they actually demanded a performance. So I sang 
it/accompanied it while I played it. That took some practice.

Let me know if it doesn't work in your browser or you find bugs, please. 
I've tested it on a bunch of browsers on the PC and Mac. Works on them 
all except Opera on the Mac. It also works fine on Android, the iPad, 
and the iPhone.

ja





More information about the Hopperxx mailing list