pianodano
Max Output Level: -67 dBFS
- Total Posts : 1160
- Joined: 2004/01/11 18:54:38
- Location: Va Beach Virginia
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/12 22:09:14
(permalink)
ORIGINAL: brundlefly It remains to be seen whether TruePianos superior performance is inherent to VSTi technology or just that they've got a better timing algorithm. If someone can turn me onto a freeware, downloadable VSTi somewhere, even a short-term demo like the TruePianos installation I'm using, I'll test it. You know things are bad when you start quoting yoursself. Oh well. This is just getting more and more interestinger... Long story short: downloaded and installed Jamstix 2 Demo. I get some noise out of it, but not drum sounds, and it runs my CPU into the ground, so I gave up on it. Instead, I re-ran the rendering timing test with the Roland Groove Synth, another DXi bundled with Sonar. As before, I used its Claves patch which has a really nice sharp attack and was easily picked up by AudioSnap. I got yet another behavior pattern, though similar to the TTS-1: The first transient was 136 samples late; the second was 140 late, the third was 144 late, etc. So the interval was consistent, but was 4 samples too long. This went on until at the 25th event, the rendered transient was 232 samples late. But then on the next event, the interval dropped form 2944 to 2816, so the transient was only 108 samples late - i.e. better than where I started. Huh? So, on a hunch, I scrolled ahead to find the next place where the interval dropped from 2944 to 2816. I found it, and what do you know, it's exactly 32 events later. So I went out another 32 events, and found the same thing: one transient 232 samples late, and the next one back to 108 samples late. Now, as everyone knows, 32, being a power of 2 is one of the magic numbers in computing. When things happen at intervals of exactly a power of 2, you want to take a look at your programming. I once found a bug in an early Olympus digital camera driver that was creating a "hot" pixel at 64-pixel intervals. I reported it, and a couple of weeks later a new driver came out, and the hot pixels were gone. But, 32 events also happen to be exactly half a measure in my test setup, so...? Here you go.RealGUitar here : http://www.musiclab.com/downloads/trial/ Unfortunately it doesn't look like it has but 1 guitar in the demo (no stereo guitar  )
post edited by pianodano - 2007/10/12 22:22:33
Best, Danny Core I7, win XP pro, 3 gig ram, 3 drives- Lynx Aurora firewire- Roll around 27 inch monitor, 42 inch console monitor- Motif xs controller - Networked P4's and FX Teleport for samples- Muse Receptor VIA Uniwire for samples and plugs- UAD QUAD Neve - UAD 1- Sonar X1 but favor 8.5 GUI - Toft ATB 32 - Vintage hardware - Tascam MS-16 synched via Timeline Microlynx -Toft ATB32 console
|
dstrenz
Max Output Level: -69 dBFS
- Total Posts : 1067
- Joined: 2005/12/10 09:59:06
- Location: Rochester, NY
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/12 22:38:02
(permalink)
ORIGINAL: brundlefly The range of accuracy is about 4 ticks. Very surprising.. This is virtually identical what I reported earlier: max error from expected time of about 1.5 ms = 3 ticks at 960PPQ, 120BPM. In my experience, MIDI sync should put the events right on the same tick. Ouch, you're right. I was calculating milliseconds wrong. Sorry about that.
|
dstrenz
Max Output Level: -69 dBFS
- Total Posts : 1067
- Joined: 2005/12/10 09:59:06
- Location: Rochester, NY
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/12 22:47:05
(permalink)
ORIGINAL: brundlefly I did exactly this to record Two-Dude Defense. A couple of tracks of drums, and a bar of horn played through the TTS-1, with piano played through TruePianos. I haven't analyzed it to the sample like we are here, but it sounded fine, both in real-time and rendered: http://www.soundclick.com/bands/songInfo.cfm?bandID=757783&songID=5856598 Admittedly I wasn't putting that much load on the TTS-1. A bigger problem with the TTS-1 in my opinion is that it sounds little better than a cheap soundcard. It's handy for ginning up a quick arrangement, though. Maybe it's improved since the last time I last tried it. I mentioned its odd timing here a year or two ago and recall that ModBod confirmed it. Knowing its history, it still wouldn't be my first choice to test midi timing though.
|
Noel Borthwick [Cakewalk]
Cakewalk Staff
- Total Posts : 6475
- Joined: 2003/11/03 17:22:50
- Location: Boston, MA, USA
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/12 22:54:53
(permalink)
Maybe they use a random number generator to humanize the output :-) Only half joking.
|
brundlefly
Max Output Level: 0 dBFS
- Total Posts : 14250
- Joined: 2007/09/14 14:57:59
- Location: Manitou Spgs, Colorado
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/12 23:37:39
(permalink)
Here you go.RealGUitar here : http://www.musiclab.com/downloads/trial/ Unfortunately it doesn't look like it has but 1 guitar in the demo (no stereo guitar) Why am I not surprised that the VSTi from the piano guys is spot-on, and the VSTi from the guitar guys is all over the dang place! Tested the RealGuitar. Took a while, because they definitely have some sort of randomizing algorithm that makes each attack a little different, which confused AudioSnap a little bit. It sounded funky on playback, too. So I manually picked out the sample time of each transient as I've done before. But even so, the interval between transients was all over the place, pretty much at random, ranging from right on the expected value of 2940, to 2802 (138 samples = 3.1ms too short) to 3092 (152 samples = 3.4ms too long). I should mention that these two extremes were adjacent intervals because things were cranking along at about 185 ±7 samples late (compared to the MIDI note-on time) when suddenly a real clam came along 330 samples late, making the first interval too long, and the next too short. In general, though, the variation was pretty evenly distributed across all possible values with no perceptable pattern as found in the DXis I tested. So the bottom line in my view is that VSTis are not immune to this problem, but the good peformance of TruePianos shows that the problem most likely lies with the soft synths themselves, and not with Sonar, or the VSTi technology in general. Until I see a counter-example, however, the DXi technology is still suspect. Dave
post edited by brundlefly - 2007/10/12 23:50:42
|
brundlefly
Max Output Level: 0 dBFS
- Total Posts : 14250
- Joined: 2007/09/14 14:57:59
- Location: Manitou Spgs, Colorado
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 00:20:27
(permalink)
One final thought on this before I call it a day: The only "issue" with the timing of the TruePianos rendering was that all the rendered notes were a consistent 300 samples behind the MIDI event. In thinking about it, this makes sense, as my buffer latency is 300 samples which means that any audio being played back will be 300 samples late, too. One way to do a quick check of how things are synched up which I have used on occasion is to click the wave inversion button of the rendered wave, and play it back along with the MIDI-driven soft synth (this works well for checking manual latency offsets, too) If the timing is good, the inversion of the rendered wave should cancel out the real-time signal and give you perfect silence (depending on level settings, it may be necessary to adjust the level on one of the tracks to get perfect cancellation). This works nicely with TruePianos; it's possible to get perfect silence. But with RealGuitars, the variable timing of the rendered notes makes the synch go in an out, so you get little fits and starts of attack sounds, and the cancellation is never perfect.
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 02:59:45
(permalink)
ORIGINAL: Noel Borthwick [Cakewalk] Still havent read this thread closely, so I may be missing some arguments, but there are a lot of variables with softsynths that can cloud the test. e.g. depending on the patch the synth might render its audio later than the actual MIDI data, or it might not be deterministic for a test. Basically its up to the synth to decide when to actually start rendering the audio. The MIDI timestamp is the cue to begin rendering thats all. The ideal test is to take a minimal synth that renders audio instaneously when it receives a note on. A test VST to just emit a test tone in response to a note on would be ideal for this test. The test DXi Twonar from the DXi SDK that Ron wrote years ago could be used to test this with DXi's. Noel, doesn't delay compensation supposedly take care of this sort of thing?
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 03:11:51
(permalink)
ORIGINAL: brundlefly One final thought on this before I call it a day: The only "issue" with the timing of the TruePianos rendering was that all the rendered notes were a consistent 300 samples behind the MIDI event. In thinking about it, this makes sense, as my buffer latency is 300 samples which means that any audio being played back will be 300 samples late, too. I disagree, the midi events should not be 300 samples late, regardless of the buffer. All internal calculations and delay compensation should be taking care of all of that and making sure that every midi event renders audio that is located at exactly the same place in time as the midi event.
|
LionSound
Max Output Level: -39 dBFS
- Total Posts : 3616
- Joined: 2003/12/04 08:07:03
- Location: Los Angeles
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 05:05:02
(permalink)
I've only gotten through two pages of this interesting thread, but here is a quote from Edirol's description of their UM3-EX USB MIDI interface, which I currently use. "The UM-3EX uses FPT (Fast Processing Technology) to ensure low-latency, low-jitter MIDI transmission, even with three devices daisy-chained together". It doesn't look like it supports MIDI Timestamping ... I wonder what FPT really is. And here's a hardware manufacturer confirming MIDI jitter.
www.soundclick.com/lionsound FirstStrike 1.2 IS RELEASED! www.fsmod.com
|
Noel Borthwick [Cakewalk]
Cakewalk Staff
- Total Posts : 6475
- Joined: 2003/11/03 17:22:50
- Location: Boston, MA, USA
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 09:03:52
(permalink)
Delay comp has nothing to do with whether audio from a synth is rendered late. Most synths I know of do not even expose delay. Delay is primarily exposed from fx like compressors that need lookahead before they can produce audio.
|
Noel Borthwick [Cakewalk]
Cakewalk Staff
- Total Posts : 6475
- Joined: 2003/11/03 17:22:50
- Location: Boston, MA, USA
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 09:05:22
(permalink)
Thats not true. There is nothing to stop a synth from deliberately rendering audio late in response to a MIDI note. For example a patch with a very slow attack could intentionally render the audio much later than the start time of the MIDI note.
|
brundlefly
Max Output Level: 0 dBFS
- Total Posts : 14250
- Joined: 2007/09/14 14:57:59
- Location: Manitou Spgs, Colorado
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 14:21:19
(permalink)
I disagree, the midi events should not be 300 samples late, regardless of the buffer. All internal calculations and delay compensation should be taking care of all of that and making sure that every midi event renders audio that is located at exactly the same place in time as the midi event. So basically what you're saying is that rendered audio should be relocated in the time line so that it displays in synch with the MIDI notes. This makes some sense, but then you have an issue with playback timing. If you replay the MIDI track through the soft synth in parallel with the rendered audio, they'll be out of synch, because the soft synth will still be playing back behind the indicated beat, but the audio will be right on it. Since actual audio synch is more important than visual synch, you probably wouldn't want to do that. The only way around this that I can see would be to store a "display offset" value with each audio clip, kind of like the Time+ parameter for MIDI tracks that lets events play back earlier or later than they are shown in the timeline. This could be done, but the programmer would have to take care to make it work seamlessly with all the possible edits that might later be applied. And things could get ugly if the user changed hardware of soft synths later on, invalidating the stored offsets. All things considered, I think I'm okay with the status quo, now that I understand it. I will just endeavor to use soft synths that deliver consistant relative timing between events, regardless of what the absolute delay might be.
post edited by brundlefly - 2007/10/13 14:32:24
|
brundlefly
Max Output Level: 0 dBFS
- Total Posts : 14250
- Joined: 2007/09/14 14:57:59
- Location: Manitou Spgs, Colorado
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 14:30:53
(permalink)
Thats not true. There is nothing to stop a synth from deliberately rendering audio late in response to a MIDI note. For example a patch with a very slow attack could intentionally render the audio much later than the start time of the MIDI note. I think for the purposes of this discussion, we need to define delay as the time between the MIDI note-on, and the time the softsynth triggers the envelope for a sound, regardless of what that envelope looks like.
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 14:36:47
(permalink)
Noel, So if I understand you correctly.. Sonar does not apply any delay compensation to softsynths? Softsynths are not expected to have any delay unless intended by the softsynth on purpose or perhaps shoddy synth programming? And there is no concept for DXi and VSTi's of delay compensation in general? If that is the case, then anyone who is experiencing shoddy timing while freezing midi tracks can't do anything about it but blame the plugin, though I have to say, we will never have any way to know for sure it is the plugin's fault. You would have to try using the same plugin in some other DAW's to establish whether its Sonar having a timing problem or the plugin itself. At this point, Noel is very sure that its not Sonar. This leads me to want to know which plugins have timing problems. I would also like to know why Pianodano complains that he makes RealGuitar sound great in Sonar while playing back but then when he does a freeze the timing is off. ??? Why would the plugin do anything different during play vs during freeze? As far as a soft synth intentionally rendering every note 10ms(300samples) late...sure a soft synth could intentionally render every note 10ms late...on purpose, like in a slow attack. That is why for this test everybody should be using something that has a sharp attack, not a blatantly long attack. I was not under the impression that anyone was using anything with an intentionally long attack. If a soft synth was adding another 10ms of latency between receiving midi and outputting the audio for no reason other than shoddy programming or complex programming...then I would probably never use that soft synth again. Even more so if the synth is doing it haphazardly or randomly. What I heard in the past few days is that TTS has shoddy programming in it. I have not tried it yet here. It sounds like the implication here is that RealGuitar has shoddy programming too. What else?
post edited by dewdman42 - 2007/10/13 15:17:52
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 14:45:49
(permalink)
ORIGINAL: brundlefly I think for the purposes of this discussion, we need to define delay as the time between the MIDI note-on, and the time the softsynth triggers the envelope for a sound, regardless of what that envelope looks like. Yes, I agree with you here. The envelope is of no consequence, but Noel has a good point..there is nothing stopping a plugin from intentionally outputting a delay before starting the envelope. I don't know why any soft synth plugin would want to do that on purpose and right now I can't think of any examples of ones that would want to, but theoretically, its possible that you could have a soft synth the responds to a midi event by waiting some amount of time, then outputting a sound or series of sounds that are spaced apart however it feels like. But like I said, I honestly can't think of any plugins that would want to do that on purpose. To me it seems like either (A) its a bug in the plugin or (B) the plugin is so complex that it simply can't output sound without some delay. I was always under the impression that all plugins incur some amount of delay to do whatever they gotta do and that delay compensation would make up for it. granted, when playing a soft synth in real time, delay compensation doesn't really make sense, but while rendering a midi track it sure might make sense. but Noel says that plugins just don't require that much time except certain kind of plugins that do lookhead and stuff like that, but most DSP processing is so fast that delay and delay compensation is a moot point. All this means, I guess, is that if there are bad output timing problems from a soft synth, then the soft synth is either designed to work that way or just plain buggy and there is nothing anyone can do about it other than avoid using that plugin.
post edited by dewdman42 - 2007/10/13 14:55:56
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 14:47:58
(permalink)
I propose we start keeping a list of soft instruments which are known to have timing problems when bouncing to audio.
post edited by dewdman42 - 2007/10/13 14:59:50
|
Jim Wright
Max Output Level: -66 dBFS
- Total Posts : 1218
- Joined: 2004/01/15 15:30:34
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 15:02:24
(permalink)
Hi dstrenz -- To recap what you did: - Record 4 bars quarter notes using a Fantom sequencer at 120 BPM
- Saved Fantom data as a SMF, and imported it into Sonar
- Played back Fantom data, and recorded it "live" into Sonar
- Compared the Fantom SMF data (imported into Sonar) with the "live" MIDI data (recorded by Sonar using an 1820M PCI-based MIDI interface)
The results showed maximum MIDI Jitter of 4 ticks (960 ppqn at 120BPM) Using 960 ppqn at 120 BPM, 1 tick is equivalent about 0.521 milliseconds (0.520833333.... rounded up). A maximum error of 4 ticks translates to about 2.1 milliseconds peak jitter. That's not really surprising (although I'd like it to be better). If the EMU MIDI driver uses the 1-milllisecond Windows system clock as the time reference, 2 milliseconds peak jitter is pretty good, actually. The only way to get really lower jitter numbers is to use a higher-resolution timebase. (DirectMusic APIs can support a much higher-res timebase, but I don't know if the EMU card is using them - or what the EMU card might use as a timebase.). Also - consider that a 3-byte MIDI Note On message takes about a millisecond (0.960) to send over the wire. If any other MIDI traffic is going on (aftertouch, bends, controller events), transmission of Note Ons can easily be delayed a bit (which increases effective jitter). I want to emphasize that none of this MIDI jitter is Sonar's fault. This kind of MIDI jitter occurs at the MIDI interface and Windows driver level, not in the sequencer application level. For the kinds of music most people do, 2 milliseconds peak jitter is probably acceptable (depends on how fussy you are). The only way to reduce jitter levels further -- would be to change what's going on that those lower levels of the 'MIDI processing stack". This is what the "time stamping" MIDI interfaces claim to do (I say "claim" because I haven't tested them"). Edit: Please note that low jitter characteristics don't necessarily mean latency (delay through the interface) is also good. From a software engineering perspective -- it's usually necessary to increase buffering a bit in order to keep jitter bounded, and increasing buffering will inevitably increase latency as well. I haven't tested the current MOTU interfaces. When I tested a serial-port-interfaced MIDI Timepiece II (around 1999-2000), I found the jitter was excellent (under a millisecond), but that latency was about 10 milliseconds. This is borderline IMHO. But, this measurement of a different MOTU product, 8 years ago -- doesn't imply anything one way or the other about current MOTU products. For the record, dewdman42 reports excellent (low) latency with his current parallel-port-interfaced MOTU MIDI interface (which does not use timestamping, aka MTS). Sorry for misrepresenting dewdman42's statements in the original version of this post. - Jim
post edited by Jim Wright - 2007/10/13 16:36:09
|
Jim Wright
Max Output Level: -66 dBFS
- Total Posts : 1218
- Joined: 2004/01/15 15:30:34
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 15:08:52
(permalink)
RTGraham - Sorry, didn't mean to misrepresent you. You're correct, you did not in fact state exactly what I paraphrased - I sort of summarized a couple of different points that you made in a few posts, because they seemed related; but now it looks like I'm putting words in your mouth. My apologies - just trying to draw connections. Not a problem, and no need to apologize. It's my fault for being so mysterious - I work for a research lab, and unfortunately have to be careful about describing certain kinds of ideas until I get the right kinds of clearance. Which is very frustrating at times  , but that's hardly your problem Best, Jim
|
Jim Wright
Max Output Level: -66 dBFS
- Total Posts : 1218
- Joined: 2004/01/15 15:30:34
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 15:16:11
(permalink)
LionSound -- You asked about Edirol's "FPT" (Fast Processing Technology). It's not MIDI Timestamping. Here's how FPT was described in a SoundOnSound review ( http://www.soundonsound.com/sos/Dec02/articles/edirol700.asp) "Fast Processing Technology (FPT), a driver and hardware-based solution that allows MIDI data to take best advantage of the potential transmission speeds of USB. While the driver side of the FPT formula optimises the available USB bandwidth depending on the amount of MIDI data coming across the wire, the hardware end of the system attempts to optimise how the data is processed." FPT is also used in the UM880 and UM550 (I own a UM550 and hope to compare it informally with some other MIDI interfaces later this weekend...once I get a new furnace filter and deal with some other chores ). When Martin Walker tested the UM880, he found peak jitter of about 2 miliseconds. This is quite good for a USB interface of that period - and a lot better than first-generation USB MIDI products. Martin described it as having "slightly better than average timing" in his capsule review. I find it interesting that the FPT products emerged a year or so after I demonstrated that USB MIDI had serious problems (at the Windows Audio Professionals Roundtable, Winter NAMM 2000, organized by Cakewalk). I'd like to think that my work encouraged Edirol to "go back to the drawing board", but that's never been confirmed. Jim, notorious MIDI curmudgeon
|
Jim Wright
Max Output Level: -66 dBFS
- Total Posts : 1218
- Joined: 2004/01/15 15:30:34
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 15:20:50
(permalink)
Original: dewdman42 I would also like to know why Pianodano complains that he makes RealGuitar sound great in Sonar while playing back but then when he does a freeze the timing is off. ??? Why would the plugin do anything different during play vs during freeze? Me too. Pianodano - are you freezing tracks with Fast Bounce enabled? Have you tried it both ways? If so, did you notice any differences? The Sonar help is pretty clear that some plugins require a realtime bounce (such plugins don't work correctly during Fast Bounce). - Jim
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 15:23:20
(permalink)
ORIGINAL: Jim Wright However, as others (dewdman42 ?) noted, the MOTU interfaces seem to be pretty high latency (10 milliseconds?) even though their jitter levels may be quite low (perhaps as low as 1/3 millisecond) . 10 milliseconds latency (lag, delay in hearing softsynth notes play live....) is borderline in my opinion. - Jim NO! (MOTU hardware timestamping is called MTS by the way) MOTU interfaces do not generally have high latency. The Traveler is the one I was complaining about..it is one of their firewire audio+midi interfaces. And I do not know if the latency was due to the audio over firewire, midi over firewire or both, but when I use a motu parallel midi interface together with motu PCi audio, the latency is much less. I read some reports that all firewire audio interfaces have a slight bit more latency than PCI pro audio cards, and that was enough for me to get rid of it and go back to PCI audio. I never measured the midi latency of the MOTU usb midi interface with MTS, that I used to have, so I don't know how good or bad it was, but generally I have had mixed feelings about all usb midi interfaces, they make me nervous in general. But I would definitely definitely not declare that MOTU midi interfaces incur a 10ms midi latency!!!!! I would say that most likely the current MOTU midi interfaces incur the same USB latency that other USB midi interfaces incur, except the MTS supposedly happens, but I do not know how Sonar synchronizes the timebase to make use of the MTS timestamp. I know that Digital Performer does in some way, but the only answer from Noel on this so far is that Sonar will not ignore the timestamp if its there...but just exactly how the MOTU obtains a timebase for creating the timestamp, that is the part I don't understand....so I cannot declare yet that the MOTU midi interfaces with MTS actually take advantage of that feature in Sonar. I have a question in to MOTU about it also. still waiting for a response. I kind of expect their answer to be as vague and un-confirmational as Noel's. (shrug) Sometimes I wish I had kept my MOTU USB interface, but I sold it to a buddy when he got OSX and needed it. I still have my parallel port motu midi interface. The reports are that the parallel port midi interfaces have the lowest inherent midi latency of all, and so that is why I decided to use it. It does not have MTS however. My hope is that its response is closer to 1ms than the USB one to the point that MTS is not really needed, but I will probably never really know for sure. For the record, I think that anyone getting a consistent 2ms jitter from their midi interface, no matter what its made of, is fine. They don't need to worry about it. 2ms is good! But I mean, it must be consistent. There cannot be one single time that it jumps up to 5ms or worse. If its always within 2ms of jitter...I say stop worrying about it and play your music. Just to put some perspective on what 2ms is. Sound travels through the air at approximately 1ft per millisecond. Ever play in a band? I guarantee you're ears were more than 2 feet away from the snare drum. just by moving around the stage you would have changed the time it takes for the snare drum to reach your ears...by several milliseconds. Granted, in that situation its generally a more stable delay..not jitter. But just to give some perspective on how little 2ms of delay really is. 10ms is noticeable though.
post edited by dewdman42 - 2007/10/13 15:50:25
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 15:29:50
(permalink)
ORIGINAL: Jim Wright The Sonar help is pretty clear that some plugins require a realtime bounce (such plugins don't work correctly during Fast Bounce). That is something I did not know. I wonder why? Does anyone know the technical reason why a soft synth plugin would require a real time bounce to work correctly? This of course instills new timing paranoia into my soul. How will I ever know for sure if its ok to use fast bounce on all my plugins? The only way to feel safe would be to always use real time bounce! YUCK!
|
brundlefly
Max Output Level: 0 dBFS
- Total Posts : 14250
- Joined: 2007/09/14 14:57:59
- Location: Manitou Spgs, Colorado
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 15:42:08
(permalink)
As far as a soft synth intentionally rendering every note 10ms(300samples) late...sure a soft synth could intentionally render every note 10ms late...on purpose, like in a slow attack. That is why for this test everybody should be using something that has a sharp attack, not a blatantly long attack. I need to make a correction/clarification of what I reported earlier on this. I noted that AudioSnap was locating the TruePianos transient markers consistently 300 samples (actually about 6.8ms) behind the note-on. I mistakenly jumped to the conclusion (Bad dog!) that this had something to do with the buffer latency in my system. Well, I just looked really carefully at the wave, and manually picked out the transition from the decay of one note to the attack of the next, and found that it was only 50 samples (almost exactly 1 tick) late. So it appears that True Pianos is very close to right-on in both interval consistency, and absolute delay. With the other synths, I did not rely so heavily on the AudioSnap transients, because they were clearly all over the place, so I still stand by my findings with regard to those synths in terms of their interval variability, but I would have to take a second look before drawing any definite conclusions about their absolute/average delay.
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 16:10:26
(permalink)
|
Jim Wright
Max Output Level: -66 dBFS
- Total Posts : 1218
- Joined: 2004/01/15 15:30:34
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 16:38:06
(permalink)
dewdman42 -- ok, fixed my post. Sorry I misremembered what you said. As for why some plugins screw up when Fast Bound is used -- I can imagine a number of ways that a plugin could be miscoded -- but I don't know, not having written audio plugins. Edit: removed speculations about how plugins might screw up during FastBounce. Noel pointed out that DirectX can run faster than realtime (thanks, Noel - I wasn't sure, but trust you to have it right). My other speculation seems dubious, reading it now - so I zapped it too.
post edited by Jim Wright - 2007/10/13 22:30:31
|
dstrenz
Max Output Level: -69 dBFS
- Total Posts : 1067
- Joined: 2005/12/10 09:59:06
- Location: Rochester, NY
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 16:48:20
(permalink)
Thanks for the analysis, Jim. Yes, the recap is exactly what I did. After doing it, I was converting ticks to milliseconds incorrectly and thought it was incredibly accurate. Now I realize that it's just about the same results I got using the Fantom USB driver. Apparently the Fantom's USB driver supports DirectMusic but the EMU 1820m's midi ports do not. I discovered this by: Run Start|Run|DXDIAG. On the Music tab, select the emu midi port in the lower listbox (with the midi cables connected to the Fantom, of course), and hit the Test DirectMusic button. When I try that on the emu port 1, I hear nothing. But, selecting Fantom's USB interface, it works.
|
dewdman42
Max Output Level: -74 dBFS
- Total Posts : 839
- Joined: 2004/09/20 16:37:27
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 17:37:52
(permalink)
Right...but even if the Fantom USB supports the directMusic APi, I don't think that neccessarily means that Sonar is using it.
|
LionSound
Max Output Level: -39 dBFS
- Total Posts : 3616
- Joined: 2003/12/04 08:07:03
- Location: Los Angeles
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 18:10:46
(permalink)
Jim, Thanks for the link to the SOS article. Their discription seems a little ambiguous (wouldn't expect them to get too techno geeky in a mainstream review), but it sounds like FPT is more or less good. I'm interested to read the results of your tests with your Edirol gear. I've also got an RME Fireface800 connected to an FW400 PCIe card ... I wonder if using the FF's MIDI I/O for my keyboard would yield more accurate results.
www.soundclick.com/lionsound FirstStrike 1.2 IS RELEASED! www.fsmod.com
|
brundlefly
Max Output Level: 0 dBFS
- Total Posts : 14250
- Joined: 2007/09/14 14:57:59
- Location: Manitou Spgs, Colorado
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 19:15:51
(permalink)
Tested the RealGuitar. Took a while, because they definitely have some sort of randomizing algorithm that makes each attack a little different, which confused AudioSnap a little bit. It sounded funky on playback, too. Quoting myself again, because I looked into this a little more. I Re-rendered RealGuitars using 16th-note intervals so that each note would decay to zero before the next, allowing me to see the initial transients with no overlap, and... Well, well, well, those RealGuitar guys sure are sneaky. Turns out there are 6 or 7 distinct plucks sampled with differing attacks and amplitudes, which are played back pretty much in random order. I found this by rendering the audio twice, and comparing the results. Every once in a while, two transients would have the exact same delay, and when I zoomed in, I found that the waveforms were identical, sample for sample. But the 6 or 7 variations were never in the same order; sometime you'd get two or three of the same sample in a row, and sometimes you wouldn't see a particular sample for 9 or more notes. Perhaps more relevant to this discussion, I also found that even the identical pluck samples didn't necessarily play back with the same delay. I observed differences in the timing of like plucks of up to 88 samples (2ms). It also seemed that some pluck samples were more likely to be very late than others. This might be because their attacks were longer. The mean lateness, looking at the first deviation of the signal from dead zero was about 89 samples with a standard deviation of about 40 samples (< 1ms). Pretty reasonable, really, and probably just enough to humanize the sound a little without getting to the level of being sloppy. Anyway, all this explains why inverting the rendered signal won't cancel out the real-time playback. No two "performances" of RealGuitar will be the same, due to this deliberate random variation.
|
dstrenz
Max Output Level: -69 dBFS
- Total Posts : 1067
- Joined: 2005/12/10 09:59:06
- Location: Rochester, NY
- Status: offline
RE: MIDI "Jitter" - It Does Exist
2007/10/13 19:29:26
(permalink)
ORIGINAL: dewdman42 Right...but even if the Fantom USB supports the directMusic APi, I don't think that neccessarily means that Sonar is using it. You mean the timestamping capabilities, right? Considering your and Jim's description of the inaccuracy of usb itself, it's impossible to determine. I somehow doubt it just because Sonar has existed long before DirectMusic and they are probably using old code. BTW, reading up on DirectMusic, MS apparently dropped it for Vista 64, but it exists in Vista 32.
|