mailto: blog -at- heyrick -dot- eu
Yesterday, I mostly worked on SimpleSeq, as I was putting together This One Weird Feature and really wanted to get it done.
But sitting at a chair all holiday. Nah, that wasn't good.
So I also painted one of my shutters.
Using the living room as my workshop - eek!
The heat gun was useless. I went from 400°C to 600°C in 50°C steps, and all the gun really did was make the paint a bit soft. It didn't bubble and it wasn't possible to just scrape it off. Eventually I just gave up on that and scraped off the flakey parts, lightly sanded the rest, and threw on a coat of white gloss.
Which, for some reason I don't entirely understand, had a nice trick of simply vanishing. I'd slap on some paint, and coming back a few minutes later, parts would look unpainted. It was weird.
I've only done the front. It's not particularly good, but it's way better than what was there before. It did, however, use an entire tub of paint. I need the other tub for the other shutter.
Since the smell was pretty awful, I went shopping. Got myself a lot to drink, as it's been quite hot and I really can't stand the taste of water. I've been drinking tea or milk. So now: grape juice, apple juice, pineapple juice, lemon juice, and a brick of some horrifically expensive Starbucks stuff that has so little actual coffee in it that even I can manage it and I don't like coffee...
Having finally tracked down a copy of Midiphile and getting it to work under Aemulor (it's a shame the sources aren't available to build it as a modern 26/32 bit neutral app), I discovered a couple of flaws in the MIDI exporter, which were fixed. The first was a slightly incorrect chunk size. I had, as a last minute thing, added the time signature to the file but forgot to account for those extra bytes in the calculation.
The second thing was that the output ends at the end of the data, which is logical enough, except that notes that are still on won't have been turned off. Most MIDI software will assume this upon reaching the end, but still, it's not hard to go through at the end to ensure every note is actually off.
If you turn on the extended report, you'll notice Midiphile throwing up errors about Duplicate Events and Excess Note Off commands.
I believe this to be a bug in Midiphile, as if we look at the A2 key's report:
001:03:000 Midi NoteOn 1 A2 v:44
001:03:006 Midi NoteOn 1 A2 v:0
D 001:03:006 Midi NoteOn 1 A2 v:44
F 001:03:012 Midi NoteOn 1 A2 v:0
D 001:03:012 Midi NoteOn 1 A2 v:44
F 001:03:018 Midi NoteOn 1 A2 v:0
D 001:03:018 Midi NoteOn 1 A2 v:44
F 001:04:000 Midi NoteOn 1 A2 v:0
D 001:04:000 Midi NoteOn 1 A2 v:44
You can see what's actually clearly happening here is that the A2 note is being turned OFF, and then immediately being turned ON again. It's not actually a duplicate event, I suspect the program is only looking at the "NoteOn" event and not taking into account that a Note On with a velocity of zero is actually a Note Off event.
The second new thing? This is the biggie.
Play music, have it appear.
This isn't perfect by any means. As it needs to make the notes fit to the time duration of each individual column (which is 12.5cs at 120bpm; or 16.6cs at 90bpm), there may be small errors, particularly with fast notes. However it does attempt to record exactly what was played, including full expressiveness (that is to say, it will record the use of the Sustain pedal and the exact key velocities if your piano supports touch sensitivity).
This is an example of me bashing out "sort of" the beginning of Twinkle Twinkle Little Star.
Recorded with full expressiveness.
And since we can now export MIDI, we can drop this into Rhapsody4 to see what it looks like as notation, but note that the MIDI import lost the use of the Sustain pedal and the individual note velocities, so when played back it's rather... flat.
Music that looks like music
but with no expression.
In order to transcribe, simply line up the edit highlight with the beginning of a bar, and press
You'll see the dialogue above as it counts beat ticks. There are two noises that you'll hear. The most common is the high-hat pedal which marks each beat. Every so often you'll hear one that's more tish (high hat open) that marks the start of a new bar.
The dialogue will cycle through this, but isn't actually recording anything at this point, it's just to give you the feel of the rhythm.
Once you are ready, you can start to play (and note - it'll begin with any MIDI event, including pressing the Sustain pedal).
When recording begins, the timing and beat ticker will jump back to the beginning of a bar, as recording always begins with the beginning of a bar. So, if for some reason you want to begin offset, play a fake note to get going and delete it later.
As recording is performed in real-time, the dialogue will keep you up to date with what is going on. When you are finished, press
Escape and the familiar editor screen will appear.
Transcribing will merge the notes played into the current music (in the current channel) from the bar selected, so you could use this to enter a piano piece to be played by two people. Note also that it will automatically overwrite any notes or control sequences that were previously at those locations; but remember it'll be playing a beat ticker, not what was there before.
It doesn't echo your playing, it works on the assumption that your piano has already sounded what keys have been pressed.
Events other than Note On, Note Off, and Sustain pedal are ignored.
Remember, the shortest interval supported by SimpleSeq is that of a semiquaver (or a quarter of a beat). Hammering the notes out as fast as you can may... not behave as you expect. SimpleSeq has some special code to cater for notes that are both on and off in the same time interval, but even so you might find things being a bit odd.
Rhapsody4, on the other hand, loses notes entirely if you hammer them out. ☺
That being said, if you want to see if you have what it takes to join a thrash metal band, then simply set the BPM to 360, hit
^T, and go slay a metaphorical dragon. SimpleSeq can keep up, even on a Pi 2. ☺
I'm actually really pleased with this work. As much as I've been adding features to SimpleSeq here and there, I didn't feel that it could be taken seriously as a music creation tool until it had the ability to record what the player was actually doing, in real time. Better yet, since we're working with MIDI events here (rather than trying to convert to notation), we can perform a more accurate recording where the use of sustain and each individual key hit can be faithfully recorded.
And in case you need it given the perpetual lack of a user guide...
Some random stats:
- SimpleSeq is split into 11 modules:
Plus two headers:
- dialogue - 2024 lines, 66K
- draw - 971 lines, 26K
- editor - 2663 lines, 76K
- file - 303 lines, 8K
- key - 221 lines, 4K
- mididefs - 363 lines, 13K
- midifile - 442 lines, 13K
- note - 1434 lines, 43K
- screen - 415 lines, 11K
- transcribe - 411 lines, 13K
- wrapper - 734 lines, 23K
- dialogue.h - 204 lines, 7K
- generic.h - 659 lines, 19K
- Which equates to 10,007 lines, 318.6K.
- It creates an executable 66,280 bytes (64.7K) in size (HD720, four bytes shorter for the big screen build).
- The directory was created on the 31st of July 2023. Apart from parts of key and screen that were copied from my Mamie Fletcher's House game because I'd already written the code, everything else is original code. Yeah, my "weekend project" kept me busy in August and the first week of my September summer holiday.
- I still suck at piano. I'm dyspraxic, so I don't envisage ever not sucking.
Since it's getting darker earlier now (we're almost to the equinox, OMFG), I decided to fire up the candlabra to see what it was like in actual night conditions.
Well, after giving it a few minutes for the wax to melt (it's the fuel) and for my eyes to adjust to six candles rather than electric bulbs, it was... surprisingly capable.
Once the candles had warmed up to full intensity, it was quite possible to read or play the piano, plus a lovely orange hue to the light that just said "home" in a way that LED bulbs can't manage.
No, we haven't been visited by aliens
Not so long ago, the US Congress actually gave time and space to those pushing for "the truth" about alien visitation.
Now it's Mexico's turn. Complete with a thousand year old corpse that looks surprisingly human.
The problem is, like the Earth being flat, it just doesn't stand up to any reasonable form of scrutiny. Because if we had been visited by intelligent extraterrestrial life, we would know about it because there's a pretty good chance that it will have either enslaved us, wiped us out, or maybe died trying (refer to H.G.Wells' The War of The Worlds and John Christopher's The Tripods for examples of how that would go).
The reasoning here is simple and multifaceted. Firstly, there are no alien civilisations nearby, we'd have noticed by now. So they would have to have come from a long way away. Which means one of three things. Either they have extremely long life spans, or they have perfected being put into stasis, or they have the ability to defy the speed of light (either directly or by using wormholes). Each of these imply a level of technology far in advance of anything we have.
Or, put it like this. Imagine an alien ship hovered into orbit and pointed its cannons at us - including, obligatorily, making their point by blowing up Washington DC...though it would be funny-tragic if they instead wiped out somewhere like Riyadh or Beijing and ignored the US completely. What we think as the most important centre of power on earth might not be how they perceive it. We have a heavy dependence on oil, which means the Saudis carry weight, and damn near everything is produced in China which means... you get the point.
Anyway, what do you think our response would be? Given that we're quite adept at killing each other, but killing something from somewhere else is an outside context problem, would we even be capable of making a response?
A lot of people will crap in their pants. A load more (with some overlap) will run to their nearest church/mosque/whatever despite the presence of aliens pretty much trashing the whole "humans are special creations of God" part of their religions. And plenty more will make shitty YouTube videos decrying it as obvious fakes thrown together in Blender and saying that Washington (etc) was destroyed as a false flag operation by the CIA, blah blah blah.
We'll die or be enslaved due to fear, apathy, and stupidity. And the fall of the entire planet will take days (if not hours).
Oh, but wait. They might be friendly aliens looking to share their secrets with us...
Firstly, any alien needs only look at conservatives of any flavour (from Republicans to Tories and whatever the equivalent is elsewhere) to understand that we simply cannot be trusted with that level of technology. 49% of our species openly and brazenly subjugates 51%. We're quite happy to murder each other based upon such trivial nonsense as differences in skin melatonin, country of birth, or "my imaginary sky fairy is better than yours", or maybe just because something else somewhere else "offends" them (which, of course, entirely justifies brutal murder, right? - that crap offends me, so who do I get to kill?).
Besides, if they're a great starfaring species, the way they protect themselves is exactly by not sharing their secrets. Being able to do what others cannot gives them power, supremacy, and protection. Just like here on earth.
Thinking that aliens would want to help us is part of the egocentric "humans are special" nonsense that religion teaches. No, we really aren't. We're a primate that's figured out how to split atoms. That makes us special here, on this planet. It doesn't amount to a hill of beans in the universe.
Plus, of course, we're assuming here that coherent communication is in fact possible. Maybe they have developed (or been evolved with) some form of telepathic communication, so they have no need of vocal cords or the ability to distrupt the electromagnetic spectrum. And, being from somewhere else their entire thought process will be different. We struggle to understand Lucy Letby. How would we cope with a lifeform with a morality isn't so much white/grey/black as pink-with-mauve-patches?
Secondly, there's plenty of evidence in our own civilisation that pretty much the only reasons we went anywhere were to plunder or colonise. Those we didn't outright kill, we enslaved or held subserviant. As a Brit, we nearly ruled the world. And might have, if those in power had cared a little more about the ruling and a little less about the pilfering. This is a very viable consideration as if the aliens are that advanced, they would likely regard us like we regard cattle - "essentially stupid and exists only to make milk and be slaughtered for meat". They won't care about us or our feelings and opinions any more than we care about the animals screaming in fear as they're led to their demise.
So, no, they wouldn't sneak into remote Ohio farms to abduct cows and shove probes up the rectal passageways of random humans in the middle of the night. They wouldn't send little scouting parties to perform experiments on us. Because if they came here, they came here for a reason, and like the Conquistadors they'd turn up with enough show of strength that we'd learn pretty rapidly the futility of fighting back. They would be here for whatever it is they wanted, and we would be the annoyances getting in the way of that. No, they absoutely would not see us as equals. They've travelled the cosmos, we've made it to our own orbiting satelite. They'd be here for carbon, for water, maybe we're the only decent source of beryllium? Whatever, they would not be here for us.
So, with all of that in mind, I call "bull" on the whole alien visitation thing.
If they had come, we'd know. Well, those that survived, at least.
Please note that while I check this page every so often, I am not able to control what users write; therefore I disclaim all liability for unpleasant and/or infringing and/or defamatory material. Undesired content will be removed as soon as it is noticed. By leaving a comment, you agree not to post material that is illegal or in bad taste, and you should be aware that the time and your IP address are both recorded, should it be necessary to find out who you are. Oh, and don't bother trying to inline HTML. I'm not that stupid! ☺ ADDING COMMENTS DOES NOT WORK IF READING TRANSLATED VERSIONS.
You can now follow comment additions with the comment RSS feed. This is distinct from the b.log RSS feed, so you can subscribe to one or both as you wish.
|David Pilling, 17th September 2023, 01:12
We would be of no interest, just like people from a few 1000 years ago. Resources are plentiful in the universe.
Various other unhappy possibilities - this is as good as it gets, self destruction. Once a species gets to some point it is seen as competition and wiped out. Evolution converges on some universal result - maths. When you're smart enough it will all be obvious. You don't get far as a species without having a positive attitude. No one is suggesting running an aid program for the green slime under rocks to help it evolve.
|C Ferris, 17th September 2023, 10:20
It seems long ago about 6000 years it was written that creatures came from a planet that comes close to Earth every many thousands of years - modified creatures here to do useful work.
|C Ferris, 17th September 2023, 10:22
Is it possible to have download points for old music progs?
|Rick, 17th September 2023, 12:30
David: Or the other self-destruction - once a species gets sufficiently advanced, rather than concentrating on interesting ways to reduce workload, share resources, and cultivate hostile land... the species instead develops increasingly more devastating weapons.
Colin - It was written? Citation needed.
(plus, that's pretty much the plot of Stargate)
|C Ferris, 18th September 2023, 09:33
Hmm - God created man in his own image - doesn't say why though - hobby? :-)
|Rick, 18th September 2023, 10:25
Massive ego, more like.
Of the Ten Commandments, the first three are taken up with "I'm the most important god of all".
|C Ferris, 18th September 2023, 11:07
I wonder why humans in middle east started to build towns and have one big cheese in charge.
(Felicity? Marte? Find out!)
- Cheesy nightmares, Monterey Jack, That Palestine thing. (2024/02/22)
- Dude..., SimpleSeq v0.23. (2024/02/18)
- Internet trauma, Sweet almond, Mowing, Beautiful brioche. (2024/02/17)
- MIDI and the broken brain, SimpleSeq v0.22, MIDI v0.12. (2024/02/11)
- SimpleSeq v0.21, Wait WAIT?, Tree hacking, Brioche against the odds, Big parcel. (2024/02/10)
List all b.log entries
Return to the site index
PS: Don't try to be clever.
It's a simple substring match.
Last read at 01:26 on 2024/02/23.
© 2023 Rick Murray
This web page is licenced for your personal, private, non-commercial use only. No automated processing by advertising systems is permitted.
RIPA notice: No consent is given for interception of page transmission.