MIDI Web input
Does that mean we can now programme the web directly using C# ?
The last new version of Firefox for 2022 is out on Mozilla's FTP server, with a more widespread release to follow soon. Mozilla has released Firefox version 108. Amusingly, for the first time since Mozilla sped up its release cycle in 2015 (and presumably for the last time, too) the current version numbers for Firefox and …
I never had a problem seeing it as "C-sharp", even though- strictly speaking- the hash (#) and sharp (♯) are different symbols and it should be written C♯.
But who's *really* going to bother figuring out how to type ♯ on their keyboard?
Also, the main problem with a MIDI keyboard is that you can only type the letters A to G. Somewhat limiting, if you ask me.
Then again, you also have ♯ immediately following those if you get creative, most likely for implied expletives. No idea what "♭" could be used for though.
I'm guessing that "C-hash" looked like a hash-up, but C♯ was too difficult to type (without that MIDI input device).
Either way, it's an attempt to appropriate the linearly horizontal and vertical elements of the ++ part of C++ by superimposing one over the over but displaced a little bit.
You could do that with CSS, but life's too short.
-A.
This MIDI thing must have been possible for some time.
A couple of years ago, my daughter's school wanted her to compose a tune using some cloud-based software. We hooked up her laptop to the MIDI USB port on our Yamaha DGX Piano, because it's nicer to use a proper piano keyboard than clicking with a mouse. Whilst this does sort of work, the latency is horrible and website response times are inconsistent. Maybe it would be better on a Fibre connection than home ADSL. But really for anything where accurate timing is important, it's always going to be better to run the software locally than in the cloud.
Chrome-based browsers have had an option to turn it off for a long time now, but I've no idea if MIDI works otherwise. It's something that I check is set to "Block" when I upgrade Vivaldi. Also I block access to my Bluetooth devices. Why would I want that?
This is a perfect example of a feature that's fine for the browser makers to leave disabled by default. The small group of people that ever plug a keyboard in to jam online can toggle it on in seconds.
The rest of the world never even need to know it's there.
Musescore? Eldest used that doing music GCSE some years ago and we tried - oh we tried - to get both our Kawai electric piano and a small Alesis "midi controller" to talk nicely both directly via USB Midi and indirectly via a USB plug-in interface with honest to goodness DIN plugs, but in the end he got quite proficient with the keyboard "keyboard" - rather reminded me of some software I had on the Spectrum where key A was C, S was D, D was E, F was F, W was C♯, E was D♯ etc.
Couldn't even get MIDI output working properly so had to make do with the computer's software synth which on OpenSuse is Timidity I think? Might not have been up to the piano samples in the Kawai, but several leaps on from the Spectrum!
I don't think the school uses Musescore any more because of some problem with licencing - maybe the fees increased or something. I'll have to find out what they do use out of interest.
M.
Just updated to Version 108 after visiting Help | About Firefox.
Shift+Esc shows the new Process Monitor tab. Looks like this will be most useful when dragged to a new monitor - so you can use Firefox and monitor the brief CPU spikes at the same time.
But I'm failing to spot any improvements to the bookmarks toolbar shown on new tabs.
-mobailey
[Author here]
> But I'm failing to spot any improvements to the bookmarks toolbar shown on new tabs.
AIUI, the improvement is when -- or if -- it appears. It's the same toolbar, the question is whether it appears or it's hidden.
Chrome gets this right. When I open a new window *or* a new tab, I get the bookmarks bar.
In Firefox/Waterfox, it's inconsistent. For example, if my browser is set to display my homepage (APOD) in a new window, Firefox considered that to be _not blank_ and I didn't get a bookmarks bar.
Which is one reason I stuck with Waterfox Classic for ages, as an interacting set of 4 old XUL addons still worked: vertical tabs + vertical bookmarks + flattened bookmarks + combined sidebar.
Result: no horizontal tab bar _or_ bookmarks bar, 1 integrated sidebar, with tabs at the top and bookmarks at the bottom. Perfect.
Can't be done since they ripped XUL out. :-(
> I suppose you could set the bookmarks bar to be on all the time.
It's a waste of screen space. That annoys me.
I have one machine with 2 x 27" screens. I found one must be in portrait or I get neck ache from all the head movement needed.
More smaller screens works better than one big one, for me, because I can do topic isolation on different screens, but see what's going on all at once. One for chat apps, one for browsers, one for email, for example. To achieve that, I use laptops' built-in screens, and those are typically quite small. Small screens, whether hiDPI or not, means less space, and that means I do not want egregious wastes of space, such as GNOME's pixel-profligate panels, or bookmarks when I'm already reading something. I want every square cm of screen space to be earning its keep for something useful to me.
re: "I suppose you could set the bookmarks bar to be on all the time."
I did this for many years, until recently.
But I regularly need to screenshare / send browser screenshots for my work. It got a bit unprofessional to always include my bookmark icons for Amazon, Just Eat, Spotify, Facebook, Register... (and worse).
ALSO: for security purposes. To avoid using the bookmark toolbar to switch a tab between banking and a less-reputable site. I'm now forced to close the tab when finished with it, and open a new one.
Hiding the bookmark toolbar, except for new tabs, is a good compromise that helps with both of these problems.
-mobailey
Anyone want to take a nickel bet that they override my new tab settings _AGAIN_ when this build goes live?
My strong preference for my new tabs is NOTHING. No homepage, no pocket, no ads, no garbage, no pretty picture loaded off a cloud server that sets tracking cookies. Just a screen full of blank space waiting for me to start typing.
As it turns out, there are at least three(!) other places to get to my bookmarks. I'm happy using one of them so I don't have to play whack a mole with whatever Edge/Chrome/Firefox has decided to shovel in front of my face on any given day.
Happy for it to be there for those that like it, but don't make me hack the about:config (again) after a random update to unbork something I didn't ask for.
> Prepare to be aghast at how much RAM it takes to render a single web page nowawadays.
Particularly aghast that previous pages seem to remain in memory, even if their tabs are all closed or another Bookmark has been loaded on that tab. Fortunately you can apparently close them using the Task Manager... Will need to experiment a little more with that.
Also, this is called "Process Manager" when it is brought up. The old "about:performance" is still there with something called "Energy Impact" - I guess somebody's attempt at mashing metrics into one item.
The only fields are "Name" (includes URL and tab name), Memory (!!! I have an entry labeled "GPU (42044)" which is listed at 5GB and uses 10-20% processor.). There appears to be a button on the far right labeled "Actions" which does nothing for me.
I'll always want more metrics. Please keep them coming.
I had trouble a few years ago as something using directly connected MIDI missed a mere few centiseconds (was a weird buffer issue) and it was noticed. I can't imagine the sort of latency a browser and connection (no matter what sort, you're up against laws of reality if pulling data from potentially the other side of the planet) would introduce.
But, then, people seem to accept dreadful quality videos where areas of similar colour (especially dark colours) end up as dancing blotches of the same colour, so maybe they'll accept horrible out of time music.... just call it post-dubstep or something, it'll be okay...
While your concerns over latency and synchronization are absolutely valid, they are often not insoluble for many of the cases people would want to access a local keyboard through the browser. As an example the time sync will kill you if you tried to have 3-4 performers try to remote in from different places and do a live session.
However, cases like allowing a guitar hero style game can be handled by calculating the local delay so the player won't notice, and keyboard lesson apps can keep the time in sync locally to allow easy key by key lessons. So there is some valuable stuff you can do. It's just not going to result in a web based cloud DAW uniting every musician on the planet anytime soon. That said it would be straightforward to enable collaboration that isn't necessarily in real time, where people could lay down a track and send it to someone who could then add on their own layers till the whole group had chimed in. Though the first cut for the drummer and base player might be boring AF if they lead off :)
This post has been deleted by its author
This post has been deleted by its author
"In principle this will allow sequencer apps to be implemented in Javascript."
In principle maybe, but I can't imagine JavaScript running in a browser is going to have the real time capabilities required for anything serious. That's why I use an old hardware sequencer, as dealing with latency issues on desktop operating systems is a nightmare.
Because that sticks in my memory as the heart of most of the MIDI issues I had to fight (admittedly back when MIDI meant DIN connectors, not USB).
Unless it's dropping events, the sequencer should still get an accurate relative time if the source hardware is generating it right?
A common problem I see with hardware MIDI setups is when people daisy chain devices through their Thru ports. It's quite a slow serial protocol, so each device in the chain gets progressively out of sync. A decent MIDI Thru box with like those from Kenton solves that problem.
I've noticed that some manufacturers - Ensoniq for example - were quite reluctant to include Thru ports on their instruments to discourage daisy chaining.
Some people here don't want or get the idea, but it is entirely possible to write useful applications in JavaScript which are deployed over the web but which run entirely within the browser.
Make that leap and it's entirely logical that client-side JavaScript should be able to control MIDI devices. How else would you web-deploy a sequencer? (I dare say that it's possible somehow, and that someone has already done it.)
Client-side JavaScript apps are a thing. Sending back MIDI "telemetry" shouldn't be be. Could we concentrate on that?
-A.
I have an ancient, but great sounding Roland SC-88 hooked up over MIDI... Mostly for old dosbos shenanigans. I question how the page or browser would know how to select what device/channel to send the MIDI signal to. The assignment of channel seems to be somewhat random and manually modifying dosbox.conf to point it at relevant destination is necessary.
That said, I remember old school internet being able to ref a midi file in your HTML; and then your local midi mapper would pick that up to play it. (Invoking some memories of horrible old geocities page nostalgia).
As noted above, just because you can do a thing...
io_uring
is getting more capable, and PREEMPT_RT is going mainstream