MIDI turns 30

Please remember the terms of your membership agreement.

Moderators: valis, garyb

User avatar
Nestor
Posts: 6684
Joined: Tue Mar 27, 2001 4:00 pm
Location: Fourth Dimension Paradise, Cloud Nine!

Re: MIDI turns 30

Post by Nestor »

I dream of the day someone would build a good OS exclusively for music making... That would help a lot, and would allow us to work very well with much smaller PC settings too. The guy that were to build such an OS would become reach in a week! :P
*MUSIC* The most Powerful Language in the world! *INDEED*
hubird

Re: MIDI turns 30

Post by hubird »

I'm quite satisfied with OSX actually, it does audio like a charm, out of the box.
In the past me too I used the midi clock of my Atari ST for two years, but then I needed the physical space.
Anyone knows more about the midid timing of OSX?
dawman
Posts: 14368
Joined: Sun Jul 24, 2005 4:00 pm
Location: PROJECT WINDOW

Re: MIDI turns 30

Post by dawman »

Well my Logic friends love it, Eric Persing even says it's the best host around, but still like the extra small boost of audio quality Pro Tools has, although scientists tell him he's can't hear and the math is always correct.
But even cats like Charlie Klouser formerly of NINails say Logic is the bomb w/ MIDI and audio.
I actually used EMagic Logic Silver for MIDI when it was PC still back in '90s but PCs/Macs made me nervous so I stayed with the CMP7 and QX-1 for a live rig, funny they still work like a champ, no disposable American or Chinese crap there.
jhulk
Posts: 935
Joined: Fri Apr 01, 2011 4:49 am

Re: MIDI turns 30

Post by jhulk »

it still is tight with the parallel interfaces its the usb interfaces that suck or the protocol hand shaking between the usb and os and the midi uart

so if its a software problem its because a pc is a do all computer and not made for just making music

the only comp that was perposely built was the atari falcon as a music comp then atari went bust and only makes games now

thats one company that if going still today would of come up with some great music comps

midi is 8bits and on the midibox sequencer v4 the midi is tight

copperlan will be better for us any way as a single cat5 can run 8 x16 midi channels with no problem
User avatar
dante
Posts: 5045
Joined: Sat Nov 24, 2001 4:00 pm
Location: Melbourne Australia
Contact:

Re: MIDI turns 30

Post by dante »

jhulk wrote:the only comp that was perposely built was the atari falcon as a music comp then atari went bust and only makes games now
No the Yamaha CX5M was built specifically for music and came several years before the Falcon (1992), although the MSX spec was more general purpose, this baby I owned (from 1985) had in built 4 Op FM synth (multitimbral) as well as MIDI ports for my DX7.

With Abdul Ibrahim's DMS 16 track MIDI sequencer timing was rock solid, and you could play game cartridges with it whilst the client was having coffee.

Never, ever crashed once, unless you removed cartridge with the power on :o :lol:
CX5M Mk II
CX5M Mk II
yamaha_cx5m2.jpg (16.84 KiB) Viewed 2303 times
DMS Sequencer
DMS Sequencer
dms01.png (2.77 KiB) Viewed 2303 times
User avatar
Nestor
Posts: 6684
Joined: Tue Mar 27, 2001 4:00 pm
Location: Fourth Dimension Paradise, Cloud Nine!

Re: MIDI turns 30

Post by Nestor »

The most stable system I ever had, curiously, was with Windows 98 SE
*MUSIC* The most Powerful Language in the world! *INDEED*
Eanna
Posts: 616
Joined: Fri Dec 02, 2011 1:57 am
Location: Ireland

Re: MIDI turns 30

Post by Eanna »

Midi issues in modern PC's is mostly down to all the multitasking that modern operating systems takes on. Processor busies itself doing other things from time to time. Not like single-tasking operating systems like the ST and Win 3.1 - processor interrupts were, well, uninterrupted!

USB too has an inherent latency (handshake is part of the protocol), but unless it's a poor or defective USB host board, that handshake should occur in constant time, and not introduce significant jitter deviation.
EDIT: I guess that when multiple USB devices have equal priority on the USB Host interface, then this could indeed be a source of a blocking wait for the single-threaded handshake negotiated by the host and the device.

The USB<-> Midi hardware too has an effect. Some Midi chips are better than others, so USB Midi Interfaces perform better than others.

And last but not least, the synths that respond to midi, some have underpowered Midi interfaces that can cause lag and constriction. Soft-Thru ports too have a cumulative latency effect in a midi device chain...

So, lots of factors. I'm no expert in the area, but all of the above cause entropy that is impossible to control.
I do wonder how Audio-rate sample clocks driving our A/D and D/A converters don't appear to suffer the same fate? Like, the Silentway plugin suite, with Midi over Audio, has no such jitter problem. Even USB Audio devices can serve wordclock, and serve stable clock for SPDIF and ADAT slaves. So, you do have to wonder, what priority is given to Midi clock threads in the OS?
EDIT: if Midi timing from an ITB clock sending to ITB softsynths displayed jitter characteristics, then either the DAW's own implementation of a Midi Clock thread, the VST Interface from the DAW to the VSTi, or the VSTi itself, could be the jitter source - typically the Audio threads can take priority I guess, interrupting the steady beat of the thread, hopefully never the GUI threads or the external interface threads.

Here's a little device that I believe could take the place of a stable clock, which the DAW could sync to over a Scope Midi In. From the excellent Mutable Instruments, it's a clock and sooo much more!:
http://mutable-instruments.net/midipal

Impressive specs.
Unlike other Mutable products, Olivier offers pre-assembled units too.

Anyone any experience with this?
Last edited by Eanna on Thu Jan 31, 2013 3:15 am, edited 1 time in total.
Not because it is easy, but because it is hard...
User avatar
dante
Posts: 5045
Joined: Sat Nov 24, 2001 4:00 pm
Location: Melbourne Australia
Contact:

Re: MIDI turns 30

Post by dante »

The big problem with MIDI is sysex. It's size is unpredictable so hard for an OS to allocate a guarantee on priority. Should it filter out sysex then prioritise ? Hmmm not so good if you need a new sound loaded in real time.

That's where LTB bit the dust.
jhulk
Posts: 935
Joined: Fri Apr 01, 2011 4:49 am

Re: MIDI turns 30

Post by jhulk »

the midipal is a great little device

has a sequencer and arp function

and its best function is

which i use it for theasr10toget vector morphing synthesis is re-direction of control cc mapping

on the ensoniqs there is only one external control which make it limited to becontrolled by joysticks or x/y pads that cant be altered to send out different cc control i have several synths with joysticks and pads

and they send out the same as the prophet vs 16/17 cc these synths are the korg wavestation sy22/33/35 z1

so i use the midipal to change 17cc to another cc that the ensoniqs respond to so that i can use any joystic or pad todo vector mixing

and dante i should of went into a little more depth

the atari falcon was an audio harddisk recorder vsti midi computer
User avatar
dante
Posts: 5045
Joined: Sat Nov 24, 2001 4:00 pm
Location: Melbourne Australia
Contact:

Re: MIDI turns 30

Post by dante »

Yeah I knew about the falcon having some audio capability. Wasn't there some extra piece of hardware available to do the DA or something ?

The Midipal sounds like a SpaceF device ... Us scope users are bit spoiled ..... :)
User avatar
Bud Weiser
Posts: 2882
Joined: Tue Sep 14, 2010 5:29 am
Location: nowhere land

Re: MIDI turns 30

Post by Bud Weiser »

dante wrote:The big problem with MIDI is sysex. It's size is unpredictable so hard for an OS to allocate a guarantee on priority. Should it filter out sysex then prioritise ? Hmmm not so good if you need a new sound loaded in real time.

That's where LTB bit the dust.
Well, lots of MIDI love here ...

Sysex is a matter of the driver as is the priority.

See the version history for the Earthvegaconnections DirectMusic MIDI Driver, version 2.9 and later:
http://www.earthvegaconnection.com/evc/ ... /order.htm

>>>
Version 2.9
Several optimizations. The driver now uses less system resources.
System exclusive and normal MIDI messages are now handled separately. MIDI messages will take priority over system exclusive, improving timing when system exclusive is used extensively.
<<<

Also, here´s the FAQ...
http://www.earthvegaconnection.com/evc/ ... se/faq.htm

When your MoBo doesn´t support a parallel port, you´d be fine w/ a PCI/PCIe card or PCM/CIA or Express card which offers a parallel port.

All the LTB is nuts more or less,- USB is BS for outgoing MIDI.
USB connected masterkeyboards are fine triggering virtual instruments though,- but that´s only incoming MIDI.

My Steinberg MIDEX-8 is retired since I buyed 2 8PortSEs each for about 30 bucks @ebay.

For the 8PortSE´s 64Bit Driver, there´s also a new MIDImatrix configuration tool.
http://www.earthvegaconnection.com/evc/ ... rder64.htm

This old 8x8 interface is the best solution for both 32 and 64Bit sytems until we get the Copperlan stuff and have all our external MIDI hardware devices retrofitted w/ Alyseum ALeX (which cost some money, time and work).

Bud
User avatar
Bud Weiser
Posts: 2882
Joined: Tue Sep 14, 2010 5:29 am
Location: nowhere land

Re: MIDI turns 30

Post by Bud Weiser »

dante wrote:Yeah I knew about the falcon having some audio capability. Wasn't there some extra piece of hardware available to do the DA or something ?
There was a special modded ATARI Falcon MX (?) manufactured by C-Lab coming bundled w/ Cubase Audio Falcon.
It had a much more stable clock and they manufactured some hardware devices (interfaces) for the Falcon MX.
The result was a very stable 16 track audio HD recorder and MIDI sequencer.
When C-LAB split w/ Lengeling/Adams and they founded Emagic, C-LAB teamed up w/ Steinberg.
Emagic never got it done w/ LOgic ATARI on a Falcon,- the C-Lab/Steinberg solution was much better.
dante wrote: The Midipal sounds like a SpaceF device ... Us scope users are bit spoiled ..... :)
I bookmarked that thing because it seems to be a nice hardware toy.
Have you checked the other devices ?
These little synths/Filters sound cool too !

Bud
Eanna
Posts: 616
Joined: Fri Dec 02, 2011 1:57 am
Location: Ireland

Re: MIDI turns 30

Post by Eanna »

I've lusted over a Shruthi for about 15 months man.
I've heard nothing but good about them since. Reviewed on Sound on Sound not so long ago too.
I still don't know why I don't own one!
Maybe because I know I don't have the skills to make one - altho now, the mutable instruments forum lists folk who sell them made-up.
Or maybe because I cannot choose a Filterboard (what a great idea! And he's added 3 in the past year).
Altho now, I could do with a decent/characterful multimode filter... Sold my Novation Nova for some analog mono synths in the last few months...

There are loads of Midi Tools in Scope and as VST, but this would sort a stable clock for your DAW straight in via Scope, as well as a simple external sequencer and arpeggiator for Midi Events from your Keyboard controller into Scope, to add capabilities to hardware synths that don't have them (like my analog synths), for polyphonic keyboard splits for performance, chord and scale duties for crappy keyboardists like myself, for cc translation as jhulk is using it, ...

Anyway, yeah, cool box - I like these kinds of things...
Not because it is easy, but because it is hard...
User avatar
dante
Posts: 5045
Joined: Sat Nov 24, 2001 4:00 pm
Location: Melbourne Australia
Contact:

Re: MIDI turns 30

Post by dante »

Bud Weiser wrote:Have you checked the other devices ? These little synths/Filters sound cool too ! Bud
I'll take the Ambika ! 8)

But - did you check out the CycliC ?? Hmmm - the left hand side looks kinda familiar (??)
Eanna
Posts: 616
Joined: Fri Dec 02, 2011 1:57 am
Location: Ireland

Re: MIDI turns 30

Post by Eanna »

Aye, it does look familiar.

They're all probably following these lines:
http://buchla.com/model_250e.html
Not because it is easy, but because it is hard...
User avatar
Bud Weiser
Posts: 2882
Joined: Tue Sep 14, 2010 5:29 am
Location: nowhere land

Re: MIDI turns 30

Post by Bud Weiser »

Eanna wrote:I've lusted over a Shruthi for about 15 months man.
I've heard nothing but good about them since. Reviewed on Sound on Sound not so long ago too.
I still don't know why I don't own one!
Interesting !

Eanna wrote: There are loads of Midi Tools in Scope and as VST,
I just came across this device visiting KvR ...
http://www.schemafactor.com/#/midimapperx/4569646310

It´s free but cannot check it out, leaving home in a few hrs for a day and need some slewep before.
Anyone using it or willing to test ?

Bud
Eanna
Posts: 616
Joined: Fri Dec 02, 2011 1:57 am
Location: Ireland

Re: MIDI turns 30

Post by Eanna »

There a set of free Midi VST utilities from a dev called "Insert Piz Here".

Here's his forum:
http://www.kvraudio.com/forum/viewforum.php?f=148

And here's his set of plugins:
http://www.kvraudio.com/forum/viewtopic.php?t=300566

Another dev has created gui wrappers over most of his midi plugins. Here's a few screenshots:
http://asseca.com/wiki/MGUI/MdaPizmidi

But!! Horror!! His main site (thepiz.org) is down!
It's only been down about a week or two now, apparently. But the domain is not in his name any more.
I really do hope this is a temporary thing. I would always have said that his VSTs were as close to a 'necessity' as you get...

His googlecode site appears to have the assembled DLLs for the plugins, and not just the source code...
There are two zips - one for the gui-less VSTs that asseca has wrapped (see above), and other gui-enabled ones (juce). Separate downloads for 32-bit and 64-bit Windows, as well as Mac OS-X too. Not sure if they represent the 'latest and greatest', or if the list is complete, but most of them are there..
http://code.google.com/p/pizmidi/

Bud: that Mapper app you posted looks useful! Trigger potentially complex stuff from Note On messages, incl. Sysex - handy.

Also, found that the well-respected VST developer TubeOhm (from Germany) is now selling pre-assembled Shruthi's and Ambika's.
See: http://www.tubeohm.com/TubeOhm/Shruthi.html
You'll also see VST controller screenshots there for controlling Shruthi. I know there are lua panels for ctrlr available for it too.

Cheers, Eanna
Not because it is easy, but because it is hard...
Cochise
Posts: 1305
Joined: Fri Nov 12, 2004 4:00 pm

Re: MIDI turns 30

Post by Cochise »

There's something I don't get about the jitter issue. Is it kind of a timeline distortion, I mean the clock signal frequency slightly varying, or midi messages misplaced on the timeline?
Eanna
Posts: 616
Joined: Fri Dec 02, 2011 1:57 am
Location: Ireland

Re: MIDI turns 30

Post by Eanna »

So, your sequencer sends midi notes on the beat. And your synth will play a note as soon as it gets the Midi Note On message.
It will always do that.. The sequencer and the synth aren't the fault. So, what's at fault?
It's the clock. To the Synth, the clock is mostly regular, but every once in a while, the next beat marker comes 'too late'. It receives the Note On message later than than it should.

The clock is like a stopwatch - say, each millisecond, a clock pulse is delivered from whatever is serving the clock, to each device that is slaving to that clock.

When your DAW is acting as the master clock, it -could- get out of time -- altho that's pretty unlikely, cause that would be plain sloppy coding, so it normally isn't the main cause of jitter. Still, the issue is there, it's a factor.
A low-priority program thread started by your DAW responsible for managing the sending of midi clock pulses or ticks will exhibit significant jitter, because when higher-priority threads want processor time, the operating system and CPU scheduling strategy will give those thread priority, causing the lower-priority threads to wait. So, when you DAW is the master clock, you would hope that the sequencer programmers would choose a high priority number for the midi clock thread, and that things like screen redraws (what won't hurt the music) would be kept lower, to stop the midi clock from being blocked for processing.
Obviously too, a DAW will set highest priority to audio playback threads. So, the more tracks are playing in your DAW session, the more likely you'll get jitter.

Indeed, it isn't solely the sequencer program's threads that are in competition with the midi clock thread - a modern multi-tasking operating system will have more than one program running at a time - probably more like 70 or 80, or more if you don't keep a tight ship. Each one of those process will have program threads of their own too....

A DAW serving master clock will also have to send Midi Clock to each Midi Port that you have configured to sync to the DAW clock. Say Scope and your hardware synth with onboard arpeggiator are sync'ed to the DAW's clock. Then you will hope that the DAW programmers gave high priority to the threads responsible for sending Clock to these two Midi Outs in a similarly-high-priority thread. Some DAWs are definitely better than other for hardware sync.

And of course, any hardware synth must be physically connected over a wire to the PC too - Scope over PCI, Hardware Synth over say a USB-Midi interface and out to the synth. These physical connections themselves have protocols for data transfer - the PCI bus spec and IRQ system for Scope, and IRQ to a USB Host Controller, onto maybe a hub or a switch, and off to the USB device's usb-in, and most likely some firmware running on a chip in the interface that translates the USB data into Midi data, and off to the Midi Out port.
That's alot of hops! And each one of those hops incurs processing time. And, some data delivery protocols aren't the best fit for the real-time requirement of Midi - USB is not necessarily a good choice, but if the device drivers are OK, and the Midi Chip is a good one (well-programmed firmware and better hardware components), should alleviate the timing issue. -Should- !
Note that the protocol choice is significant - USB has a Handshake process, TCP has the syn-ack-synack process, if you encrypted the data on the wire with SSL (secure socket layer), that in itself has an 11-stage SSL handshake... (no need to encrypt! this is just for illustration..).
Steinberg came up with the LTB data format (Linear Time Base), and Cubase and their Midex midi interfaces implement that format. This works by Cubase adding information to Midi events - events are delivered to the Midex before time, and a timestamp in the USB datastream for each Midi Event specifies when the Midex hardware should send the event to the Midi Out port. The theory is that it brings the tick event as close to the Midi Out of the Midi Interface as possible...
Also, as garyb often says, make sure you have the least amount of USB devices connected to a single IRQ interrupt. Multiple devices sharing the same IRQ is not efficient...

The other option, to take the responsibility for clock control away from the DAW altogether, is the best solution. A dedicated piece of hardware, not competing with other threads for processor time, will have a very stable clock.
The trick is to get those clock pulses out and away to your midi slaves in as timely a fashion as possible.
One of those slaves is your DAW. So, you want to keep the number of hops low, and employ the most time-respecting protocols between clock source and slave.

Hence why sending Midi Clock from a dedicated hardware device, like an Atari ST or the MidiPal or some hardware sequencer, into Scope via a Midi In, off to a Midi Splitter device in Scope sending clock to your Scope devices, and from there to Midi Sequencer Out to your DAW, is probably the shortest path with the best protocols.
Clock ticks will be sent with regularity, and delivered reliably by good protocols with the fewest number of hops.
And all (well-written) sync'ed devices will play their midi notes on time!

Best description of jitter is your own Cochise - "Timeline Distortion".
Not because it is easy, but because it is hard...
Cochise
Posts: 1305
Joined: Fri Nov 12, 2004 4:00 pm

Re: MIDI turns 30

Post by Cochise »

Interesting.

I remember another discussion about this topic some years ago, with jitter test and measures too...

Probably...
http://forums.planetz.com/viewtopic.php ... idi+jitter
Post Reply