Donnerstag, 23. September 2021

Reframing Gaps & Creating with ADHD

 As I described in the last post ("The Caretaker") I have been thinking about the weights I have taken onto myself as a creative person, and how to deal with them productively (or more precise, how to get rid of them, because they do not seem to serve a purpose anymore).

For my worldbuilding, 2021 has been witness to a pretty substantial change. I had some of the same issues there: Unfinished things, the urge to create a consistent history and maps, and the feeling of "I can't start a new thing unless I have figured out how XYZ works, because if I later change XYZ, everything will have to be changed again". Stuff like that. There other, unrelated issues, but I'm not gonna go into those here.

The important step #1 was: Screw consistency. Screw perfectionism.

But that's kind of the obvious one. And I had already been trying that for years, without success. It's not that easy, apparently.

Today I realized that one thing that I *also* did while throwing out perfectionism, was my attitude towards gaps. When I re-started my worldbuilding, I first made a list with things that would be interesting to explore further. It became apparent that while it would be cool to have a worked-out history timeline, it would also be an incredible amount of work, and not one that I enjoy doing. Yes, I could attempt to write 5000 years of world history, with thousands of cross-references. But then, that would be all I do. 

The formula that actually worked: Focus on the things that are actually fun, pick one of them at my own leisure, work on it until it bores me, move on the to the next. My ADHD makes that approach natural to me - I can get hyperfocused on one topic for a week or two, and then it suddenly becomes boring again. Many of my problems came from my attempts to continue and finish stuff when I already had moved on the the next *Shiny Thing* mentally.

But if I do that, then I will leave a huge trail of unfinished stuff. And that thought kind of depressed me. So I need to reframe what it means for something to be unfinished:

~~ Every unfinished thing is an opportunity to later come back and make something new. ~~ Whenever I run out of steam at a current project, I can go back to my pile of unfinished works and pick one, at my own leisure, *not* because I have to finish it, but rather because it sparks my interest.

And sometimes stuff *does* get finished, of course. Because at the time, I want to finish it. I can spend an entire day hyperfocused on a project, until it's done. In fact, my ADHD can make it almost impossible to *not* work on the thing that I am hyperfocusing on.

The main problem that remains is forgetting things. I am mainly unhappy with leaving pieces unfinished because I know that I will forget them and when I come back, find the thing in ruins. Maybe I can solve that by reframing ("It's an opportunity to create a slightly different thing"), maybe not. It's very similar to the consistency issue in my worldbuilding, and there I have the great advantage of just writing things down. That is much harder to do in music, because I have basically zero patience when it comes to making sketches. I write down exactly as much as I need to come back to a piece on the next day, but not enough to come back to it a week later.

(Yes, I am aware that I can also record myself playing, but then I run into the issue that I have basically no motivation to go through a recording later, so it effectively vanishes until I find it, like, 2 years later. Or never.)

Reframing gaps - one more thing that occured to me is that there is a difference in how I approach worldbuilding and music. You see, I don't ever intend to *finish* a world. It's all about having a space to add literally anything I want. Thinking about philosophy? Write about a school of thinking. Thinking about dreams? Write about dreamers and magic, or about prophetic culture, or metaphysics. I can even - and will, probably - create a history of orchestra music for northwestern Duogiana. Worldbuilding, to me, is just about the most flexible creative hobby possible.

Music is obviously different. A friend of mine recently shared the quote "music is the study of invisible relationships between internal objects", apparently some ancient Greek´s opinion (but I do not care who said it. People ain't wise because they lived a long time ago.) I really like that phrasing. When I compose something non-derivative, I sometimes feel like I am working with something very abstract but somehow also very real. And then I "wake up" and have no idea what I just thought about.

Anyway, I got distracted again - the point is, there is no reason to view music as something that *needs to get finished*. Even a finished piece can be interesting enough to further spawn creativity. I'm free to go back to old pieces and extend on what I find there, instead of going "this is finished, I have to make something *entirely new*", a way of thinking that effectively stopped me from writing anything larger for years.

I will probably make lists with possible *fun* projects to do; not necessarily composing, I could also transcribe an older piece, program something, roll some dice, or catalogue and rename older stuff - I've held back from the latter because it seems horribly self-indulgent, but hey, I'm a pretty self-centered person and I'm gonna just own that, because I simply function better this way.

And I have been surprised several times over the last months that sometimes the nerdiest, least accessible stuff actually got the most positive feedback. And sometimes I get none - but if I already enjoyed working on it, who cares? :)

~

This blog post came out way less structured than I anticipated. It's more of an explorative thinking-aloud post than a polished essay, and ... well, that's similar to what I was talking about, so on a meta-level that's probably appropriate.^^

Sonntag, 19. September 2021

The Caretaker

 I've been on hiatus from playing piano since May; the longest hiatus of my life probably. It started because my wrists were not okay, but I continued it far longer than I needed to. At some point I realized that I don't want to start again exactly where I left off.

From my earliest childhood memories onward there has always been this pressure on me: "Don't wast your talent!". I realize now that I have rarely ever in my life *decided* to compose - most of the time I was more like "I have this idea, I *cannot* let it go to waste, it is my duty to not abandon a good idea". I got asked at my final exams why I, a supposed *serious composer* would spend half my time writing piano music laypeople can understand, and while that question is incredibly snobbish by itself, the answer is not merely "because I like it", it is actually "because I had this idea and I am now responsible for it's survival".

It's like if I lived at the edge of a forest and there is a constant flow of poor wounded forest animals seeking shelter, and I can't just abandon them, so I never leave the house longer than a day or two. Except music isn't alive - or is it?

There were a few times in my life when I had the urge to write music to communicate something that was beyond words, and the pieces I wrote then are those that I am still proud of. My last "true" ensemble piece was written in 2012, and was, ironically, about the impossibility to share a feeling. And then it never got played, because, as it turns out, if you write for oboes and tubas (plural), you won't find anyone that plays your music. So then I stopped. Everything I wrote after that, I either wrote for myself to play, or didn't take as seriously.

Sooooo... now when I re-start composing again, I want to do it on my terms, I want to stop the endless drain of "You can't just abandon this idea, it is good, it deserves to live!". I don't know how. As far as the "easy" music goes, I compose faster than I can write it down, so I will *never* reach a point where I'm done. And at the same time, I spend so much time on that, that I don't have any energy left to ask myself - why?

This isn't a crisis. I could always just go on, and I would make some music that a few people like, and also some other music that *nobody* except me even listens to (seriously, I have youtube videos with 0 views). On my piano, there are sketches for about 10 unfinished "easy" pieces - and already I feel the urge to just go and work on these, "so that they don't get wasted", despite knowing that it will never stop. I have 100+ piano pieces and too many of them I have neither written down or recorded, so the only thing I can do is play them again and again just to hold off the inevitable. Should I just go through them and decide "Okay, you'll gonna die with me"? It's super ironic that one of my favourite composers just literally burned her pieces, if they weren't good enough to her almost impossibly high standards - whereas I go back to stuff I wrote when I was 11 and say "hah, kinda cute, let's save it". And that mentality has even crept into my thinking when I'm composing so-called serious stuff. I just cannot bring myself to delete anything, and it starts to clutter. I spend all my time caring for mediocre stuff and never look further, because the next one is already waiting.

Montag, 6. September 2021

Üpdäätle -56-

 Über den Sommer haben sich meine Handgelenke wieder gebessert, allerdings dauert mein Klavier-Hiatus weiter an - ich habe seit Mai die Tasten nicht angerührt; die längste Pause meines Lebens. Ich will da auch einfach mal einen Cut setzen, eine Erholung vom ständigen Druck, irgendwas musikalisch schaffen zu müssen. Bald endet die Pause aber wohl. Vielleicht gebe ich mir dann auch mal wieder Mühe, mich kompositorisch weiterzuentwickeln, statt "nur" Klavierstück nach Klavierstück in Early-20th-Century Stilen rauszuhauen.


Gerade höre ich Musik von Philippe Hurel, den ich neulich wiederentdeckt hab. Spektralistische Musik hab ich einige Zeit ignoriert, weil viele der Stücke so sehr zum Statischen neigen, zu sehr *nur* den Klang zelebrieren ohne viel damit zu machen - daher hab ich zwar hin und wieder Tristan Murail oder GF Haas gehört, aber nie besonders viel. Aber ich konnte mich immer dunkel erinnern, dass es da auch etwas Interessanteres gab - vor etwa 10 Jahren gab es einmal ein Mini-Festival in der französischen Botschaft in Wien, wo spektralistische Musik präsentiert wurde (meine erste Begegnung damit, das war am Anfang meines Studiums) und da hatte es einen sehr positiven Eindruck hinterlassen. Aber das war die Zeit, bevor es möglich war, quasi alles auf Youtube finden zu können.

Philippe Hurels Musik liegt mir jedenfalls mehr, als Murail ... es ist bewegter, es tut sich auch einmal etwas rhythmisch. (Trotzdem ist es manchmal noch zu statisch, aber weniger schlimm.) Ich mag besonders "Localized Corrosion" - da verschmelzen E-Gitarre und Saxophon zu einem erstaunlich homogenen Duo - und "Figures Libres".


Ansonsten ist mein Hauptfokus darauf, meine körperliche Gesundheit etwas zu bessern, und zu lernen, mit ADHS besser umzugehen, vllt auch auf medizinischem Weg. Neulich habe ich einen Artikel über ADHS aus dem Englischen ins Deutsche übersetzt - das war eine spontane Sache, und es hat mir dann doch recht Spaß gemacht, einfach mal zu übersetzen. Mein Deutsch ist dabei aber dann etwas holprig; ich denke, das ist eine interessante Übung, wieder mehr darüber nachzudenken, wie Satzbau sich in den beiden Sprachen unterscheidet. :)



Freitag, 23. Juli 2021

LD 02 - Velocity in Dreams

I am supposedly at "square 1" of lucid dreaming again, per last post, but I am really not - I thought about writing about a specific topic on the blog, and promptly had 2 lucid dreams that were already influenced by what I was planning to write about. I kind of needed the idea of *starting anew*, but obviously that's completely arbitrary, I'm just somewhere along the road.

~

So, velocity. - Huh? Why do I think about velocity?

Well. Despite the entire surroundings in a dream being decidedly not-real, and therefore not bound to any rules, they usually conform to a lot of assumptions based on what I experience in my daily life in this world.

For example, if something looks far away, then it is supposed to take a while to get there. If something is so far away that I can't even see it (or I just know it's super far away) then it should take even longer.

But why? The only real distance is the one in my mind, right? If I want to go to Africa, all I have to do is make it so Africa starts right aroung the corner. Of course, my mind fights back, because in WL (waking life) this is an absurd statement.

In today´s LD I remembered this idea:

I manage to get out of my bed and into the dream version of the room I am sleeping in. As usual I spend the first moments establishing the dream, I put as much focus as possible into the sensation of my feet on the floor and move away from the bed, through the rest of the flat, and run outside into the inner courtyard. IRL, there is not much to go after that, a fence would block the way into the garden. In my dreams however, this fence usually doesn't exist, and I can run directly onto the meadow. I can feel the grass under my naked feet - that was another thing I was wondering about recently, how much sensation I really had in my dreams, since I often don't spend any thought on that. 

For some reason, I really want to touch some nice cool water. Looking at the closest tree, I decided that there will be water behind it. I go there, and there is a small puddle of water right next to the strunk. I use it to wash my face and enjoy the sensation. I want more water, so I pull deeper into the puddle, but  there is just a lot of mud. I take a large junk of mud and put it onto my face, and then onto my hair. I am reminded of Nnedi Okorafor´s novella Binti, where the protagonist comes from a specific Nigerian tribe that uses a specific kind of mud or clay to put it in their hair. On the tree is now a mirror, but a very dysfunctional one: While it sometimes mirrors my movements, half of the time the person in the mirror does slightly other things. I use the mirror to look at my hair, A bit later into the dream, an african person turns up and offers to dance with me for a bit.

I don't usually have dreams that are about foreign places, but the idea of "Africa right behind the corner" had been in my mind, hence the theme. I didn't travel anywhere though, I was just in an unspecified meadow, next to a nice old tree. You could say me putting mud into my hair was technically cultural appropriation of some sorts, but for me it was really just about getting a different sensation. Mud feels really nice, and I can't smear it into my hair IRL without quite some suffering consequences. ;-) Anyway, what I do in my dreams is no concern of ethics - only how and if I write about them is.

~

The second thing that made me think about velocity is the experience of speed, and of rapidly changing environments. If I sit in a fast-running train, it is to be expected that things will just woosh past me, and I can't even see them properly. In a dream, this could a bit of a problem, as my mind has to come up with new scenes in a rapid succession. It can do that, but when I fly very fast, I tend to lose contact with my environment after a while, especially since no part of my body actually touches anything besides air, which tends to count as "nothing" or perhaps some sensation of wind.

One way to look at it, would be, that my experience would be similar to someone watching TV; I sit still in a chair, but what I see can be very fast. The dream ultimately is like a virtual reality, but there is no actual space I am bolting through, I just get (some of) the sensations I would have if I did move.

Another dream of today:

As I become aware of my dream-state, I am running on the street, focussing on the feeling of my feet on the ground at first, then eventually deciding on flying. As I move upward a bit, the scene I was in fades away fast, I am accelerating towards the (very beautifully coloured) horizon, while below me, treetops rush past me. At some point, there is very little sensation of actually being there, and it is more like watching a zoomquilt. I did enjoy the changing patterns of pink sky and green leaves though.

 ~

As I write this, I feel I'm more and more unhappy about the sheer number of assumptions I make about what is possible in my dreams, despite knowing from other people´s accounts, that those limits can be surpassed. There are people for whom their dream environment is so stable and unchangable that it behaves way more like a real place than a virtual reality. Why am I deconstructing my dreams to such a degree?

I want to mention that one of my side-goals for pracising lucid dreaming is to get inspiration for my fantasy worlds, in which dreams, while also deeply personal at times, can be actual places. So I'm torn between two contradicting views - one pretends to be scientific (while ignoring some data), the other one pretends to be fantastic (while sometimes being closer to actual experience).

So, where to go? I feel like over-analyzing dreams in that way does not actually help me at all. My plan was to improve my dream-control, and to do that by shredding away my misconceptions about what rules a dream has to follow. But if I'm honest, the dreams I find most interesting are not those where the dreamer is in full control, but those where the dream environment resists manipulation.

So I'd better focus on sensations (as I already did in today´s dreams!) and exploration. I got sidetracked A LOT, holy fuck.

So here's the actual points of this post:

1) There is no point in moving through dreams in a high velocity, unless experiencing velocity is the goal.

2) To travel somewhere is to assume that I am not already there, which may not be necessary at all times.

~

Next up, I want to:

a) more sensations! including eating, bc eating lots of food without any concern for health is cool

b) have some actual conversations (it has been a while) like asking people who they are

For the second one to happen, I seem to need a bit more time. My dreams tend to start with me being completely alone (even if I'm in a cityscape), and other people only appear when I got distracted by some other activity. I've had complicated analytical ideas about *why* that is the case, but honestly, I might make more progress by throwing those into a dustbin for now; idk.

~

Restricting myself to writing in english is more exhausting than I thought it would be. There is no reason to do so, if I truly do this for myself and not for other people. I thought that writing in a different language than in the past 15 years would force me to think differently, but that doesn't seem to be the case overall.

Future posts will therefore be in whatever language I feel like writing at the time.

Dienstag, 20. Juli 2021

Back to Square One! - Writing & Lucid Dreaming (and how I got to where I am now)

Introduction

Back in 2006 I started getting into Lucid Dreaming. I bought books, and started a daily dream journal which I would keep up diligently for half a decade. I joined an online community which quickly became a major influence on many aspects of my life - artistically, spiritually (until I parted with esotericism in the early 2010s), philosophically, politically; I watched and participated in countless debates on the nature of conciousness (on good days), on whether you can actually leave your body (on worse days) and on my own basic human rights (on really bad days). As I met more people personally, my focus slowly drifted aways from Lucid Dreaming itself, naturally, as there is only so much to discuss technique-wise, until you hit the barrier of "yeah it kinda works differently for everyone".

This spring, I finally decided to leave. I really feel like I have outgrown the place. Instead of taking/sharing inspiration, exchanging expertise, helping newbies, all I did was getting drawn into debates, most or all not really worth my time. In the last 15 years, I moved significantly to the queerfeminist left, while the community stayed firmly liberal-centrist, with the occasional leftists, but also occasional far-right "just asking questions" trolls. Add to that the covid-skeptics, anti-vaxxers, creepy misogynists, and just about every flavour of esoteric believers... while certainly entertaining at times, ultimately it ended up a waste of time and energy.

Reboots

I will admit, the last half year has been kinda rough. My physical and mental health went down and my wrists still make it impossible for me to play piano, amongst many other things. But while all that was going on, I made huge progress elsewhere. With writing one of the few things my wrists and my depression consistently allowed me to do, that is where my focus went.

I was unhappy with my world-building for a long time. I was constantly holding myself back in fear of other´s reaction, and there was all this "leftover energy" from not really having a good place anymore to let myself go wild into surreal/metaphysical thinking. Finally, I had enough. Screw this, I told myself, I'm doing what I want, and if people don't like it, or think that I' losing my sanity - so be it.

}{ was born, the anti-world, where no rules of conventional worldbuilding apply other than "everything can happen". I won't go into detail here, I'm just mentioning it because this project was like the bursting of a dam. I don't think I have ever been more productive in my worldbuilding than the last months. I seemlessly went from writing absurdist meta-commentary of my own life to world-building my main fantasy worlds, and from there to a new, more fluid understanding of who I am and what I want. And with that came the realization that I needed to stop wasting my time on people that weren't coming with me anyways.

Go forward, don't look back too much.

Square One

So here I am. Lucid Dreaming.

["Da steh ich nun, ich armer Tor, und bin so klug als wie zuvor..."] 

Yesyes, thank you Mr. Goethe! Anyways. I am interested to see whether I can get some of that fascination back that had gripped me back in 2006, when it felt like I had basically discovered an actually working magic. The promise of "endless possibilities" faded away soon, met with the realization that endless possibilities, by definition, also included "kinda mediocre, boring experiences". The worthwile lucid dreams were spread out far between tons of false successes - where I did become aware of my dream-state only to quickly lose control, be dropped in ever-new variations of the same boring empty dreamscape (usually the house where I grew up in), or just in a dark void.

If I have learned something from the last months of worldbuilding, it's that it is always a good idea to check where I am; trying to figure out the issues I am having as precisely as possible. So that is what I want to try next. And while I'm doing that, I might as well see if I can give some basic introductions into LDing for people that have no experience. That is also a good way for myself to find out what I don't know or have never understood properly. Let's see.

Lucid Dreaming 101

So, for all the newbies: What even is lucid dreaming? :)

Well, the basic definition: A lucid dream (LD) is a dream where the dreamer is aware that they are dreaming, and have some control over the dream.

This isn't the only way to define it. Some people consider being aware of the dream-state to be sufficient in order to count as lucid, some people go way farther on the control-side. German pioneer Paul Tholey´s criteria include being able to have full sensations (being able to see, hear, smell, ...), having a good memory of what happened, or even understanding the meaning of a dream while dreaming. ["Klarheit über den Sinn des Traumes"] That last point of course raises the question: Do dreams even have meanings? And if so, what do we mean with that?

I'd say that there is some consensus that lucidity exists on a multi-dimensional scale: One can be fully aware of the dream-state while having poor control, or vice versa be able to navigate through a dream effortlessy while not even thinking about it as being a dream.

Abbreviations

Lucid Dreaming communities have come up with a lot of jargon and acronyms - far too many, honestly - and I'm not sure if I want to use them here. If I force myself to avoid commonly used language it might even drive me towards a better understanding, since often, if you have learned what a word means, you fall into the trap of also thinking that you know a lot about it.

So, just for the sake of giving sort of the minimum, the most common distinction being made is whether one enters a dream directly from waking state (ie staying lucid during falling asleep) or gaining lucidity during an ongoing dream, whether through some kind of sudden realization, or gradually.

The first one is called WILD (wake-initiated lucid dream), the latter DILD (dream-initiated lucid dream). Those terms, as far as I know, were coined by dream researcher Stephen LaBerge, who was also (one of) the first to prove that LDs are actually a real phenomenon to the wider scientific community. Paul Tholey used a similar dichotomy, he wrote about Klarheit bewahrende Technik (technique of staying lucid) and Klarheit gewinnende Technik (technique of becoming lucid).

From there, language evolved over the years, so nowadays a verb to wild could just mean to be in the process of (attempting to) entering a dream-state (and not refer to to be dreaming a dream that was entered directly from waking-state) I should also add that the "directly going from being awake to being in a dream" is something that many dreamers don't actually experience that literally; it can also be about staying just aware enough that you can regain full(er) consciousness when the dream has formed.

And now?

This state of in-between is currently the one that is most interesting to me to pursue - in part because I sometimes only have very limited time to dream between one louder snore of my partner to the next. :D

Another goal is getting access to earlier dreams, the ones that happen when I am still very much asleep, and therefore less at risk of just randomly waking up over and over again.

Lastly, I have to figure out a way to deal with memory. I have a major handicap in that I am quite literally unable to keep a written dream-journal (even if I was super-motivated, which, honestly, I'm really not) because of my wrist issues. That almost forces me into a position where my main focus is the actual dreaming and not so much remembering it. From a journaling, analyzing and re-living perspective that sucks. But I'm gonna try make the best of it, because, in principle, I actually like the idea of putting the focus right there, on the actual thing.

That's it for now. As usual, I cannot promise that I will continue this, but as I have explained, I'm kind of out of places to go with this one interest of mine, so if I have something to say, I might as well do it on a blog - a space that I have more personal control over. Dreams are pretty personal, after all.

J C

Samstag, 19. Juni 2021

Üpdäätle -55-

Ich hab hier im letzten Jahr praktisch nicht mehr gebloggt. Ich sah keinen Sinn darin - wenn ich etwas von dem, was ich mache, bewerben will, haben Twitter und Facebook den Vorteil, dass es mehr als so ca. 2-3 Personen sehen. Dieser Blog ist ja nicht einmal über Google auffindbar. Da mein gesamter derzeitiger kreativer Output also anderswo besser aufgehoben ist, bleibt für den Blog nichts übrig.

Kürzlich habe ich allerdings eine Community verlassen, in der ich über viele Jahre (mein halbes Leben) aktiv war, weil ich gemerkt habe, dass ich dort nur noch politische Posts verfasse, und dabei hauptsächlich auf Leute reagiere, die meine Aufmerksamkeit nicht wert sind (z.B. Corona-Leugner*innen/Verharmloser*innen), und dabei immer mehr cranky wurde. Das war ne schlechte Entwicklung, also lasse ich das.

Dadurch wird der Themenbereich "Politik" und "Weltbilder" allerdings wieder frei, und ganz ehrlich möchte ich darüber eh nur an einem Ort schreiben, wo es wirklich nur ganz wenige Leute lesen, da meine eigenen Meinungen konstant im Fluss sind. Vielen Leuten in meiner Umgebung bin ich zu linksradikal, einigen Linksradikalen wiederum zu liberal, glaub ich...

Von daher - könnte sein, dass ich dazu mal was poste, entweder auf Englisch oder auf Deutsch. Kann aber auch sein, dass ich es bleiben lasse, ich verspreche nichts. :)

Jundurg

Freitag, 12. Februar 2021

Üpdääte -54-

 Nach dem Abschluss meines Kompositionsstudiums im Juni fiel erstmal ein Gewicht von mir ab. Ein Abschnitt meines Lebens abgeschlossen, das Komponieren "für die Uni" hat ein Ende. Das hatte es zwar vorher schon, aber dann eben offiziell.

Meine Einstellung zu Musik änderte sich den Umständen entsprechend: Seit Beginn der Pandemie bin ich fast nie alleine zuhause - stundenlang laut Musik hören, gehört der Vergangenheit an, und wenn ich doch Musik höre, dann ist es eine andere, als ich sonst hören würde.

Ich habe das Hören großteils verlegt auf die Zeit, in der ich außer Haus bin; der tägliche Spaziergang an der immergleichen Straße entlang (ausgewählt, weil sie tendentiell noch die ruhigste Strecke bietet, aber auch dort lärmt es teilweise sehr), mit Kopfhörern - den billigsten, die ich kriegen konnte, denn letzten Frühling stand ich finanziell etwas mehr unter Druck.

Soundqualität also - kann ich unter diesen Umständen vergessen. Leise Musik - funktioniert nicht. Und zuhause gibt's erstmal Computerspielmusik, oder Mozart, Schubert, ... nach einer Weile Wiener Klassik war für mich selbst Dvorak zu stressig. Das Ding ist, während einer Pandemie zusammenleben heißt für mich, meinen Gefühlshaushalt stets im Auge zu behalten. Am wichtigsten sind daher die Projekte, die viel Zeit beanspruchen, am besten Programmieren.

Seit Anfang des Jahres tu ich mir auch da schwer, denn meine Sehnenscheidenentzündung hatte sich wieder einmal verschlimmert, und ist auch jetzt noch ein Dauerfaktor. Ich habe wochenlang nicht Klavier gespielt, und konnte auch eine zeitlang nicht tippen. Nächste Woche muss ich mit meiner maroden Hand dann noch zwei schriftliche Prüfungen schreiben...

Aber der Druck, der von mir fiel, kehrt doch auch immer wieder zurück. Mein elf Jahre jüngeres Ex-Ich macht sich bemerkbar, seine großen Pläne geistern in meinem Kopf herum. Ich mache mir Vorwürfe, nicht mehr geleistet zu haben - "meine besten Kompositionen schrieb ich mit 20/21, danach kamen immer nur weitere Sackgassen, .. oder Ausreden" geht mir durch den Kopf.

Ich wurde zur Komponist*in erzogen. Ich trenne mich von dem Gedanken, dass ich eben Komponist*in bin, dieser Essentialismus gehört für mich allmählich der Vergangenheit an. Ich bin nicht, ich mache mich, es ist ein ständiger Akt. "Ich bin, was ich tue" hat leider auch seine toxischen Seiten, denn es wird selbstzerstörerisch, wenn ich aufgrund von exekutiver Disfunktion wieder einmal gar nichts fertigbringe. Als ob ich zu sein aufhören müsste.

Ich habe - eine Weile schon - das Gefühl, als Komponist*in nichts mehr zu sagen zu haben. Das Sagen ist selbst natürlich ein Konzept, das von außen kommt. Nachdem ich 2013 kompositorisch in meinem "eigentlichen" Stil nicht mehr weiterkam, habe ich mich aufs Forschen verlegt; das Einzige, was ich danach noch darin geschrieben habe, sind abstrakte Klavierstücke, mit denen ich manchmal nicht einmal selbst etwas anfangen kann. In meiner Diplomarbeit habe ich ebenfalls versucht, zu erforschen, wie geht Einvierteltakt war meine Frage, und ich glaube, darauf sogar Antworten gefunden zu haben - nur was tun mit ihnen?

Letztes Jahr hatte ich eine zeitlang mit dem Gedanken gespielt, ein zweites Streichquartett zu schreiben. Da tauchen natürlich einige Probleme auf: 1. gehe ich davon aus, dass es nicht aufgeführt werden wird. (Zumal ich auf meinen 2 Celli in der Besetzung bestehe), 2. ist die Situation zuhause einfach nicht dafür geeignet, langfristig ein "hochgeistiges" Projekt zu verfolgen. Dafür müsste ich viele Stunden experimentieren, die Zeit aus den Augen verlieren können - das ist nicht kompatibel mit einem Leben, in dem ich dafür verantwortlich bin, dass zu Mittag Essen auf dem Tisch steht, dass ich einen den Takt des gemeinsamen Lebens vorgebe (von uns beiden zuhause habe ich das funktionierende Zeitgefühl).

Aber vielleicht sind das alles Ausreden. Vielleicht ist die Wahrheit ganz banal: Die Ideen, die ich hatte, waren nicht ergiebig. Ich habe nicht die Geduld, einer Idee nachzugehen, die mich nicht packt. Und mich packt so schnell keine musikalische Idee mehr, ich hab zu viel gehört, zu viele Richtungen schon probiert. Das klingt jetzt alles sehr depressiv - natürlich spielt psychische Gesundheit auch hinein - aber letztlich ist es allem dem geschuldet, dass ich praktisch denken will. Die Bedürfnispyramide ist umgefallen, es ist jetzt eine andere Seite unten. Ich lebe nicht mehr für die Kunst, sondern maximal neben der Kunst. Das tut mir in erster Linie aber gut.

Meine Transition ist ein Weg des ständigen Mich-neu-Erfindens. Also ist es immer möglich, eine andere Richtung einzuschlagen, selbst mein(e) Name(n) steht nicht fest, auch wenn ich sie kürzlich offiziell habe eintragen lassen.

Aber jede Identität existiert nur im Gegenüber mit anderen Menschen, und es ist ein eigenartiger Fakt meines Lebens, dass ich unter meinen näheren Freund*innen praktisch keine Musiker*innen habe. Die Musik ist zwangsläufig damit etwas, das ich alleine praktiziere. Oder alleine höre, denn niemand um mich herum hört Musik in einer ähnlichen Weise wie ich.

Zu Jahreswechsel hab ich "xenharmonische" Musik entdeckt; Mikrotonalität interessiert mich schon eine geraume Weile. (Um sie hören zu lernen, habe ich mein Gehörbildungsspiel AuralQuest programmiert.) Ich vermute, dass mein einzig praktikabler Weg, damit zu experimentieren, wieder General MIDI Standard sein wird, mit einem Notenschreibprogramm, das nicht darauf ausgelegt ist. Anstrengend also. Aber ich traue mich nicht, damit anzufangen, denn ich versuche nach wie vor, meine Hände möglichst wenig zu belasten. (Reines Tippen ist einigermaßen möglich, aber mit der Maus arbeiten riskiert Schmerzen) Mein Körper schränkt mich ein...

Nun denn. Dieses Üpdäätle hat keinen sehr positiven Ton. Tatsächlich hatte ich einige dieser Gedanken während depressiver Tage. Aber mir geht es aktuell nicht schlecht. Ich glaube einfach, dass ich mich von meinen hohen Ansprüchen lösen muss, von den ganzen toxischen Gedanken über Kunst und Künstler*innen, die für ihre Kunst leiden müssen, und so weiter. Wie gesagt, ich wurde zur Komponist*in erzogen, von klein auf, seit ich mich erinnern kann. Aber ich kann auch auf all das, was ich geschrieben habe, zurückblicken und sagen: Hey, ist doch einiges. Der Anspruch, etwas Weltbewegendes zu schreiben, oder auch nur etwas, das von einer etwas größeren Zahl an Personen gerne gehört wird - das scheint mir ein schales Ziel, das nur zu Frust führt. Und davon möchte ich mich eben lösen.

Jetzt hab ich nur über Musik geschrieben, dabei hab ich doch so viele Ambitionen in anderen Feldern, die mir genauso unnötigen Druck machen. Dass ich etwas schreibe, mit dem ich selbst zufrieden bin, scheint auch nicht wirklich drin zu sein. Und Politik ... ist mir so wichtig, und gleichzeitig merke ich auch hier, dass ich nicht dafür gemacht bin. Philosophie? Pffft. Es hat mir Spaß gemacht, über Atheismus zu schreiben, aber momentan würde ich hauptsächlich über Atheisten schreiben wollen, und über das Versagen dieser Szene, eine positive Kraft in der Welt zu sein.

Ja, ein Teil von mir hungert geradezu nach Philosophie und Kunst. Aber welche? Ich weiß es nicht. Ich kann nicht mehr daran herangehen wie in meinen frühen Zwanzigern, einfach mal ein dutzend Räder neu erfinden... nicht nur weil ich älter geworden bin, sondern auch weil sich das Internet verändert hat; überall gibt es Content, so viel davon; statt selbst nachzudenken, kann ich "Mereologie" googeln und feststellen, dass ich gar keine Lust habe, mich stundenlang einzulesen in ein Gebiet, über das ich zuvor fröhlich fabuliert habe.

Meine Güte, klingt das alles jetzt nach einer Krise.^^ Dabei ist es mehr ein bestimmter Punkt einer Entwicklung, die sich schon über Jahre vollzieht, und die mich großteils zu einem besseren Menschen gemacht hat; ruhiger, und geerdeter.

Dann sollte ich positiv anmerken, dass es ein kreatives Feld gibt, in dem ich derzeit zufrieden mit mir bin, und das sind Spiele. Ich bin extrem froh darüber, dass ich AuralQuest fertiggestellt habe, noch dazu in einer recht kurzen Zeit. Ein Brettspiel habe ich über Weihnachten auch gebaut; und aktuell arbeite ich - recht unregelmäßig - an einem Echtzeitstrategiespiel. Das hakt an vielen Stellen, vielleicht wird dieses Projekt auch nichts; einerlei, ich bin glücklich, etwas schaffen zu können, das gespielt wird.

Wenn ich wieder mehr komponiere, will ich es anders angehen, als bisher. Ich kann mein frustriertes Herumsuchen gerade nicht leiden, ich will spielen!

Sonntag, 12. Juli 2020

Üpdäätle -53-

Viel ist passiert. Ich habe im Juni mein Kompositionsstudium abgeschlossen, und eine Hormonersatztherapie begonnen (von der ich noch eher nichts merke). Das waren mal die Großnachrichten.

Die Kleinnachrichten:

AlgoLineB hat im Juni pausiert, ich habe aber in den letzten Wochen am GUI geschraubt, es gibt jetzt ein eigenes Menüfenster, mit einem Textfeld, in das direkt das Rezept geschrieben werden kann und auf Validität geprüft. Einziger Makel dabei: Sobald der Player gestartet wird, ist das Menü nicht mehr zugänglich, d.h. um etwas zu ändern, muss das Programm jedesmal neu gestartet werden.

Zwar wäre es problemlos möglich, das umzubauen - allerdings habe ich festgestellt, dass Java den Speicher des Players nicht freigibt, wenn ich nur das Player-Fenster schließe. D.h. wenn ich vom Menü aus oft den Player aufrufe, ohne das Programm neu zu starten, wird immer mehr Platz vom Arbeitsspeicher belegt. Das ist unschön und scheint mir etwas zu riskant, daher habe ich das deaktiviert.

Was ich - wie mir aufgefallen ist - einbauen kann, ist eine Funktion, in einem eigenen Fenster Rezept-Instruktionen und -Selektoren direkt im Programm zusammenzustellen (d.h. eine Erleichterung für Benutzer:innen, die sich nicht durchs ohnehin derzeit nur halb fertige Manual lesen müssen.) Aber das wäre eine Menge Arbeit, ich kann also nicht sagen, ob ich das angehe. Was das GUI angeht, ist es zwar funktionabel, aber noch nicht schön gestaltet, da ich mir noch nicht angeschaut habe, wie Layout funktioniert.

An den Algorithmen selbst habe ich nur wenig gemacht: ein SMOOTH-Keyword, das es ermöglicht, dass benachbarte Töne aufeinander abfärben, spricht wenn das Programm den Ton c' vermeiden will, dann vermeidet es auch die rundum - allerdings dafür c' weniger. Das funktioniert bislang ziemlich schlecht. Vielleicht habe ich noch nicht herausgefunden, mit welchen Instruktionen das gut zusammenarbeitet; der Effekt ist meist recht schal. Möglicherweise muss ich an der Funktionsweise dieses Keywords noch einmal schrauben. Praktisch ist jedoch, dass es auf alle Instruktionen anwendbar ist.

Eigentlich überlege ich schon, AlgoLine jetzt einmal längere Zeit ruhen zu lassen - zumindest wenn ich eine dafür geeignete Stelle erreicht habe - und ein neues Projekt anzufangen, ein Gehörbildungsprogramm, mit dem ich mich auf das Hören von Mikrointervallen schulen kann. Aber im Moment ist das noch ein vager Zukunftsplan.

Ansonsten stecke ich viel Energie darin, meine Gunnerkrigg Chords nach und nach aufzuschreiben, sowie an unfertigen Stücken weiterzuarbeiten. Das Aufschreiben ging zunächst recht zügig voran, mittlerweile bin ich nicht mehr so motiviert, also werde ich vermutlich dann allmählich ein neues Hauptprojekt suchen.

Anyway: Eigentlich ist jedes der erwähnten Projekte auch davon abhängig, wo es Interesse gibt. Für AlgoLine suche ich irgendwann Tester:innen (und wenn es welche gibt, bin ich auch motiviert, das Programm präsentierbar zu machen), und bei den Gunnerkrigg Chords komme ich eher voran, wenn es Leute gibt, die an den Noten Interesse haben.

Jundurg Delphimė


Freitag, 1. Mai 2020

AlgoLine B (work-in-progress)

Vorgestern hatte ich einen Tag von akuter Programmiersucht - denn ich hatte mir vorgenommen, endlich etwas zu vereinheitlichen, und alle Instruktionen auf eine gemeinsame Basis zu stellen, sodass bestimmte Keywords für alle verwendbar werden.

Dadurch gibt es jetzt u.a. die Keywords 'start' und 'end', um eine Instruktion nur in einem bestimmten Teil des Stücks aktiv sein zu lassen. Gleich verwendet habe ich das gerade eben mit der ebenfalls neuen Deterministic-Random-Instruktion. Zufallsfaktor will ich eigentlich minimieren, damit würde ich es mir zu leicht machen. Aber hin und wieder ist so ein bisschen Zufall recht praktikabel. Besonders am Start. Die ersten 5 Schläge zufällig zu bestimmen, und dann den Rest des Stückes Regeln folgen zu lassen (die die Vorgabe der ersten 5 Schläge verwenden) hat aber was.

Die Zufallsfunktion ist bewusst "trashy" programmiert, da sind zwei kleine Potenzen drin, und ein Sinus, und das irgendwie hochmultipliziert. Ich wollte da nicht lange darüber nachdenken - es reicht, wenn es irgendwas tut. Und vor allem: Es muss immer das gleiche tun, solange die Parameter unverändert sind. Denn dann kann ich am Stück feilen, ohne ständig eine neue Vorgabe zu haben, mit der die Instruktionen vielleicht vollkommen unterschiedliche Ergebnisse haben.

Allen Instruktionen gemeinsam sind also jetzt die Keywords 'start', 'end', 'fade_in', 'fade_out', 'max' und 'min'. Die Fade-Keywords habe ich noch nicht implementiert, die sollen später dann mit start/end zusammenwirken.

'MAX' ist relativ einfach zu erklären: Es setzt der Gesamtwirkung einer Instruktion einen fixen Deckel - sobald es darüber hinausgeht, wird alles herabskaliert, sodass es in den Rahmen zwischen 0 und diesen Deckel passt.

'MIN' ist etwas schwieriger zu erklären. Es legt nämlich nicht die geringstmögliche Wirkung fest (denn häufig wird ja ein Pitch mit 0 bewertet, und das lässt sich durch multiplizieren schon mal nicht hochskalieren) sondern es setzt ein Minimum fürs Maximum fest. Klingt verdreht?
Ist gar nicht so verdreht. Die Instruktion soll mindestens die festgelegte Auswirkung auf das Stück haben. Mehr ist möglich, dann wird nicht herabskaliert. Wohl aber wird hochskaliert, bis der höchste Wert zumindest mal MIN erreicht hat.

MIN x MAX x lässt es nun in Kombination zu, den höchsten Wert immer fix auf x zu belassen. Vorausgesetzt, es gibt überhaupt eine Wirkung. (Jetzt gerade fällt mir auf, dass eine Instruktion die nur Nullen liefert eventuell Probleme macht. Das muss ich wohl erst abfangen...)

Fehler gibt's viele. Teilweise mache ich durch das Fixen von Bugs alte Stücke, deren Rezept ich noch gespeichert hatte, kaputt. Damit muss ich wohl leben; Rückwärtskompatibilität kann ich einfach nicht gewährleisten, solange ich immer mal wieder an den Grundlagen schraube. Aber insgesamt wird es momentan in sich konsistenter.

Ich lad auch bald wieder neue Stücke hoch. Anhören tut sie quasi niemand.^^ Ein Stück hat zwei Dislikes und sonst nix, das finde ich ziemlich amüsant. Ich selbst hab viel Spaß daran. Zum Erhalt meiner psychischen Gesundheit muss ich nämlich jeden Tag spazieren gehen, und dabei hör ich mir dann die Stücke an. In Zukunft werd ich dann wohl an die erste Pandemiewelle, die Dürre und an die (fast) immer-gleiche Spazierstrecke denken, wenn ich die wieder höre.^^


Was ich bald implementieren will:

- die eine oder andere Funktion, die auf der Zeitachse läuft. Zum Beispiel sowas wie eine Sinuskurve über die Tonhöhen. Vermutlich eher albern, aber was solls, wär recht einfach zu implementieren, und ist noch mal was anderes.

- die Selektoren benötigen ebenfalls eine Generalüberholung (bei denen wär's dann schon die zweite). Ich will ein Feature, das es erlaubt, bevorzugt bei einer bestimmten Tonhöhe zu selektieren (im Moment gibt es da nur: höchster Ton, niedrigster Ton, und mittlerster Ton. Das ist ausbaubar.)

- und einen Selektor will ich einbauen, mit dem vor 4 Jahren mal die erste Version von AlgoLine begonnen hat: Wähle nur einen Ton aus, wenn es nur genau eine bestbewertete Tonhöhe gibt - sonst Stille. Das führte damals zu Stücken die relativ bald in sich selbst zusammenfielen und einfach aus waren. Aber mit der Menge an Instruktionsoptionen, die ich mittlerweile habe, dürfte das anders sein. Bzw. ich kann diesen Selektor ja zu anderen dazuschmeißen.^^

Sonntag, 26. April 2020

AlgoLine B (work in progress)

Die letzten Tage wurde wieder etwas am Programm geschraubt. Ich habe neu eine sustain Instruktion eingebaut, die das Halten von Tönen für bestimmte Längen veranlasst, und dazu auch gleich ein modulo Keyword. Ein Halten von Tönen für Längen kongruent mit 0 modulo 8 erzeugt, wenn es stark genug gewichtet ist, für einen regelmäßigen langsameren Puls, der sich durch das Stück zieht.

(Es ist oft so, dass sich das Gewichtsverhältnis von Instruktionen im Verlauf ändert - im Test hatte ich auch ein Stück, das am Anfang einem klaren Puls folgt, der aber nach einer Weile zusammenbricht und ab dann überhaupt nicht mehr erkennbar aufscheint.)

Modulo ist ein wichtiges Keyword; ich will das bei einigen anderen Instruktionen einbauen. Schon gesehen ist dies bei same_intervals, wo es eine besonders große Rolle spielt - es ist also jetzt möglich, dass diese Instruktion z.B. ein Intervall aufwärts zu einem C und zwei Oktaven abwärts zu einem C als das gleiche ansieht. Auch möglich ist es, Intervalle als gespiegelt zu betrachten, sodass 5 Schritte aufwärts und 5 Schritte abwärts gemeinsam gezählt wird. (same_intervals zählt von Anfang an mit, welche Intervalle schon im Stück sind, und vermeidet oder bevorzugt je nach Häufigkeit)

Leider führt das im Moment zu einer deutlich höheren Rechenzeit - zwar speichere ich die verwendeten Intervalle während dem Generieren mit, aber das tue ich nur für die tatsächlichen, nicht für Modulo. Und da die "Notenzeile" selbst nicht wissen kann, welche Modulo später über sie angewendet werden, kann ich das auch nicht so ohne weiteres mitspeichern. Daher müssen für jeden Schritt alle Intervalle von Anfang an wieder durchlaufen werden, was ein enormer Aufwand ist. Mal sehen, ob ich das geschickter hinkriege - eigentlich müssten ja eher die Instruktionen mitspeichern. Im Moment führt das dazu, dass das Generieren geschätzt zehnmal langsamer abläuft. (Vermutlich noch durch andere Faktoren beeinflusst - allmählich summiert sich schlechte Implementierung auf.)

~

Ein grundsätzliches Problem ist, dass alle Instruktionen aufsummiert werden, aber das Auswählen der Töne auf Basis von den Besten funktioniert. D.h. wenn eine Funktion bewirkt, dass Töne a, b, c, d, e, ... um +1000 bevorzugt werden, aber eine andere bewirkt, dass Ton b um +1 bevorzugt wird - dann ist b alleine der beste Ton und alle fast gleichen anderen werden ignoriert.

Damit das nicht so ist, gibt es jetzt das Selector-Keyword threshold. Damit ist z.B. eine Auswahl aus der Menge aller Töne mit einer Bewertung von den mit 98% bis 100% des jeweiligen Maximalwertes möglich.

Exzessiv angewandt habe ich dieses Keyword in Fumbling Important Extremely Talon. Dort gibt es an Instruktionen überhaupt nur das allereinfachste avoid same_pitches, und die eigentliche Arbeit machen die Selektoren - die entweder die tiefsten oder die höchsten Werte auswählen, allerdings aus vielen verschiedenen Prozentbereichen. Darunter auch so niedrige wie 15% - 25%. Das heißt, dass schlecht bewertete Töne nach einer Weile auch ausgewählt werden, was dazu führt, dass unter einer Aufwärtsbewegung allmählich weitere entstehen. Die durcheinanderlaufenden Geraden mit unterschiedlicher Steigung sind auch optisch schön, ich habe aber leider kein Bild davon erstellt.

~

Im Moment ist der Code an vielen Stellen chaotisch und es gibt Inkonsistenzen gegenüber der Eingabe und der Ausgabe, was natürlich absolut nicht ideal ist, da ich ja die Rezepte aus dem Programm wieder als Text speichern können möchte, und zwar exakt der Eingabe entsprechend.

Je mehr Keywords ich hinzufüge, desto größer wird das Chaos, da es dieses und jenes Keyword bei der einen Instruktion gibt und bei der anderen nicht, und sie überall mehrfach implementiert sind. (Bis zu einem gewissen Grad notwendig, da sie verschiedene Dinge tun.) Für die wichtigsten Keywords möchte ich das aber ändern, sie sollen gemeinsam erfasst werden, und nur bei den Instruktionen einen Effekt haben, bei denen es eine Implementierung dafür gibt.

Etwas, was ich außerdem gerne einführen möchte, ist ein Keyword start, das bewirkt, dass eine Instruktion erst ab einer gewissen Stelle hinzugeschaltet wird. Eigentlich wollte ich das ursprünglich gar nicht, da ich es interessanter fand, wenn Veränderungen allein aus den immer-geltenden Instruktionen, die gegeneinander greifen, entstehen... aber mal sehen. Interessanter ist vielleicht das Keyword end. Denn oft ist es ja so, dass eine Instruktion unbedingt notwendig ist, damit am Anfang ein bisschen "Chaos" erzeugt wird, und z.B. vermieden wird, dass nur Tonleitern übrigbleiben. Sobald das aber einmal geschehen ist, läuft es eigentlich auch ohne dieser interessant weiter.

~

Zum Abschluss: Cute demon faces! <3


Ich habe den Graphikbereich um einiges verbreitert - weil ich zwischendurch mal Achtzehnteltöne implementiert habe, für die schlicht nicht mehr genug Pixel da waren - und so sieht es jetzt aus. Am GUI arbeite ich selten. Es gibt eine Reihe von praktischen Tastenkürzeln, d.h. die Buttons auf der rechten Seite sind nur ein paar der Befehle, die es gibt.

Ein Uploads stehen an, für die muss ich jetzt aber erst noch Bilder machen. Theoretisch wäre es wohl interessant, eine Aufnahme vom Programm in Bewegung zu sehen, wie ich das beim alten AlgoLine gemacht habe - aber in der Praxis läuft mein Rechner bereits heiß und der surrende Lüfter packt es fast nicht mehr. Es macht mir aber auch Spaß, passende Bilder zu finden/erstellen, und es verkürzt die Video-Erstellungszeit um ... eigentlich quasi alles, also Faktor 1000 oder sowas.^^






Freitag, 27. März 2020

AlgoLine B: "Voice Shadow Glitter Eventuality" und mehr...

Heute hab ich am Programm selbst keine Veränderungen gemacht, sondern Parameter geschraubt und Stücke generiert. Ich mag das Ergebnis:

1. Untrue Island Mess Linguist
2. Voice Shadow Glitter Eventuality
3. Well Nothing Thought Splash

In allen drei Fällen habe ich nachträglich einen Low-Pass-Filter darübergelegt - hohe Töne sind einfach generell lauter bei MIDI, und dem muss ich entgegen wirken. Well Nothing hat außerdem noch deutlich mehr Nachhall verpasst gekriegt.

Das Muster ist jeweils ähnlich. Der zentrale Bestandteil:

avoid 1 same_interval except 0 .. ..
avoid 1 same

Es werden also sowohl Tonwiederholungen als auch Intervallwiederholungen vermieden, mit Ausnahme vom 0-Intervall (also ein liegender Ton). Das führt prinzipiell mal zu einem Muster von anfänglichen Chaos, das sich allmählich sortiert zu immer längeren Liegetönen oder Akkorden.

Zweitens gibt es eine Auswahl von Präferenzen für verschiedene Modi - bzw. eigentlich den selben Modus in unterschiedlichen Transpositionen. Indem es der selbe ist, ist es nämlich leichter, Überlappungen zu verhinden, die einzelne Töne herausstechen ließen. Für die ersten beiden Stücke ist es jeweils ein Quarten-Turm-Modus, leicht mikrotonal verschoben.

Und schließlich Rampen, die dafür sorgen, dass bestimmte Register gegenüber anderen bevorzugt oder benachteiligt werden - was eine temporäre Sache ist, da "avoid same" alle Unterschiede im Laufe der Zeit ausgleicht.

Für die ersten beiden Stücke habe ich das Rezept leider nicht zwischengespeichert, das dritte hab ich hingegen und kann es hier vollständig präsentieren:

~ ~ ~

Well Nothing Thought Splash

Twelfthtone

avoid 12 same_intervals except 0 114 -114 144 -144
avoid 12 same

avoid 1 ramp_region 100 0
avoid 1 ramp_region 240 0
avoid 1 ramp_region 500 200
avoid 1 ramp_region 400 500

prefer 512 set modus 12 12 10 8 12 18
prefer 256 set modus 12 12 10 8 12 18 offset 7
prefer 128 set modus 12 12 10 8 12 18 offset 5
prefer 64 set modus 12 12 10 8 12 18 offset 8
prefer 32 set modus 12 12 10 8 12 18 offset 4
prefer 16 set modus 12 12 10 8 12 18 offset 9
prefer 8 set modus 12 12 10 8 12 18 offset 3
prefer 4 set modus 12 12 10 8 12 18 offset 10
prefer 2 set modus 12 12 10 8 12 18 offset 2
prefer 1 set modus 12 12 10 8 12 18 offset 11
prefer 1 set modus 12 12 10 8 12 18 offset 1

prefer 16 set modus 72
prefer 16 set modus 72 offset 7
prefer 16 set modus 72 offset 5
prefer 16 set modus 72 offset 8
prefer 16 set modus 72 offset 4
prefer 16 set modus 72 offset 9
prefer 16 set modus 72 offset 10
prefer 16 set modus 72 offset 2
prefer 16 set modus 72 offset 11
prefer 16 set modus 72 offset 1

select lowest 3 apathetic
select lowest 3
select middleregister 1
select middleregister 3 apathetic

dimension 500
lowest_pitch 20

~ ~ ~

(In der Aufnahme wird dieses Rezept rückwärts abgespielt - deswegen die glockenhafte Zunahme des Chaos ganz am Ende.)

Ich habe bereits angefangen, ein Usermanual zu schreiben - dann kann ich das Programm auch mal anderen Menschen in die Hände geben. :)

Freitag, 20. März 2020

AlgoLine B (Work-in-Progress)

In den letzten Tagen hat sich die Motivation, an AlgoLine zu arbeiten, etwas verflüchtigt. Aber ein bisschen etwas geht doch immer weiter.

So sieht der Player derzeit aus:



Die wesentliche Änderung - neben dem, dass es jetzt auch wieder möglich ist, während dem Abspielen Tempo und Instrument zu ändern - ist, dass ich das Design der Selectors doch nochmal überdacht habe.

Deren Interface lässt jetzt auch Parameter zu, anstatt bloß aus "nimm diesen Selector" zu bestehen.

"select lowest 5" bedeutet naheliegenderweise, unter den gerade bevorzugten Tönen die fünf untersten auszuwählen, etwas verwirrender ist das Schlüsselwort "apathetic" - es wählt genau diejenigen Töne aus, deren Bewertung in der Mitte zwischen "am meisten bevorzugt" und "am dringendsten vermieden" liegen.

In einem Stück sowohl höchstbewertete als auch mittelbewertete Töne auszuwählen, führt zu einer interessanten Mehrstimmigkeit, da sich die beiden doch etwas anderes verhalten.

Das nächste Vorhaben ist die Implementierung von ein paar intervallbezogenen Instruktionen.

Dabei bin ich gespannt auf eine Interaktion zwischen:
prefer interval 3
prefer interval -3

Das müsste nämlich - so meine naive Annahme - dazu führen, dass Töne liegenbleiben, wenn sie im Abstand von 3 liegen. Vielleicht lassen sich damit Präferenzen für bestimmte Akkorde einbauen. Aber wahrscheinlich kommt es wieder komplett anders als ich mir das jetzt vorstelle.^^

Dienstag, 17. März 2020

AlgoLine B (Work-in-Progress)

#bingecreating heißt es in diesen Quarantänezeiten. Es hat sich also gut getroffen, dass ich ohnehin gerade diesen Monat ein Projekt, das ich lange liegen habe lassen, wieder frisch angehen wollte: AlgoLine.

(Lange liegen lassen aus gutem Grund: Ich hatte mir vor 2 Jahren gesagt, dass ich erst dann wieder daran weitermache, wenn mein Orchesterstück und meine Diplomarbeit fertig sind.)

Der Code von 2016, das stellte sich nach kurzer Begutachtung heraus, war absolut grauenhaft; wüstes Durcheinander von Referenzen, unklar benannten Variablen, einem Mischmasch aus Deutsch und Englisch... daran weiterzumachen, hatte ich echt keine Lust. Also nochmal komplett neu anfangen.

Im Gegensatz zu AlgoLine A (wie ich die alte Version jetzt mal nenne), wo es keinerlei Interface gab, um die Generation des Stücks zu beeinflussen (alle Befehle dafür standen direkt im Code) wollte ich es diesmal so anlegen, dass auch andere Personen theoretisch etwas damit anfangen können. Daher gibt es zu jedem Algorithmus, der im Programm zur Verfügung steht, eine äquivalente Textzeile - damit ist sowohl laden als auch speichern möglich, und vor allem, die Anweisungen können vorher in ein txt-File geschrieben werden.

Ich überlege im Moment noch, was ich noch alles in diese "Rezepte" hineinnehme. Derzeit besteht noch jedes Rezept aus drei Teilen:

1) Auswahl der StepWidth, standardmäßig 12 Töne pro Oktav, möglich sind aber auch 24, 36, 48, 60 und 72. Intern gelöst ist das, indem ich z.B. für Vierteltöne einen zweiten Midi-Channel zuziehe, dem zur Initialisierung einmal ein PitchBend-Befehl zugewiesen wird, alles um einen Viertelton höher abzuspielen. Für die 72-stufige Oktav sind es dann schon 6 Kanäle. Noch kleinere Abstände wären also theoretisch noch möglich, aber praktisch ist es schon bei Zwölfteltonschritten schwer, einen Unterschied zu hören.

2) Die Instructions, jeweils eine Zeile pro Instruktion. Diese dienen alle dazu, zu entscheiden, welche Tonhöhen für einen neuen Schlag ausgewählt werden, basierend auf den bisherigen oder ohne Kontext. Jede Instruktion liefert einen positiven oder negativen Wert für jede einzelne auswählbare Tonhöhe. Die Werte aller Instruktionen werden dann addiert, und das Gesamtergebnis an die Selectors weitergegeben.

3) Die Selectors, deren Aufgabe es ist, basierend auf den Bewertungen eine Auswahl zu treffen. Mit "die am höchsten bewertete Tonhöhe" allein ist es nämlich noch nicht getan, denn da gibt es häufig Gleichstände. Ein AllSelector wählt in diesem Fall einfach alle aus, während ein LowNoteSelector sich jeweils nur die tiefste herauspickt. (Meistens mit der Konsequenz, dass die übrigen der Reihe nach von unten nach oben abgearbeitet werden) Es gibt auch noch die Möglichkeit, einen LowNoteReverseSelector zu verwenden, der wählt dann nicht aus den höchstbewerteten, sondern aus den niedrigstbewerteten Tonhöhen jeweils den tiefsten Ton aus.

Das Eingeben/Speichern/Laden von Rezepten passiert in der Konsole, erst nach dem Generieren eines Stückes startet der Player - dessen GUI ich zumindest mal angefangen habe:

Die roten Punkte in der Mitte sind die aktuell klingenden Tonhöhen. Alles darüber ist vergangen, das darunterliegende kommt noch. Je heller der Grauton, desto höher die Bewertung für die einzelne Tonhöhe.

Rechts wird es eine Buttonspalte geben. Da ist vorläufig nur mal ein paar bunte Quadrate anzuklicken; später soll da noch draufstehen, was der Button tut, und welches Tastaturkürzel stattdessen auch verwendet werden könnte.

Unten gäbe es eine Anzeige für die Tonhöhen, aber bei den Zwölfteltonschritten sind es einfach zu viele, als dass es sich gut darstellen ließe. Da muss ich noch etwas überlegen, wahrscheinlich werden dann nur bestimmte Tonspalten beschriftet, anstelle von allen.

~

Vorhin hab ich mal das erste neue Stück auf Youtube hochgeladen:

Sweet Soil Exhort Navel

 Davon kann ich hier das gesamte Rezept vorstellen:

// Sweet Soil Exhort Navel 2020-02-17

TWELFTHTONE

prefer 4000 set modus 28 5 14 28 5 14 14 5 offset 3
prefer 1600 set modus 14 14 14 5 14 14 5 offset 7
prefer 400 set modus 14 14 14 5 14 14 5 offset 10
prefer 100 set modus 14 14 14 5 14 14 5 offset 11
prefer 25 set modus 14 14 14 5 14 14 5 offset 2
prefer 5 set modus 14 14 14 5 14 14 5 offset 8
prefer 1 set modus 14 14 14 5 14 14 5 offset 9

avoid 100 sameas -300 to -200 ramp
avoid 200 sameas -2000 to -1000 ramp
avoid 1 sameas -900 to -1 ramp

avoid 10 same

AllSelector

~

Jede Instruktionszeile beginnt entweder mit "avoid" oder "prefer", was im Prinzip ein Vorzeichen darstellt. Die Zahl danach ist ein Verstärker, der die Zeile im Verhältnis zu den anderen gewichtet. (Was nicht immer ganz so gut funktioniert, da manche Instruktionen einfach um ein Vielfaches stärker sind als andere.) "Modus" ist eine von mehreren Möglichkeiten, eine Menge an Tonhöhen herauszupicken, die vorzuziehen sind. Die Zahlen geben die jeweiligen Intervalle an - in semitonaler Musik (^^) würde 2 2 1 2 2 2 1 eine Durtonleiter vom untersten Ton an beschreiben. Mit Offset-Wert versetze ich die Skala dann noch ein Stück.

"sameas" lässt einen Bereich in der Vergangenheit definieren, und Noten von dort vermeiden oder bevorzugen. "avoid sameas -4 -2" würde sagen, dass die Noten vom vorletzten bis vorvorvorletzten Schlag (?) zu vermeiden sind. "ramp" ist ein mächtiger kleiner Zusatz: Da wird fließt nämlich ein Ton umso mehr in die Wertung ein, je näher er am Jetztzeitpunkt ist. Und da ich das nicht gut skaliert habe, heißt das, dass eine 100-Töne lange Rampe de facto den letzten Schlag 100mal gewichtet.^^

"Avoid same" ist die simpelste Instruktion, die aber fast immer gut ist, dabeizuhaben... das Stück zählt mit, wieviele Noten es von einer Tonhöhe schon gab, und wertet sie niedriger, je mehr es sind. Führt dann also dazu, dass Tonhöhen, die lange Zeit nicht vorkamen, irgendwann doch durchbrechen.

~

TODO:

- das GUI ist ja erst halbfertig. Da kommt noch eine Möglichkeit, Spieltempo und Instrument zu verstellen, neben anderem wichtigen Kram.

- neue Algorithmen! Die Schwierigkeit ist hier, etwas zu finden, das nicht enorme Rechenzeit oder Speicherplatz braucht. "avoid same" funktioniert nur, weil ich die Töne beim Generieren schon mitzähle.

Ich möchte aber gerne ein "avoid same-intervals", und da muss ich gerade noch überlegen, wie ich das genau definiere. Damit das geht, würde ich für jeden Schlag speichern, welche Intervalle er gegenüber zum vorigen beinhaltet. Bei einzelnen Noten geht das ja, aber bei Akkord zu Akkord? Da steigt die Anzahl der möglichen Intervalle ja schnell an. Dreiklang zu Dreiklang beinhaltet 9 Intervalle: Von jedem Ton des ersten Klangs zu jedem Ton des zweiten...

Wenn ich die bloß als Menge (Set) speichere, verliere ich noch die Information, wie oft ein Intervall auftaucht. Hmm...

- mal ein paar Standardrezepte als kommentierte txt-Files erstellen, damit es für andere verständlicher wird.

- mich entscheiden, ob die "dimension" - Anzahl der verschiedenen Tonhöhen eines Stücks - und der Offset von den tiefsten Midipitches auch Teil des Rezepts werden sollen. Da hab ich nämlich beim Rezept oben vergessen, zu erwähnen, dass es auf eine Dimension von 400 angewendet wurde, um das Stück zu erzeugen.

- danach suchen, ob AllSelector nicht doch noch irgendwo einen Bug hat, der dazu führt, dass aufwärtslaufende Girlanden entstehen, wo es ja eigentlich keine Bevorzugung der Tonhöhe geben sollte. o_0

Samstag, 14. März 2020

Üpdäätle -52-

Viel ist passiert in den letzten Monaten...

Zunächst - meine Diplomarbeit wurde im Januar fertig und ist abgegeben. Ich kann also demnächst meinen Abschluss machen... vorausgesetzt, es finden überhaupt noch Prüfungen statt.^^

Ich bin am Ende sogar recht zufrieden gewesen mit meiner Arbeit - einige Ideen zum Einvierteltakt bei Ustwolskaja, über die ich gerne schreiben wollte, habe ich letztlich untergebracht. Der ganze Prozess, bist das Ding gedruckt und schließlich bewertet war, hat nochmal ein Monat gedauert.

~

Im Februar habe ich mir wieder eine große Playlist mit Neuer Musik zusammengestellt. Eventuell werde ich darüber noch etwas schreiben - aber im Moment bin ich anderweitig beschäftigt:

Ich arbeite nämlich gerade an einer neuen Version von AlgoLine, meinem Programm für algorithmische Musik... der Code der alten Version, von 2016, erwies sich als absolut unbrauchbar: schlecht strukturiert und wenig ausbaufähig. Also hab ich komplett von vorne begonnen.

Mein Ziel ist:

Ein Programm, das in der Konsole oder aus einem Txt-File einige Instruktionen einliest, und daraus dann automatisch ein Stück generiert, das dann im Player (mit Midi) abgespielt werden kann.

Außerdem soll das ganze noch Vierteltöne unterstützen, dachte ich mir ... und wo ich schon dabei war, hab ich das gleich noch zu Sechsteltönen erweitert und ... bis zu Zwölfteltönen. Darauf freue ich mich schon sehr, zu hören, wie das so klingen wird.

Bis jetzt habe ich:

- Eingabe und Ausgabe von Instruktionen (jedenfalls dem dutzend Standardalgorithmen, mit denen ich anfange, das ist aber relativ leicht später erweiterbar)

- Den Teil, der tatsächlich ein Stück generiert... der ist noch nicht fertig, aber es ist alles dafür nötige da, und muss nur noch zusammengebaut werden

- Die allererste Planung für die visuelle Gestaltung des Players. Das ist der schwierigste Teil. (Mit GUI kenn ich mich einfach zuwenig aus, und es ist frustrierend, zu wissen, dass ich da eher pfusche ... aber funktionieren wirds, immerhin tat das die Version von 2016 auch.)

Noch zu tun ist also, das GUI fertig zu stellen, und dann alles nochmal miteinander zu verbinden - und dann steht nichts mehr im Wege, nach Anweisungen im txt.-Format Zwölfteltonkompositionen zu generieren. :)

Derweil höre ich neben dem Programmieren die kompletten Streichquartette von Alois Hába - schonmal Vierteltöne schnuppern. Bei meinen eigenen Midi-Stücken im Dezember habe ich festgestellt, dass für mich kleinere Unterteilungen tatsächlich besser funktionieren - etwas wie Sechsteltöne, oder Achteltöne, scheint mir im Hören intuitiver. Seltsam.