HD Midi

Anything about hardware musical instruments.
Post Reply New Topic
RELATED
PRODUCTS

Post

AdmiralQuality wrote:
S0lo wrote:
AdmiralQuality wrote:
S0lo wrote: I'm really tiered of the stepping I hear (like on filter sweeps) on almost every digital or VA synth out there just because of MIDI. They try to compensate by some delay/lag but still thats not like the instantaneous continuous real analog sweeps.
Sure it is. Try Poly-Ana. Go nuts on the pitch bend, mod wheel or filter cutoff controls. Is it smooth? Yes. Is it fast and responsive? Faster than your fingers, yes.

There's just lots of products that do a bad job of this. Including lots of hardware. (I hear even the Moog Voyager suffers from zipper noise from it's wheels!)
I own PolyAna, just tried it again. It clearly steps when I MIDI learn my controller to cutoff. I tried it in both FLstudio and Reaper. Mouse resolution is obviously better but it's nothing like a real analog knob.

All aside, I like Poly-Ana, one of my favorite.
Hmmm, what kind of controller do you have?

There's another dimension aside from resolution, and that's update rate. If your controller sends updates that are far enough apart in time then maybe you might hear some stepping.

Can you record some and send it to me as a .mid file? I'd like to check it out. Thanks! ( aq AT admiralquality.com )
Sure not a problem, I will send that to you along with the audio file. I'm using an Axiom 49, Sweeping the cutoff very slowly will clearly reveal the stepping. I doubt you'll be able to do some thing about it. It will affect any softsynth using any controller that uses 7bit resolution, and most of them do. The only other way around this seams to be using NRPN RPN which I don't dare going through at the time, not very friendly to setup from what I've seen.

Post

The stepping you describe is not really "stepping" that is commonly known from synths. Yes the value has 128 levels it must reside on, and you could perhaps call those steps, i (and rest of the world) just call them levels. But if you "use" the controls it's not stepping through them but sliding smoothly. It has values between the 128, even though it must stop at the actual 128 values. This is getting into hairsplitting territory..
www.mkdr.net

MophoEd - the BEST DSI Mopho Editor VSTi

Post

Yep. I took a look at the MIDI you sent S0lo and you're right. While I'm sure you're smoothly moving the knob or slider, discreet steps, one value apart, are coming through at a slow rate. When mapped to a knob with a wide frequency range like filter cutoff (which goes from deep subsonic right up to the highest possible frequency) 128 isn't nearly enough values to not notice a large jump between contiguous steps. While the instrument's smoothing feature works well to prevent staircase/zipper noise on rapid movements, it can't do much at very slow rates, which slow movement through 128 steps will always produce.

I need to look into implementing 14 bit controllers. Unfortunately I've never had a controller that sends them. Any recommendations?

Post

Thanks allot AdmiralQuality,
AdmiralQuality wrote:
I need to look into implementing 14 bit controllers. Unfortunately I've never had a controller that sends them. Any recommendations?
Moog synths (like their slim phatty) send 14bit MIDI. I read also that Numark and Novation has some 14bit controller but I didn't test those, might not be all the knobs or some thing. Some knobs in M-Audio Venom works on 14bit MIDI internally, it's a MIDI controller too so I suppose it can send 14bit MIDI but I'm not sure.

If I'm not mistaken, the key here is to be able to send two 7bit controllers using ONE knob. The problem is I think you need a DAW also that supports 14bit MIDI.

Post

AdmiralQuality wrote: I need to look into implementing 14 bit controllers. Unfortunately I've never had a controller that sends them. Any recommendations?
Better be careful asking those kinds of questions here, AdmiralQuality. People seem to be really defensive and hyper sensitive on the subject of 14 bit controllers. Be prepared to be told to "calm down" or get accused of "not doing your homework" for asking questions like that. At least that's been my experience.
"The Juno 60 was often incorrectly referred to as a synth. It is, in fact, a chorus unit with a synth attached." -PAK

Post

S0lo wrote:Thanks allot AdmiralQuality,
AdmiralQuality wrote:

The problem here is I think you need a DAW also that supports 14bit MIDI.
I don't think so. MIDI is passed to plugins reasonably unmolested. (With the exception of long sysex messages. And this is for VST 2.4 plugins only, VST 3.x is totally f**ked up in how it handles MIDI and you're lucky if anything works.)

But if I understand correctly, 14 bit controller messages are just two regular messages in a row, so I think a 2.4 host can't mess it up on you.

Unfortunately, like poly-pressure, it's rare to find controllers that send it. It was a major flaw in the original MIDI spec. All manufacturers already knew 7 bits weren't nearly enough to encode pots. They should have made them 14 bit, like pitch bend. (Yrs, I understand that would break the common message size, but it could have been done with 2 messages.)

Post

afreshcupofjoe wrote:
AdmiralQuality wrote: I need to look into implementing 14 bit controllers. Unfortunately I've never had a controller that sends them. Any recommendations?
Better be careful asking those kinds of questions here, AdmiralQuality. People seem to be really defensive and hyper sensitive on the subject of 14 bit controllers. Be prepared to be told to "calm down" or get accused of "not doing your homework" for asking questions like that. At least that's been my experience.
It wouldn't be the stupidest thing I've been piled on for here. ;)

Post

afreshcupofjoe wrote:
AdmiralQuality wrote: I need to look into implementing 14 bit controllers. Unfortunately I've never had a controller that sends them. Any recommendations?
Better be careful asking those kinds of questions here, AdmiralQuality. People seem to be really defensive and hyper sensitive on the subject of 14 bit controllers. Be prepared to be told to "calm down" or get accused of "not doing your homework" for asking questions like that. At least that's been my experience.
Infact I think it's very liberal and open minded of them. Shows that they really want to improve instead of tricking us into thinking they are at the top :)

Post

mkdr wrote:The stepping you describe is not really "stepping" that is commonly known from synths. Yes the value has 128 levels it must reside on, and you could perhaps call those steps, i (and rest of the world) just call them levels.
No problem, My fault. call them levels. Still can't do smooth and stop at the middle of two values exactly were your hand stopped, as you said latter.
mkdr wrote:But if you "use" the controls it's not stepping through them but sliding smoothly. It has values between the 128, even though it must stop at the actual 128 values. This is getting into hairsplitting territory..
Yup, This is laging (or delay) feature as mentioned earlier, it needs a few milliseconds to pass through the values in between. But will NOT follow as fast as your hand when you twist the knob back and forth very fast, try it and you will feel the lag. Also when you twist very slowly, it will smoothly move and stop, move and stop... which is obviously not what your hand is doing!!.

It also depends on the synth, I've seen synths that do it and synths that don't. Some DAWs also can do it for you to any synth (FLstudio has it). But I admit it's good, better than the levels (if you don't want them).

Post

S0lo wrote:Thanks allot AdmiralQuality,
AdmiralQuality wrote: The problem here is I think you need a DAW also that supports 14bit MIDI.
I don't think so. MIDI is passed to plugins reasonably unmolested.

But if I understand correctly, 14 bit controller messages are just two regular messages in a row, so I think a 2.4 host can't mess it up on you.
Yes, they are two messages in a row. And yes the DAW itself is unlikely to mess it up. But whatever you are controlling ( a VSTi for instance), hosted by the DAW, needs to support interpreting these as MSB and LSB of a 14-bit value. Which many do not (including some big names - you would think Kontakt for example would support 14-bit controller changes? Nope.)

Post

Nantonos wrote:
S0lo wrote:Thanks allot AdmiralQuality,
AdmiralQuality wrote: The problem here is I think you need a DAW also that supports 14bit MIDI.
I don't think so. MIDI is passed to plugins reasonably unmolested.

But if I understand correctly, 14 bit controller messages are just two regular messages in a row, so I think a 2.4 host can't mess it up on you.
Yes, they are two messages in a row. And yes the DAW itself is unlikely to mess it up. But whatever you are controlling ( a VSTi for instance), hosted by the DAW, needs to support interpreting these as MSB and LSB of a 14-bit value. Which many do not (including some big names - you would think Kontakt for example would support 14-bit controller changes? Nope.)
Right, which is why THIS "big name" ;) would like to add it someday. Showing the big boys up is part of our business plan.

Maybe I can just get testers to send me some 14-bit controller streams. That would probably be enough to implement it.

If anybody has a 14 bit MIDI controller and would like to record some .mid files of knob movement, send them my way please. aq AT admiralquality.com We might get that feature in sooner rather than later!

Post

justin3am wrote:The problem isn't MIDI.
I will disagree with that. The problem is MIDI, which made some trade-offs that were questionable but understandable back then; bolted on an extension which was poorly implemented, and now (to get back to the original post) is having a second run at the problem with HD MIDI, which has been proceeding out of the public eye for over four years with no published specs.

But yes, if the existing MIDI spec was better implemented that would be at least some improvement.
justin3am wrote: The problem is hardware and cost.
NRPNs and other 14bit messages are great for transmitting high resolution messages from one application to another but controllers use 8-10bit ADCs to read analog pots and faders and 2 of those bits are usually eaten up by noise.
Yes, although that depends on how it is designed. Having clean analog grounds and a bit of supply filtering helps a lot.

But the main problem is really chicken-and-egg. Most VSTi and most hardware are 7-bit only (except for pitchbend, and even then some implementations throw away the LSB). So sampling a 14-bit value adds hardware expense that most users won't be able to make use of; thus the bean counters don't want the engineers to get too far ahead of where the industry is.
justin3am wrote: To get 14bit resolution form a pot or a fader you would need a 16bit ADC for every control element
No, not every one. You can easily multiplex them. As an example, the controller I am building uses a 16-bit ADC with up to four inputs (giving two 16 bits differential outputs, or four 15-bit single-ended outputs). Since this is outboard from the microcontroller with a separate power supply, I am getting +- 1LSB on that so 14 bits of genuine resolution.

And you can economise by using 12-bit ADCs (still 32 times better than a 7-bit value). Its common now to find these built into cheap microcontrollers, with 8, 12 or 16-way multiplexing.
justin3am wrote: I would be willing to bet that very few would pay the price for a controller that used higher resolution ADCs. I may be wrong though.
I think your price estimates are off.

As an example, the Teensy 3.0 ARM-based controller I am using for my current project has a 16-bit on-board ADC multiplexed to 12 analog inputs. Even with minimal care and attention and with a subomptimal environment (solderless breadboard or veroboard) you can get 13-14 effective bits. It also has USB-midi built in. Total cost (complete ready-to-use microcontroller board) 19 US dollars.

It also has I2C so for example four outboard 16-bit ADCs to give a further 16 channels can easily be added for modest cost (the chips are about 4 USD each).

What is holding us up is software support. I have made sure that (for future expandability) I'm getting clean 14-bit values from the controllers. But for compatibility with existing VSTi I'm currently sending out only 7-bit values until implementations improve. When they do, updating my controller to outpit 14-bits in two messages, or to use HD MIDI once there is an actual spec available, will be trivial.

Post

AdmiralQuality wrote: Right, which is why THIS "big name" ;) would like to add it someday. Showing the big boys up is part of our business plan.

Maybe I can just get testers to send me some 14-bit controller streams. That would probably be enough to implement it.
Easier to do if there ia a 14-bit capable instrument to play, to make them. Chicken and egg, again.

If anybody has a 14 bit MIDI controller and would like to record some .mid files of knob movement, send them my way please. aq AT admiralquality.com We might get that feature in sooner rather than later![/quote]

I may well be able to do that over the holiday period. I can log 14-bit data while sending 7-bit data for performance, then convert the 14-bit log to an equivalent MIDI stream.

Does that mean a 14-bit of HD-MIDI enabled verion of, say, Poly-Ana is being planned?

Post

Nantonos wrote:
AdmiralQuality wrote: Right, which is why THIS "big name" ;) would like to add it someday. Showing the big boys up is part of our business plan.

Maybe I can just get testers to send me some 14-bit controller streams. That would probably be enough to implement it.
Easier to do if there ia a 14-bit capable instrument to play, to make them. Chicken and egg, again.
You don't need an instrument. Just record the MIDI from a 14 bit controller and send it to me. You don't need to hear it (you can verify it in an event editor if you really need to see what's there).

I could probably implement this blind and have a good chance of getting it right. But then I did the same thing with Polyphonic Pressure and everyone told me it was working fine. Wasn't until I picked up an Ensoniq EPS to finally test it myself that I found out there was a big bug! Can't believe people were telling me it was fine. So, I've learned to always test with real data and not trust the tester/users.

But I can do like I did with multichannel MIDI guitar input, and just work from .mid files people send me. No problems then.
If anybody has a 14 bit MIDI controller and would like to record some .mid files of knob movement, send them my way please. aq AT admiralquality.com We might get that feature in sooner rather than later!
I may well be able to do that over the holiday period. I can log 14-bit data while sending 7-bit data for performance, then convert the 14-bit log to an equivalent MIDI stream.

Does that mean a 14-bit of HD-MIDI enabled verion of, say, Poly-Ana is being planned?
Absolutely. I want to implement it. I think what stopped me before was (if I remember correctly, it's been a while since I looked at the spec) that it reduced the possible number of controllers. But we've got another improvement coming to Poly-Ana which will allow CCs to be learned with Channel as well (as opposed to channel agnostic, which they are now).

And sorry, not sure I understand what you mean by "log 14 bit data". I'm hoping for MIDI exactly as whatever-controller sends it and the host records it. If you're mashing the data manually, don't bother. I could fake data myself if I wanted to. But I need real-world output for valid testing.

Thanks!

Post

A few other requests to anybody who'd like to send me some 14-bit MIDI controller recorded in .mid files.

- Let me know what controller hardware it is.

- Let me know what host you recorded it in.

- And please do complete knob movement, from 0% to 100% and back, several times. Both fast and slow. The number of knobs you do doesn't matter much, but mixing up a few different ones and particularly moving two at a time would be very helpful.

Thanks! Email to aq AT admiralquality.com

Post Reply

Return to “Hardware (Instruments and Effects)”