[HN Gopher] Synth wars: The story of MIDI (2023)
___________________________________________________________________
Synth wars: The story of MIDI (2023)
Author : conanxin
Score : 120 points
Date : 2024-04-25 23:28 UTC (2 days ago)
(HTM) web link (www.musicradar.com)
(TXT) w3m dump (www.musicradar.com)
| glimshe wrote:
| MIDI should be studied by anyone interested in protocol design.
| Very few protocols had its staying power - despite not being
| perfect for every type of music, it has done its job admirably
| for close to 50 years due to its simplicity and flexibility.
| T-A wrote:
| More like 42:
|
| _MIDI was revealed to the world, on the Sequential Circuits
| stand at the NAMM show in January 1983 (precisely one year
| since Smith's proposal got the brush off)_
| detourdog wrote:
| Midi being an "artist" tool places it more as a medium like
| paint. The artist was able to use it to build complex worlds.
|
| MIDI's cousin RS-422 existed in a technical environment but
| probably enjoys as much use as MIDI but technicians have many
| protocols to choose from. the artist just needs to get it speak
| MIDI to feel in control and the artist generally has fewer
| stakeholders, which I believe helps maintain continuity of an
| implementation.
| kubielid wrote:
| > Midi being an "artist" tool places it more as a medium like
| paint.
|
| I've used MIDI "as paint".
|
| Written music using code to MIDI(1), and wrote "cross
| instrument" music, ie using my keyboard as drum machine.
|
| But these days MIDI is chiefly an archival method for me.
|
| Every time I touch my keyboard is recorded, is much smaller
| than a comparable audio recording, by design "forced
| fidelity" in the recording, the music is "searchable", and I
| am able to pipe the MIDI format through transcription
| software (which would be near impossible from an audio
| recording today).
|
| (1) http://overtone.github.io/
| detourdog wrote:
| I worked on a project for the Chicago Symphony Orchestra.
| We mad a series of physical blocks that represented musical
| samples. The block each had a 1-wire iButton on the bottom
| to identify the block and context and play the appropriate
| sample.
|
| Because it was the CSO the biggest part of the budget went
| to sample cards that played instruments up to the
| conductors standard. Each exhibit could create a
| composition and play it back like a symphony.
| kubielid wrote:
| Sounds like a really cool project. Any links to the
| exhibit?
|
| Unsure if this comment was a refutation of my own or just
| a fun cherry on top anecdote, but in case I was unclear I
| was trying to say that "I completely agree with the
| shorthand of calling midi 'paint', AND here's a cool use
| case that I think is fundamental to the technology but
| rarely held up as a benefit of said technology, namely
| archiving and assisted transcription of musical
| composition."
| epcoa wrote:
| > MIDI's cousin RS-422
|
| RS-422 is a differential electrical interface standard, while
| MIDI specifies both a current loop electrical interface and a
| high level protocol, the latter of which is probably its most
| defining characteristic today as MIDI can run over any serial
| interface. Today most commonly it runs over USB or its own
| current loop signaling, and has less commonly in the past
| been used over RS-232 or RS-422 from time to time. This is to
| say, it's a stretch that MIDI and RS-422 are cousins.
| (Standard MIDI interfaces typically seen with the 5 pin DIN
| connector are not RS-422 if that is what you're thinking)
| detourdog wrote:
| Actually it may have been I mixed up RS-485 and RS-422 the
| project I got this notion from was research in the mid
| 90's.
|
| I remember a project that I used either 422 or 485 as
| jumping off point for MIDI because I thought at the time
| that MIDI grew from the spec.
| epcoa wrote:
| It was probably RS-422, because RS-422 as a transport for
| MIDI back in the day was not uncommon as a desktop serial
| interface (like on old Macs and their lineage), but
| neither was FireWire later and now of course USB, that's
| why I wouldn't refer to them as cousins any more than USB
| and MIDI are. RS-485 is electrically similar (and in some
| aspects compatible) to RS-422 but with provisions for
| multi-point networks due to switchable drivers. The MIDI
| spec and the signaling is not related to either.
|
| https://midi.org/midi-1-0-detailed-specification
| detourdog wrote:
| Sounds like cousins to me:)
| epcoa wrote:
| Sure whatever, to be clear the RS-422 port on a Mac was a
| generic serial port not a MIDI port per se. If you were
| running a PC at the time you would often use the 9 or 25
| pin RS-232 port for the same purpose (which is the same
| port used for a modem or some mice). A number of period
| devices would have a selector switch between RS-422 and
| RS-232 for a single 8 pin mini DIN input.
|
| https://support.roland.com/hc/en-
| us/articles/201951959-PMA-5...
| detourdog wrote:
| I think I'm more focused on protocol similarities than
| the pinout.
| epcoa wrote:
| Of which there are none because RS-422 is not a protocol.
| And if you're talking about MIDI the electrical interface
| part of the spec (ie what can actually be compared to
| RS-422), not the protocol part, it is a point to point
| isolated _current_ loop system - it is hard to be much
| different than RS-422 a differential voltage multipoint
| system.
|
| That you can run the MIDI protocol over RS-422 is no more
| notable than that you can run it over smoke signals or
| semaphores. In practice almost every common short to
| medium range interconnect has been used commercially for
| MIDI at some point, including SCSI, Ethernet, bespoke
| fiber in addition to what was already said.
|
| https://www.rfc-editor.org/rfc/rfc4824.txt
| xcv123 wrote:
| They are not comparable.
|
| RS-422 is a specification at the physical/electrical
| layer.
|
| MIDI is a protocol at the logical layer.
|
| You can transmit MIDI over RS-422.
|
| However you cannot transmit RS-422 over MIDI. That makes
| no logical sense. Like saying you could transmit a
| chicken sandwich over HTTP.
| em3rgent0rdr wrote:
| MIDI is just good enough for the vast majority of musical
| needs. Any more complicated and the protocol would have been
| too hard to implement on early computers.
| chrisjj wrote:
| > MIDI should be studied by anyone interested in protocol
| design
|
| Absolutely. A shambles hopefully never repeated.
| ZFH wrote:
| I was waiting for this comment :)
|
| I'm sure nobody expected it to live this long, as the
| grumbling about its various shortcomings must've started in
| the late eighties at the latest. The curse of good enough
| strikes again ...
| chrisjj wrote:
| > the grumbling about its various shortcomings must've
| started in the late eighties at the latest.
|
| Disproof: https://www.muzines.co.uk/articles/midi-what-s-
| wrong-with-it...
| BodyCulture wrote:
| I want to study it and understand what you mean! Would you
| please like to describe the shortcomings / problems you see
| and how it could be done better? That would be so helpful to
| us! Thanks!
| chrisjj wrote:
| Well, #1: Don't put out an Implementation Chart template
| with Yes and No the wrong way around.
|
| If this doesn't sound serious, you had to be there.
| grobgambit wrote:
| Anyone who posts that is an obvious idiot that you
| shouldn't listen to about anything.
|
| Just someone who either has nothing to do with music or
| does but has an absolutely obnoxious personality that will
| point out some meaningless detail in the specification.
|
| It is just mind blowing that my 1997 Korg Prophecy and 10
| year old Waldorf Blofeld are all linked up to my brand new
| computer using the latest version of Abelton live with a
| midi interface that I don't even remember when I got it but
| its old too.
| recursive wrote:
| Probably won't be since MIDI 1.0 solved most problems good
| enough. Even MIDI 2.0 after decades is mostly just increased
| resolution. The only thing I'm aware of that's really missing
| is polyphonic aftertouch.
| duped wrote:
| > Even MIDI 2.0 after decades is mostly just increased
| resolution
|
| The biggest change is that 2.0 is duplex which allows
| devices to discover each other on the same MIDI network. No
| more in/out/thru, it's all just one USB (or ethernet, or
| wireless) connection from a device to every other device.
| It also allows property exchange, which means devices can
| exchange semantic information about their configuration and
| parameters with each other.
|
| On top of that, individual voices can now carry pitch and
| control information, while devices can exchange tuning
| information. That's a big deal for microtonal and non-
| western music.
|
| It would be hard to undersell how monumental MIDI 2.0 is as
| a change from MIDI 1.0, but somehow the MMA manages to do
| it by making it out to be "32 bit!" (which ironically, it
| isn't - you don't get 32 bits of resolution in your CCs
| with MIDI 2.0).
|
| Where MIDI 1 can more or less express the pitch and
| dynamics/timbre changes within a single piece of western
| music, MIDI 2.0 can express almost everything you do within
| a DAW these days, short of actual audio i/o.
| b3orn wrote:
| > you don't get 32 bits of resolution in your CCs with
| MIDI 2.0
|
| The standard (section 7.4.6) defines 32 bit resolution
| for CCs.
| makapuf wrote:
| MIDI as a non-proprietary, non-patented, non ad supported or
| privacy invasive protocol opened so many innovation from synth
| and others electronic musical instruments constructors or
| makers. We really need this type of candid innovation back.
| TazeTSchnitzel wrote:
| I think we are lucky it was created when it was. The temptation
| to make a much more complex and fragile protocol would have
| been harder to avoid if they weren't constrained by what could
| be cheaply and efficiently implemented on microcontrollers in
| the early 1980's.
| fyt2024 wrote:
| MIDI? We used this to build a circular LAN and play computer
| games against each other on the Atari ST
| steve1977 wrote:
| The fact that the Atari STs had MIDI built in was the main
| reason that they were so successful as computers in recording
| studios (and that they were much cheaper than Macs certainly
| helped a bit as well)
| ladzoppelin wrote:
| I think the Atari's were also known for their MIDI timing
| which I remember people talking more about in the 2000's.
| steve1977 wrote:
| Yeah they were kind of known for that, although I
| personally think this was also a bit of a myth.
|
| Even back then there were add-on interfaces like the
| Steinberg Midex which used some kind of timestamped
| buffered timing, which was probably even better. And many
| synths actually had quite bad latency anyway.
|
| But for sure, having direct access to hardware and a non-
| multitasking OS made things much more deterministic "by
| default" and that was certainly an advantage for this use
| case.
| TheOtherHobbes wrote:
| That Atari didn't do anything special. The MIDI went
| in/out of a standard interface and the interrupt was -
| IIRC - on the keyboard line. Midex was a step up, because
| the messages were pre-buffered, which was a little
| quicker. But MIDI timing was pretty bad anyway, because
| the serial line was too slow.
|
| It was tolerable if you put every synth/drum machine on
| its own separate buffered line. But when you had four or
| five devices connected to a single MIDI out on the Atari
| - ha ha ha no.
|
| The absolute best timing resolution was around 700us,
| which is fine for single notes - although that didn't
| allow time for the steam age 8-bit processor in the
| target synth to wake up and notice it was supposed to do
| something.
|
| But when you had a four note chord, it never sounded
| truly tight. And if you added some aftertouch or mod
| wheel - oh dear.
|
| So you ended up with this weird cultural thing of music
| that was quantised and on-the-grid but also had quite a
| bit of timing slop.
|
| Big-name bands often used synchronisers and tracked each
| synth line to tape in a separate pass.
|
| USB over MIDI is much better because there's basically
| zero latency and everything (usually) works as it should.
| happyweasel wrote:
| MIDI Maze :)
| fyt2024 wrote:
| Yes. Forgot the name but it was midi maze
|
| https://en.m.wikipedia.org/wiki/MIDI_Maze
| readyman wrote:
| WARNING: Do not click. Website has autoplaying videos.
| ksherlock wrote:
| "freeing for the first time the act of composition from the
| ability to play an instrument". I think the player piano,
| invented in 1896, might have something to say about that. There
| are modern recordings of piano rolls (eg, Scott Joplin) but I'm
| wondering if they were ever used like that historically (or in
| concert). You could make your own piano rolls or record a
| performance and edit out mistakes (eg, Scott Joplin)
| golergka wrote:
| To be fair, CV/Gate is still widely in use, especially in
| Eurorack world. You don't build modular synthesisers out of MIDI.
| steve1977 wrote:
| CV/Gate is in use _again_. There was a time in the 90s when you
| actually kind of had to search for MIDI /CV interfaces.
|
| A popular one was made by Doepfer - who were also a strong
| force behind the modular renaissance with their A-100.
| timc3 wrote:
| I don't think it was that hard. I remember them being around
| all the time, but maybe it was a European thing with them
| being readily available here.
| worik wrote:
| > You don't build modular synthesisers out of MIDI.
|
| Yes you can. I do
| somat wrote:
| MIDI is pretty great, I am about as musically inclined as a wet
| rag, but I recently bought a bank of midi sliders as it was the
| cheapest way to get a bunch of dials, buttons and sliders. At
| first I was looking for libraries to interface with it. But after
| looking at the spec, it turns out midi is dead simple and
| designed to be easy for hardware to parse. Super easy to read and
| generate. So I am sitting here happily hacking away building the
| dispatch interface for this thing. The icing on the cake is that
| it turns out openbsd's sndiod includes a midi transport and
| control system. Which was just one less thing to worry about.
|
| https://www.akaipro.com/midimix
|
| https://computermusicresource.com/MIDI.Commands.html
|
| http://man.openbsd.org/sndiod#MIDI_CONTROL
|
| Update: that was not a great commands introduction, here Are my
| thoughts. if bit 1 is set it is a command otherwise it is data.
| commands are split into two half bytes(nibbles?) the first 4 are
| what command it is(first bit is high so 3 bits or 8 commands) the
| second four are the channel. some commands have two following
| data bytes(low first bit remember) and some have one. The main
| exception is the system command. which is complicated
| dmix wrote:
| Novation LaunchControl XL > akai midimix IMO
|
| Novation has a web browser editor for customizing the 8 midi
| banks, using what I assume is the web USB protocol so it can be
| customized on tablets too. It's been a joy to use and set up
| custom workflows, you one for dawless, one for ableton etc.
| akx wrote:
| Web MIDI API and sysex messages more likely!
| squarefoot wrote:
| You may find also interesting the projects at ucapps.de, and on
| the commercial side, the Elgato Stream Deck which has FOSS
| support.
|
| http://www.ucapps.de/
|
| https://www.elgato.com/us/en/p/stream-deck-mini
|
| https://github.com/streamdeck-linux-gui/streamdeck-linux-gui
| ajxs wrote:
| Very cool article! I had no idea that the idea to use a 5-pin DIN
| connector for MIDI came from the Japanese HiFi world. One _very_
| minor nitpick: 'Running Status' actually refers to a feature in
| the MIDI specification where multiple sequential messages of the
| same type can omit the 'status byte'[0]. Stupidly, I didn't know
| about this feature in the specification when I was writing the
| MIDI handling routine for a synth[1]. This introduced a bug that
| took me _ages_ to squash. I was struggling to figure out why
| everything worked fine when playing notes from my DAW, but notes
| were getting stuck when directly connected to a synth.
|
| 0: https://midi.teragonaudio.com/tech/midispec/run.htm
|
| 1: https://github.com/ajxs/yamaha_dx97
| memalign wrote:
| In case anybody is in the mood to browse and listen to a MIDI
| collection in their web browser:
|
| https://chiptune.app/
| everyone wrote:
| "Imagine a DAW or plugin that only runs on a certain make and
| model of computer." - Logic.
| worik wrote:
| Has anybody any use for, or used, MIDI 2?
| morganw wrote:
| > Korg noted that the use of jack plugs to transmit the required
| signals would cause noise in the system.
|
| No more detail on this, but it was huge for MIDI not to end up
| "becoming a nightmare of endless fine-tuning better suited to
| electronics engineers than musicians" like CV/gate was.
|
| https://midi.org/midi-history-chapter-6-midi-begins-1981-198...
| spells it out in more detail:
|
| Mieda-san from Korg responds on behalf of the Japanese companies
| to the meetings at the 1981 Gakki Fair with Sequential and
| Oberheim and confirms the discussion that were they had at the
| Gakki Fair.
|
| * 19.2kbps is too slow
|
| * 1/4" Jacks will have ground loop problems
|
| * There is no concept of synchronization, clock or the ability to
| start and stop sequences
|
| ---
|
| Ground loops are the bane of musician's lives and sometimes the
| mitigation is the _end_ of their lives
|
| https://en.wikipedia.org/wiki/Ground_lift#Safety
___________________________________________________________________
(page generated 2024-04-28 23:00 UTC)