Week 18: Beep-boop-beep-bleep-doop INSPIRATION COMPUTED.

Mar 12, 2012 15:50

Whew. This entry very nearly did not happen-- not for lack of "inspiration," nor for lack of time spent. I would estimate that the musical "result" of this entry and all the aborted efforts to do other things along the way have taken me something like 20-25 total hours of labor over the span from Friday morning to Monday afternoon. I think my previous record LJI entry this season has taken me perhaps 2 hours to write; average is maybe 25-40 minutes, not counting any possible premeditation. At least if I go out this round, I can go out feeling like I made a proper degree of effort.

Oh, and this entry has relevant "music" at the end. It's a link and stuff. As for why it's there...? Read on.

...And have you signed up for LJ Haiku Idol yet?

And I quote: "Pick a current Idol contestant and use them as the inspiration for your entry."

Thank goodness for Gary's specifically-vague wording. If you've read me at all, you know I ain't no Oprah fan; touchy-feely is not my home turf. I was going to have to read the word "inspiration" in a very different sense-- in the sense of "weird idea fodder". Now that is something I can definitely get down with.

I love codes (what little of ciphers I can understand, anyway). I love mangling words, unusual turns of phrase that only come about through purposely throwing wrenches either into my system or someone else's. I love using and coming up with various tools, systems, computer-assisted tomfoolery to bury deep statements with personal meaning behind an undecipherable, beautiful wall of gibberish. I've used crazy systems and "semi-computerized inspiration" for ages in my music-making. They are DEFINITELY "inspiring," as the ol' prompt goes.

My first thought was that I would have an LJI candidate nominate themselves, then use a technique called Markov chaining to analyze their LJI entries, and do some kind of controlled writing experiment based on the Markov analysis of their Idol output.

Responding to my call for "inspiration," n3m3sis42 nominated herself. I allowed a couple of "sidechain influences" too; Markov chaining comes up with the most convincingly-English results when it has a large sample, and/or multiple samples from diverse authors. theafaye and malruniel11 nominated themselves as my source backups.

I grabbed all of n3m3sis42's LJI Season 8 entries, saved them all as text files, and made sure I'd read all of them carefully. I did word count checks for the heck of it to see if that would lend me any ideas. I told the computer to analyze her entries and create a Markov probability table. I grabbed some of theafaye and malruniel11's content too.

What I was going to do was write a "remix" of n3m3sis42's Week 2 entry (the one for "three little words"). It was my favorite entry of hers so far this season-- the one I enjoyed most, could relate to most, the one with the steamiest language. (I also didn't want to risk controversy by "remixing" any of the entries about her child-- which was most of them in some way, as it turned out.) Above all, her Week 2 entry was a straightforward narrative with just enough mystery that I could let the computer help me revamp it and take some liberties with it.

The process of "computer-assisted writing," which I've used a lot in writing lyrics, involves a mix of human judgment and computerized hyperproductivity. I let the machine spit out tons and tons of stuff based on a source text. Then I throw away 99.9999% of what comes out. I heavily edit and rearrange whatever of its output I choose to keep.

I started by having the computer write about 4000 words' worth of stuff modeled on n3m3sis42's entire "catalog" of 15 entries. From that, I took 15-20 wacky sentences I liked the most. I started rearranging them into blocks to somewhat resemble her tale. I planned to add a second narrative voice to the mix, first-person, and I would use theafaye and malruniel11 as added Markovian "inspirations" for those sections.

But, awwwwwww shit, it wasn't working out so well. (I'll post some of the output in the comments for this entry later tonight. edit: or just go here.) I wasted about three hours having the computer spit things out for me to mostly throw away, and the machine wasn't coming up with much that would let me expand her original tale. At only 13k-ish words, the Markovian sample was just too small, and the computer was beginning to repeat itself a lot with each subsequent pass.

I also knew that readers / voters would likely be baffled by the finished product, failing to see the beauty (not to mention all the intense manual labor) in the end result. Avant-garde machine-fiction has never done terribly well in LJI, to my knowledge.

So I curtailed my efforts after several wasted hours and decided on another approach: I was going to write an electronic-music work that would depict all of n3m3sis42's fifteen LJI entries so far in audio form. No less endearing / appealing to the LJI base, perhaps-- but it would probably be a helluva lot more fun!

Right, so this is where shit really started to get serious. I am going to keep things as simple as possible and try not to bore with too many technical details, but some brief explanation is necessary to understand what I ended up doing.

The "music" you may or may not listen to in a moment (from the link below, at the end) was very much a hands-on, highly-manual-if-fully-digital creation. I didn't just have some program sitting around that would do this dumb stuff in one go.

I created my own plan, using specific aspects of n3m3sis42's LJI output to design my work, and had to come up with a fair amount of crazy stuff from scratch. My most-heavily-used tools here were actually a calculator, my spreadsheet program, and a programmer-oriented text editor (the other tools being an audio programming environment called CSound, and my recording app REAPER to put everything together at the end).

n3m3sis42 has posted 15 entries this season (not counting whatever she posts this week). What I wanted to do was create a means of converting her 15 text entries directly into audio frequencies that could, hypothetically, be decoded-- so it would be like storing all of her writing this season in a single piece of music, which might be something you could feed into an audio-aware computer, after which you could reasonably recognize the decoded output as her entries.

This meant that I would convert each text character in her entries into a consistent musical frequency and play the "musical characters" in order.

If I was gonna be able to "hear all of those entries" simultaneously, each entry had to have its own "character-frequency equivalence chart," getting its own specific chunk of the audible spectrum, just like radio and TV stations do in the inaudible spectrum.

Roughly 86 text characters were in use in n3m3sis42's entries, so each chunk of audible spectrum-- say, the range of 1,382-2,047Hz that I allocated to Week 10-- was divided into 85 mostly-equal parts. Why 85 divisions of each chunk for 86 possible characters? Well, the space bar / line break is "kept separate" in its own very high register-- I'll get to that.

Here's my big ol' table of frequencies used to create the piece. Down the left side, you'll see the 86 characters; across the top, you'll see the actual week of n3m3sis42's corresponding entry (they are in L-R order from first-appearing / generally-longest to last-appearing / generally-shortest). The numbers you see are a frequency, given in industry-standard hertz. Again, note that each entry has its very own "character-to-frequency table" and that no two frequency numbers (should, hypothetically) ever appear twice in the chart.

Also worthy of note: n3m3sis42's shortest entry this season was the Week 2 entry I'd planned to "remix." At 299 words, it contained roughly 1,789 characters total. Each of those characters had to be converted to individual pitches. Her Week 9 and 13 entries were just about tied for her longest entries at ca. 1400 words, just about 8000 characters each. Those too also had to be converted to individual pitches that had to play out one by one for "decoding."

All in all, the finished "musical" product-- which plays all 15 of n3m3sis42's entries out simultaneously in specifically-selected pitches (most with no equivalent in Western musical scales)-- contains roughly 1,290 distinct / discrete pitch classes (take that, Mr. 88 Keys!) and 72,000 separate note attacks.

The average human musician might play 0.25-2, maybe 3 notes in any given second. I had to go a lot faster than that if I was going to get through 72,000 characters' worth of text in a reasonable span of time.

At first, I was gunning for a piece roughly five minutes long. That would mean that the Week 9 and 13 entries would have to play at a rate of 25 pitches (characters) per second-- one pitch every 0.04 seconds.

When I tried out a few entries at 25 pitches per second, it actually, uh, created some problems when played back through mortal speakers and headphones; the pitch was changing too fast for them to handle without constantly making little popping noises as the notes constantly changed. So I had to slow the rate of notes down to half that; 14 of the 15 entries played at a rate of 12.5 pitches per second... for ten-and-a-half continuous minutes.

Well, wait a second... the entries are all different lengths. So if I have a consistent rate of notes / characters coming out, then some entries will end sooner than the rest.

I chose to use this particular facet to give my work some sense of form. I placed the entries in order from longest to shortest (save for Week 2-- and again, more on that in a second). The shorter the entry, the higher-pitched its audible chunk of the spectrum, and the later it would begin playing-- "centered" about the precise middle point in time of the work's 10+ minute duration.

The work starts with three of n3m3sis42's entries "streaming" in pitches-- Week 2 (again, in a second...), then the longest, lowest-pitched entries, Weeks 9 and 13. Those entries also end the set. Week 10, the third-longest entry of the set, appears at 0'53" into the work; it also ends "exactly" 0'53" before the end. See what I'm doing here? Maybe a picture of the software I used to assemble the piece will help (the entry weeks are shown out along the left side):



n3m3sis42's Week 15 entry, the second shortest of her LJI Season 8 entries so far, is the last entry to enter at exactly 4'00" in from the beginning. (You can see it at the bottom of this view from my recording software.) It fills out the work's slow, shrieking ascent into a painfully high overall register, and thankfully only lasts about 2.5 minutes doing so. Then the whole piece begins to collapse back down spectrally, falling apart the same way it was built up; as each "next shortest" entry ends over and over again, the overall pitch content of the piece goes back into lower and lower territory.

As for Week 2, the shortest entry, I chose to give it special focus-- since it's my favorite entry of n3m3sis42's, and the one I was originally going to "remix." I stretched it out so that each pitch lasts for 0.361 seconds instead of 0.08 seconds a la all the rest of the entries; this stretches it out to the same overall playback length as Weeks 9 and 10.

I also gave Week 2 the widest chunk of perceptible frequency in human-pitch terms, and also placed that chunk dead center in the spectral register where humans hear best.

Week 2 is thusly way easier to sort of follow with your ear than the other 14 entries, which are blasting away at frequency-character rates too fast to count or reflect upon. If you listen for this "slower melody in the middle" that runs for 10.5 minutes, you can hear a few other neat "side effects" of my process here:

- In my frequency-to-character chart, capital letters are always pitched lower than lower-case; the space bar, on the other hand, is "specially placed" for all entries so that you can hear it "tink"ing way up in the stratosphere. The space bar caveat is true for all entries except n3m3sis42's Week 2, where it sounds a very low frequency that actually sounds like silence on most speakers. In other words: by listening, you can often tell where n3m3sis42's Week 2 sentences / paragraphs begin and end (hallmark: a longer "silence," followed by a relatively low pitch, followed by a bunch of high pitches).

- You can count the number of letters in each passing-by word by listening for the same "silences."

The way I arranged the entries-- shorter = higher and later-- means that my dumb little n3m3sis42-based piece also has a remarkable appearance when you look at it in a spectrograph. This cool analytical tool for audio shows frequencies low to high on the X axis and time on the Y axis. You can actually see each entry's "line"-- remember, Weeks 9 and 13 on the bottom, with Week 2 taking a big visible swath in the middle, and then each entry moving on up; past a point (10kHz), you also see the space bars and line breaks ticking away, which also get higher as later entries move in, and recede as they die away.





...I didn't intend this to look like a mushroom cloud in a spectrograph, but... holy cow.

Now: is this great music, and/or does it represent the music I personally make most of the time? Absolutely not. It was meant almost as a cipher / structure exercise than anything else-- a throwback to the academic electronic works of the 1940s-1970s, of which I know a lot (I got indoctrinated, remember?), and which I assume most readers will not know at all.

The piece carefully follows the cipher and structure I created at the explicit expense of musicality and listenability-- although I do think it's kind of hypnotic to listen to after a while. (Then again, I'm into some pretty weird stuff musically.)

n3m3sis42, congratulations. I believe you are the first LJ Idol contestant to have your LJI content converted and archived into audio en masse. I'm giving it to you for free, just for being my first responder. Who knew how relevant my "bleep-a-bloop" comments or your R2D2 avatar of last Friday would be? Not me at the time, certainly.

Anyway, now you just need to go hire a manager and a record promoter, and see if you can get this hotter-than-hell jam to the TOP OF THE CHARTS.

MP3 link to my piece on n3m3sis42, which I have entitled "12,381 Little Words" (warning: this almost-eleven-minute MP3 file is 20 whoppin' megabytes!)

And as for theafaye and malruniel11... don't worry, I haven't forgotten you. I seriously just ran out of time to "work you in" to this structure, although I had come up with REALLY crazy plans for you in the mix, and I'm sad I didn't get to realize them. I'll be sure to get you both next week-- as always, if there is a next week!
Previous post Next post
Up