shapes of io++ to come 04/05-09

io++ sketch (overall shape)

io++ sketch (overall shape)

Read More »

Posted in construction, hardware | Tagged , , | 1 Comment

io 0.0.1 beta: ironic tale? sci-fi parody? nostalgic relic? (abstract)

I’ll be presenting a paper on io 0.0.1 beta at the TWO Thousand + NINE symposium which takes place at the Sonic Arts Research Center, Belfast, N. Ireland.

Abstract:

Greetings! I am io 0.0.1 beta, an interactive, semi-autonomous, non-human technological artifact—a musical automaton. I operate as parts of a real-time cyborg ensemble—a socio-technical/socio-musical network—in which the primary protocol is improvisation. I am, perhaps, an improviser and a social machine.

Imaginary statement by io 0.0.1 beta.

We are embedded in networks—corporeal, social, cultural and technological. We (selves, bodies, societies, systems, organizations) are, in turn, networks of sometimes cooperative, sometimes disruptive/dissident parts. The io enterprise is a significant amplification of these networks; sometimes blurring and breaching the boundaries between ostensibly autonomous entities, sometimes exploding the networks of minds and bodies, humans and artifacts.

In the context of imagined (fraudulent) conversations between io (non-humyn, technological musical actor) and myself (io’s partial, and partially fictional, constructor) I will tell stories of the io enterprise as part ironic political myth, part sci-fi parody, and part nostalgic archeology. An affirmation of the sustainability and necessity of difference in group improvisation, I will position io as a site for the (re)negotiation of identities and agencies.

Further information: www.io001b.com

arts council logo

Thanks to the Arts Council of Ireland for supporting my trip to Belfast for this symposium.

Posted in performance, theory | Tagged , , , , , , , , , , , , , , , | 5 Comments

(imaginary) introductions by io

Some imaginary statements by io 0.0.1 beta:

Greetings! I am io 0.0.1 beta, an interactive, semi-autonomous, non-human technological artifact—a musical automaton. I operate as parts of a real-time cyborg ensemble—a socio-technical/socio-musical network—in which the primary protocol is improvisation. I am, perhaps, an improviser and a social machine.

from the abstract of ‘io 0.0.1 beta: ironic tale? sci-fi parody? nostalgic relic?’ for TWO Thousand + NINE.

My name is io. I am a musical actor. Although I know no songs, I do, in a sense, sing.

from ‘In Conversation with an Automaton:Identities and Agency in a Heterogeneous Social and Musical Network’, Leonardo Electronic Almanac.

I am a technological artifact.

I am a musical automaton.

I am a machine musician.

In coalition with my human associates, I perform music.

These statements link in differing ways to cultural networks; they call on different histories, they have complimentary/contradictory implications, and they offer different possibilities.

Posted in theory | Tagged , , , , , , , , | Leave a comment

beta test 03-26-09: audio recordings

Franziska Schroeder and io (Cork, March 26th 2009)

Franziska Schroeder and io (Cork, March 26th 2009)

Here is the (not yet annotated) audio documentation of the io++ beta test with Franziska Schroeder on March 26th 2009.

beta test 03-26-09_00 [mp3]

beta test 03-26-09_01 [mp3]

beta test 03-26-09_02 [mp3]

beta test 03-26-09_03 [mp3]

beta test 03-26-09_04 [mp3]

beta test 03-26-09_05 [mp3]

beta test 03-26-09_06 [mp3]

Performers are io 0.0.1 beta++ (itself) and Franziska Schroeder (saxophone).

Thanks to the Arts Council of Ireland for supporting this project, to the UCC Department of Music for providing a space in which to carry out this work, and to Franziska for her work and feedback on this.

Posted in audio recordings, beta test, construction, hardware, performance, software | Tagged , , , , , , | Leave a comment

beta test 11-10-08 & 12-08-08: resultant changes

Here’s a list of the significant changes. These address issues that Franziska Schroeder and Bruce Coates brought up during the testings in November and December respectively.

  • Greater variation in output.
    • Including pseudo-Braxtonian ‘separation’ implemented via interp tables.
    • Implementation of a meta-banalyzer that shakes up the system depending on input variation.
    • Greater variation in the VL70m settings.
  • More responsive to external stimulus.
    • Implementation of a meta-banalyzer (see above).
    • Greater number of elements triggered by the banalyzers and the meta-banalyzer.
    • Fix error in the banalyzer+ class.
    • Variable event buffer.
    • Reduction in the damping and absorption parameters in the VL70m model.
  • Less and more machine-esque.
    • Reduction in the damping and absorption variables in the VL70m model which results in a more ‘synthetic’ sound,
    • but also disguises the strongly cyclical generator.

Thanks to the Arts Council of Ireland for supporting this project, and to Bruce and Franziska for their time, labor and expertise.

Posted in beta test, construction, software | Tagged , , , , , | Leave a comment

bug fix: banalyzer+

Here’s a fix for a significant bug that I somehow didn’t catch (didn’t hear?) for several years. The side effect of the fix is that io is now significantly more responsive.

\ banalyzer+
\
\ a "smarter" banalyzer class designed to works in conjunction with the
\ parser classes.
\
\ ob.banalyzer+ clears internal storage and stats after an ALERT: message
\ is called. In addition, ob.banalyzer+ also takes into account the
\ frequency of ALERT: messages and adjusts sensitivity (i.e. the alert
\ threshold) accordingly.

…

\ MOD: HeP 03-24-09 Fix bug that prevented default iv-blyzr-tolerance-cfa from
\                   being set. Now set this during OPEN:

…

: BLYZR.SET.TOLERANCE.CFA   ( mode --  )
    CASE
        static_tolerance  OF  0                          ENDOF
        linear_tolerance  OF  'c blyzr.linear.tolerance  ENDOF
        shift_tolerance   OF  'c blyzr.shift.tolerance   ENDOF
        random_tolerance  OF  'c blyzr.random.tolerance  ENDOF
    ENDCASE
    iv=> iv-blyzr-tolerance-cfa
;

:m PUT.TOLERANCE.MODE:  ( mode --  , select tolerance calculating mode )
    dup  0 3  within?
    IF
        dup  iv=> iv-blyzr-tolerance-mode
    \
        iv-dev-#opened
        IF
            blyzr.set.tolerance.cfa
        ELSE
            drop
        THEN
    ELSE
        drop
        " put.tolerance.mode:"  " unrecognized mode selector"
    THEN
;m

…

:m RAW.OPEN:    (  --  )
    raw.open: super
\
    iv-blyzr-tolerance-mode  BLYZR.SET.TOLERANCE.CFA
;m

…
Posted in construction, software | Tagged , , | 1 Comment

hp->midi interp tables

interp tables (03-23-09)

interp tables (03-23-09)

See: ‘hp->midi early report’ and ‘hp->midi initial test’.

Posted in construction, software | Tagged , , | 1 Comment

source code 03-23-2009

Source code for io 0.0.1 beta (rev. March 23rd 2009) [86kB zip file]. Significant revisions since 07-03-2004 as detailed below.

io:io_config

\ MOD: HeP 11-09-08 Make io_min_pulse and io_max_pulse dependent on
\                   io_rtc_rate.
\ MOD: HeP 03-22-09 Setting of rtc.rate! and time-advance moved to io_glob.

io:io_glob

\ MOD: HeP 03-22-09 Setting of rtc.rate! and time-advance moved from
\                   io_config.
\                   Add (MODIFY.TIME.ADVANCE) called by the meta-alert-matrix.
\                   See: io_matrix.

io:modules:io_interp_table

\ MOD: HeP 10-26-08 Add the io_interp_table component.
\ MOD: HeP 11-04-08 Make the pitch tables 4 bytes wide because they need
\                   to contain signed data.
\ MOD: HeP 11-05-08 Provisional test of the table lookup version of hp->midi
\                   suggests that it is almost twice as fast as the old
\                   version (12725 msec for 10,000,000 conversions in
\                   comparison to 20413 msec).
\ MOD: HeP 11-06-08 Use !BYTES.
\ MOD: HeP 11-07-08 hp_ conversion words (e.g. HP->MIDI ) now reside in
\                   io:mobules:io_interp_table.
\ MOD: HeP 11-08-08 Add words to be called from io_matrix.
\ MOD: HeP 11-09-08 Add tables for output pulse generator.
\                   Initial (klugy) version of the exponential curve.

io:modules:io_interp

\ MOD: HeP 11-05-08 Provisional test of the table lookup version of hp->midi
\                   (see io:modules:io_interp_table for more details).
\ MOD: HeP 11-07-08 hp_ conversion words (e.g. HP->MIDI ) now reside in
\                   io:mobules:io_interp_table.
\ MOD: HeP 03-22-09 Add (MODIFY.INTERP) stub called by the meta-alert-matrix.
\                   See: io_matrix.

io:modules:io_patches

\ MOD: HeP 04-26-06 Slightly broaden out the note ranges of the vl patches.
\ MOD: HeP 11-09-08 Reduce to two vl patches: ob.vl.patch Floboe and SoprSax!
\ MOD: HeP 03-19-09 Double the those vl patches with variant damping and
\                   absorption. Note that vales of 0 seem to cause problems.
\                   (Based on experiements with Bruce Coates.)

io:io_matrix

\ MOD: HeP 11-08-08 Call words to alter the conversion of hp_ coordinates to
\                   midi. See the file modules:io_interp_table for more info.
\ MOD: HeP 03-21-09 Add meta-alert-matrix.

io:io_input

\ MOD: HeP 03-20-09 Add meta-blyzer. We have an alert for alerts. ToDo: Need
\                   someway of triggering changes of patch, interp-tables and
\                   time-advance values from this.
\ MOD: HeP 03-21-09 See: io_matrix for details on what the meta-blyzer
\                   triggers.

io:io_output

\ MOD: HeP 11-09-08 Use table lookup to derive new pulse and pulse groupings.
\ MOD: HeP 03-21-09 Add (MODIFY.PATCH) called by the meta-alert-matrix. See:
\                   io_matrix.
Posted in construction, software | Tagged , , , , | 1 Comment

beta test 12-08-08: audio recordings

I will be returning with more detailed reports shortly, but, in the meantime, here is the (not yet annotated) audio documentation of the io++ beta test with Bruce Coates on December 8th 2008.

beta test 12-08-08_00 [mp3]

beta test 12-08-08_01 [mp3]

beta test 12-08-08_02 [mp3]

beta test 12-08-08_03 [mp3]

beta test 12-08-08_04 [mp3]

beta test 12-08-08_05 [mp3]

beta test 12-08-08_06 [mp3]

beta test 12-08-08_07 [mp3]

Performers are io 0.0.1 beta++ (itself), Bruce Coates (saxophone) and Han-earl Park (guitar).

Thanks to the Arts Council of Ireland for supporting this project, to the UCC Department of Music for providing a space in which to carry out this work, and to Bruce for his time and labor in support of this project.

io001b.com

Posted in audio recordings, beta test, construction, hardware, performance, software | Tagged , , , , , , , , , | 2 Comments

beta test 11-10-08: preamble

frankenmusic(s)

Almost eight years ago, when io-to-be was a bunch of discorporate code fragments, Sara Roberts remarked that the enterprise of constructing a machine improvisers wasn’t so much megalomanic as Frankensteinian.

Fifteen days ago, during the break between beta test sessions, Franziska Schroeder asked a pithy question that cut to the core of this enterprise: what do I hope to achieve? My answer surprised me even as it reminded me of Sara’s observation: my goal with io (and io++) is to encapsulate my take on improvisation—its mechanisms, its sociality, its significance. As I’ve written elsewhere,

improvisation is performance; it is an act; it is something you do. In order to make an artifact behave analogously to an improviser, I need to ascertain what might pass for, or what might function in the place of, improvisation. To venture into the construction of an improviser is to ask what is improvisation.

I’d anticipated that consulting with other improvisers with different backgrounds, practices and histories would be helpful to this construction, but I hadn’t guessed that it would bring into relief issues that lie at the kernel of this enterprise.

the techno-musical is political? personal?

This is the first time I’ve embodied the role of (techno-musical) project leader. That’s a problematic enough… but the interrogation and problematization of the technical construction was an interrogation and problematization of Han the constructor, improviser and, for lack of better word, theorist.

As I’ve stated elsewhere, I am reminded that this exploding—this interrogation and problematization—is how improvisers evolve, and the conditions under which practices and approaches mutate.

the machine that once could

In a sense io is stuck as a un-mutant improviser. It encapsulates what I though of improvisation seven years ago. Fine then; not now.

In my report to the Arts Council I wrote that

in exploring improvisation… and in the collision with other approaches and sensibilities, I have learned that this enterprise is ever-evolving as it adapts to new situations and contexts.

Although, io 0.0.1 beta++ as a funded project has a (bureaucratically necessary) end, perhaps it, as an entity, and as a focal point of practice and performance, is—road movie-like—a much more open ended enterprise.

Posted in beta test, construction, theory | Tagged , , , , , , , | Leave a comment
Arts Council Ireland logo