Friday, January 17, 2025

More Sample Coding, Crumpsy Scoring

A somewhat sad slow day. Woke late after a night of agonising stomach pain scattered with terrible nightmares, probably due to eating leeks the day before, which, though I like the food, I find indigestible. By 5am I'd still not digested the meal I ate at 5pm the previous day.

Most of today was spent refining the programming efficiencies from yesterday. My 'goto' statement didn't last long. I decided to check for the flag first and give that a separate countdown, letting it drop out to another uninitialised countdown. By the end of today, just about every variable or branch that doesn't need to be in the loop has been evolved out. The speed result is miniscule, but is tangible, and all of the code for the sample players is now more unified and neater.

One other job was the scoring for Crumpsy Madpash, the music of which is now complete.

I'm remain sad at David Lynch's death and this evening watched many of his early short films; Six Men Getting Sick, The Alphabet, The Grandmother. The imagery of The Alphabet and The Grandmother stuck in my mind so much that its palette has influenced my thoughts about film. Those early films are filled with Francis Bacon-like imagery; the screaming distorted faces, and perspective-boxes.

Thursday, January 16, 2025

David Lynch Dies, Crumpsy Madpash, My First C++ Goto

Sigh, a sad evening as I hear that the wonderful David Lynch has died. My dreams of meeting him will be confined to the dreams in which we meet.

I started today working on the Fall in Green music, a simple matter of adding the vocals Deb recorded on the 2nd of December. I found the need to delay a sound starting for a second or so. The updated (Nov 2024 version) sample players have a countdown before they play, and that could be any size, but I limited it to a mere second. I thought this was a bit mean, so today I extended it to 8 secs. There were about 6 plugins which used this.

Starting this simple programming task led me down a tunnel of wanting to update the other sample players with new efficiencies. The code used to check if a sample was there, and if so count a loop of 64 samples, each time checking if the pointer was past the end of the sample or not. I realised that I could unify both checks in some cases, dropping out of the loop rather than running the same check 64 times in a row. In other cases, the 64 loop can be needed for countdowns, but I could still drop out when needed. The code in these cases ran like this:

if (lpengine->sample)
{
    for (b=0; b<64; b++)
    {
        if (!flag)
        {
            (countdown timer, and if at zero set pointer=0 and flag=1)
        }
        if (lpengine->sample->pointer<lpengine->samplesize)
        {
            (data is copied here, pointer incremented)
        }
    }
}

The latter 'if' runs 64 times in a row, when a first fail can cause it to drop out, AND it needn't check at all if the flag isn't set - but it does need to check when the flag is set for the first time. At first I used an 'else' statement and a 'break' to stop the loop:

if (lpengine->sample)
{
    for (b=0; b<64; b++)
    {
        if (!flag)
        {
            (countdown timer, and if at zero set pointer=0 and flag=1)
        }
        else
        {
            if (lpengine->sample->pointer<lpengine->samplesize)
            {
                (data is copied here, pointer incremented)
            }
            else
                break;
        }
    }
}

Better; but I needed the data copy to take place when the flag was initially set, so for the first time in my programming life, I used a 'goto' statement to jump over the 'else':

if (lpengine->sample)
{
    for (b=0; b<64; b++)
    {
        if (!flag)
        {
            (countdown timer, and if at zero set pointer=0, flag=1, and goto calculate)
        }
        else
        {
calculate:
            if (lpengine->sample->pointer<lpengine->samplesize)
            {
                (data is copied here, pointer incremented)
            }
            else
                break;
        }
    }
}

These programming distractions took all day, but I did manage to insert the vocals into Crumpsy Madpash. At times of artistic transition, I find programming a useful reset; like bringing a 'Logo Turtle' to a stop before rotating and heading off into a new direction. Today's changes made Prometheus a tiny bit faster and more efficient.

Life is about tidying, fixing, making more efficient. Life persists because order is resilient and chaos not so. The more ordered we are, the more resilient we are. Order is strength. Chaos is weakness. Onwards we march.

Wednesday, January 15, 2025

Filing, The Artist's Motivation

A slow day, slow slow slow! I filed the sheet music for The Dusty Mirror, preparing for its public release on release day, and this evening filed the 'Johann Strauss Blues' music, though I can't complete the admin on this yet.

In the day I updated Flatspace to v1.14 with the bug fix I recently applied to Flatspace IIk, and added a new plugin to Prometheus: 'Randy Sample II', which plays a sample with random pitch, start time, amplitude, and initial delay. I also tested a new backup USB stick for the MODX, and can confirm that the name of the stick is what the MODX7 uses as its identifier.

I've done a few other minor filing duties, like correct version numbers of software, and updated and contributed to the Flatspace 3 design document.

I need to work next on the Fall in Green music next. I must remind myself of the shortness and preciousness of life, health, ability.

I've spent 7 weeks working on The Dusty Mirror, and many months in 2020 before that on it. Future generations may ask why. I have no record contract, or external party willing me on or paying me. I have little hope of selling the work in any way, the only financial reward would be a few scant drips of streaming royalties. Good or bad, I doubt the music will be popular or acclaimed; I don't particularly want or like acclaim or applause. I am my own best and worst critic, and have never much believed or paid attention to the opinions of others regarding my work - this I perhaps learned from my parents, who either harshly criticised everything for ludicrous reasons, or paid no attention to anything I did. This made me immune to trying to please others. I have learned a lot while working. I've become a better singer, player, composer and producer. This is a key motivation: doing what's new to grow and be better as an artist and person; but perhaps the key reason for creating this album (and all of my music) is because it is my job to create. As an artist-scientist, I feel it is my duty to humanity to create, and to push myself to create my best work, to do the best I can. It is my life's purpose to contribute to global culture, and to enhance my own life and abilities by pushing myself to be better, as a person, and in skill and ability as a creator. It is the creators hallowed job to fulfil his potential in a way in which those trammelled by society cannot.

Tuesday, January 14, 2025

Norman Bates Complete, SFXEngine v2.01

Completed the 'Norman Bates' video yesterday, adding an animated glow layer which included some mysterious clouds.

Then started some cursory update work on SFXEngine. I wanted to add the ability to move Environments up and down, but forgot that the main sound buffers were stored only in the top-most Environment. I postponed the fix until today. I dashed to town, hearing that flu vaccines were available, but when I arrived they had run out. I returned to a note requesting 10 copies of books for the Agency for the Legal Deposit Libraries for Neorenaissance and How To Organise Your Computer Files, so I ran around packaging these and preparing this important shipment.

I charged into SFXEngine upgrades today, and added several small features. Testing was complete by 15:00. All is ready for an upgrade prior to the Sound Pack launch.

After that, I uploaded the 'Norman Bates' video, and prepared all of the videos for release at the correct time. It's taken about 7 weeks, to remaster The Dusty Mirror. Much more work than I anticipated, at least half of this was video work, although the music too took more consideration. Of course, Christmas, and other jobs like the Fall in Green music and Flatspace programming got in the way too.

I could promote this more, but as ever, any work on it will steal time from new projects.

Sunday, January 12, 2025

Norman Bates Video, Arcangel

A frustrating couple of days, I'm eager and keen to finish The Dusty Mirror but find myself working on the music videos. I now know the feeling of being made to promote music by working at things like this, even though I barely work commercially (merely hope for success), and have no task masters; yet my own drive pushes me to do my best, and always towards new ground.

I'm beginning to feel like a film maker. Watching Star Wars: Rogue One yesterday, and North by Northwest, made me observe the lighting, angles, calculate shots and layers; all automatically, as a result of my recent filming and video work.

A side note: Rogue One: the best of the universally poor 'new' Star Wars films. The best part of every story is not knowing what will happen in the end, and the lack of this is why all 'prequels' are terrible. The only thing worse is the 'remake', for the same reason, except that a good film (nobody remakes a flop) is dragged through the dirt and soiled by association. The only thing worse than a remake is a 'reboot', which is a remake without imagination. Alas, all of the 'new' Star Wars films are all of these three things, and Rogue One manages to be all three in one film! Idiotic though it is as a story, the action parts at the end are good. The final battle is by far the best part, on par with war films like Where Eagles Dare (and more shallow).

Many recent films, such as this, fall prey to casual racism and sexism. We cower in shame at Hollywood's early days where black and Chinese parts were played by white actors, or even male actors played female parts. Now, female actors routinely play male parts (most of these action characters are clearly male in attitude and style, merely looking female), and black (less so Asian) characters play white parts excessively, making exactly the same mistake as 100 years ago. This is response and reaction to that earlier shame.

I digress.

I compiled most of the final music videos yesterday, but 'Norman Bates' remains. I felt the need to make a full video, so have spent today doing this. I'm limited in some things. I'd like few more slow zooms and fades. My camera wobbles when the lens zooms. I've used an old time-lapse of some sunlit clouds, darkening them for a storm, and spent yesterday trying to record a film on television as though seen in a rainy puddle at night. This involved making a 50x50cm tray from aluminium foil, painted black, and placing it in front of the television in a dark room.

It looked better than I thought in some ways, worse in others. I became fascinated more by the odd patterns, in a grainy film that didn't really look how I'd intended. I have, in this film, started to use a wider range of camera settings, and I'm starting to see flaws in everything. This is good; a sign of progress. Beginners struggle, then after a while things seem to be working fine. The next step up is to think that everything is bad; this is the first sign of becoming actually good at something. This feeling never really goes away. Being satisfied at any creative work should be a hard battle.

In other news I had an email about my old game Arcangel, the game which was 'published' and distributed across the world without my permission or any payment, the game that drove me to the brink of suicide and pushed me into a new direction of avoiding publishers or help from anyone - for life. The worst aspect of the Arcangel debacle isn't my lack of control, or the loss of a game which I'd put my life into for 2 full years, but that it was a flawed and incomplete game, gifted to millions of people in bad condition; and badly received. Perhaps I should be glad it wasn't a hit, given that it was stolen from me, but to have a creative work stolen, seen by millions of people, and be an unfinished horrible mess, is a worst of all worlds. Well, I can't face that game, any more than David Lynch can face Dune. Though, he is wrong, as he can fix it if he wants (I pray that he will), and he was paid for his work. For Arcangel, I got nothing.

Friday, January 10, 2025

Arm Dream, FOTTI Single Videos

I dream of a world where living human arms can grown and adopted. One person adopted an arm which grew a black hand. Deborah adopted a (white) hand, which hadn't yet grown. These were world firsts. I took part in a television debate about these hands and the regulation concerning their adoption; were people able to look after them? Some background checks must surely be needed, etc. The dream was probably linked to the various arms and hands in The Dusty Mirror and its videos.

An day of unusual and extraordinary tiredness, perhaps due to the cold or great stress. The past two days have also been very busy and productive. My stomach is tight and in constant pain.

Today I completed the final edits of the 'Fear of the Thing Itself' and Johann Strauss videos. The PRS are lax in processing the latter song, a job normally done in 24 hours has taken nearly two weeks to date. I've ordered a new memory stick for animation work, which (if I'm very lucky) could compete in speed terms with the unreliable hard drive I'm using at the moment. I've done some cursory work on a 'Norman Bates' video. Before yesterday's YouTube showcase, I was happy to call the Dusty films complete, and make Norman Bates a simple lyric video, but now I see the importance, utility, rarity, and artistry of video work, so I'll try to push myself yet harder. This is already my most accomplished album by far in video terms.

I must summon the energy to complete this. New music and new video await.

Thursday, January 09, 2025

Johann Strauss Video, Cat Covid Showcase, Bandcamp Pre-sale, and More

I awake at 04:00 and sleep in torrid flickers until I rise at 09:00 to a 12 degree room. I finished the Johann Strauss video, re-photographing a background and using two 3D lights to approximate the colour (if not the shadows!) of the scene.

Then added the lyrics. I recompiled 'Fear of the Thing Itself' with gaps around the subtitles, though this made little difference, and made and uploaded Spotify Canvases for both songs. I then went out, primarily for some exercise, and bought some new face paint colours - essential props!

Then, I released the pre-sale of the album on Bandcamp, something of a last minute decision, but if the album is to be released soon it needs to be visible, so it's now visible. I need to update my album release plan to make my path clear and stable.

Then, work on the 'Except for the Hatred' video, adding long lightning sparks to it, which echo the lightning on the album cover. I heard that 'Cat Covid!' was to be featured in a new (to me, at least) music showcase programme on YouTube, I tuned in ay 18:35 to just miss my track, but enjoyed the rest of the show and will be back.

I then compiled some paintings for the Society for Art of Imagination membership renewal, and built more drafts of the videos in progress. I need to complete the album plan, reach final drafts for the videos and start uploading. I also need to promote the SFXEngine Sound Pack; the first is due out on the 29th.

I am at my limit of jobs. Any more would be overwhelming.

Wednesday, January 08, 2025

Johann Strauss Video, and More

A power day of video wrk. Completed the lyric video for 'The Arm' and updated the draft of 'Fear of the Thing Itself'. Then completed the animation for 'Except for the Hatred', and filed Argus v1.50, releasing it this evening. I also set up a few Steam sales for the future.

I confirmed a year's membership of the wonderful Society for the Art of Imagination. Then, filming some hands for 'The Fingers of Evil'. I always had a strong image of a certain type of white bony hand, shaded like the imagery in David Lynch's Alphabet film (ideally I'd have pointy nails!). I painted my arm black and while and filmed myself in front of a dark curtain, raising the shutter speed to make it darker. I converted at a low bitrate to leave in some digital grain.

The colour is muted but natural, I used a cyan and yellow light (my favourite combination!) but made no more adjustments. That shot is mixed with the digital clouds from the final video.

Finally, work on a video for the B-side 'The Johann Strauss Blues'. I made an image of Johann waltz and tap its virtual 'feet' to the music in a most amusing way. This needs a backdrop and lyrics.

All videos are done in some draft apart from 'Norman Bates', which now exists as a generic lyric video, already better than nothing.