A number of people have posted a similar request, namely to increase the MIDI resolution of Band-in-a-Box, from 120 PPQ to something higher (like 960 PPQ).
This post is to let people know that we won't be able to implement that feature, but we also don't think it would be needed, or even detectable on listening.
So here's an explanation of why we're not implemeting that, and also why we don't think it would be needed or even detectable.
First of all, let me say that if we were starting Band-in-a-Box "from scratch", then yes of course we'd make the timing resolution a huge number, there'd be no reason not to. But with an existing application, and all kinds of file formats, then there are a lot of "reasons not to".
OK, here is the explanation:
Band-in-a-Box's current timing resolution is 120 PPQ. This is 4 milliseconds (ms) at a tempo of 120. This is great timing resolution, and in our tests, noone can hear differences below that.
Q. How good is 4ms timing per note?
A. It's great, and there are other areas of your PC, and MIDI setup that are way worse than that.
- sound travels 1 foot per ms. So if you are playing live with a person 2 feet away, you are already experiencing a 4ms latency (2ms to get to you, and 2ms getting back to you). Would you notice a latency there?
- Computer's have a timing accuracy of 1ms "SOME OF THE TIME". Music program ask for timing interrupts every 1ms, but in practice, Windows priorities things, and sometimes you don't get a timing interreupt for up to 30ms (if a video driver is updating screen for example, you are shut out). So increasing timing resolution better than 4ms would have no effect on that, you would still hear periods where timing resolution would be much less.
- MIDI standard itself takes 1 ms to transmit each note. SO if you're using a hardware MIDI module for playback, you're currently not seeing anything close to 4ms timing accuracy, you're getting only 35 ms accuracy (at times in the song). For example, at the begninning of a bar, there may be 5 note offs, 10 note ons, and that's 15ms delay before the last note is received. Then it takes a typical MIDI module up to 20ms to get those notes played - so that's a 35ms delay, which is far worse than BB's 4ms timing.
*** If you are using a MIDI Hardware module, and you are bothered by timing, you should switch to a software synth - there is no timing issue there ***
(Note: Please note that I am referring to timing accuracy as the song plays, the bad thing about hardware MIDI is that the timing CHANGES as the song is played. Software synths have a latency, but it is FIXED. By analogy, satellite radio has a fixed latency, but the latency (timing) doesn't change as the song plays, so it sounds perfect,
Q. OK, I understand the above, but, still, why don't you ignore all that, and increase resolution anyway, if only to please customers who would like it done even if they can't detect a difference.
A. There a bunch of reasons why it would make Band-in-a-Box a worse program.
- format of styles and songs would need to change. This means that any styles or songs made in the new version wouldn't play on older Band-in-a-Box's. We have carefully preserved this song and style format, so that customers get forward and backward compatibility.
- None of the existing 2,000 or so styles that we have already made would sound any different, since they'd be the old resolution. Noone would want to pay to get higher res versions of styles, because they couldn't hear any difference anyway.
- No existing songs are going to sound any different (since they are still at the old resolution)
- hundreds (possibly thousands) of routines that have worked for years in BIAB would need to be rewritten, leading to new bugs in old code that worked fine.
- it would take a huge amount of time, instead of adding other features that people would notice.
One option that we could add easily, is a setting for export of MIDI files, to export them at, for example 960 PPQ instead of 120 PPQ. That would allow people who work at that res in other DAWS to at least get the files transferred at the same PPQ. Of course BB would still be working at 120PPQ internally.
I hope that this explains our position.
PG Music Inc.