Latest posts on Super unstable MIDI clock output topichttps://forum.jammr.net/topic/1958/2021-01-23T09:21:49+00:00General :: Technical support :: Super unstable MIDI clock output
2021-01-23T09:21:49+00:00jermin5401so i’m used to midi clock between outboard. that is fine.<br/>in this case i want to slave a daw to jammr but there is nowhere i can see within the daw to specify jammr as the clock source. <br/><br/>is this not possible or am i missing something ? i am guessing not (looking at other thread)<br/>cheers<br/><br/>EDIT: just found out logic does not support being a slave to midi clock. that wil be why . oops
General :: Technical support :: Super unstable MIDI clock output
2021-01-22T19:07:24+00:00shawnb5397At the moment, jammr only supports MIDI Clock, which is basically tempo. <br/><br/>Tempo works perfect when syncing short-term things, e.g., guitar FX tails. I feed the MIDI from jammr to my guitar FX to keep things in sync & it works perfectly.<br/><br/>No matter how perfect your gear is, a bunch of individual devices following tempo over any significant amount of time will drift apart. It's just life. No two pieces of gear stay perfectly in sync independently of each other. <br/><br/>That's why MIDI also supports commands like MIDI Start/Stop/Continue. Another option is to have MIDI send the SPP, Song Position Pointer. Different gear supports different protocols. (MTC, Midi Time Code, is the equivalent to SMPTE, which is for film/video & needs things like frame rates… Not a jammr need, I think…) <br/><br/>But I think if you could get jammr to xmit SPP on the MIDI bus, or at least xmit a MIDI Start at the start of each interval, that should be sufficient to slave most external gear, and in fact, to have different folks syncing different MIDI gear. As long as your MIDI gear functions well as a MIDI slave (they all say they do, but some don't really, they all want to be the master…) and honors MIDI Start &/or SPP. <br/><br/>Hence this enhancement request:<br/><a href="https://forum.jammr.net/topic/2188/">https://forum.jammr.net/topic/2188/</a>
General :: Technical support :: Super unstable MIDI clock output
2021-01-22T09:04:07+00:00jermin5396tried my first every session last night and midi sync was the first thing I reached for. tried using Logic and outboard to try and drop in additional rhythms to somebody else's drum drack / produce in sync synth arpeggios & sequences, but no joy really.<br/><br/>checked the external midi radiobox on the midi preferences. I think I may have experienced sync once for about 30sec over a 3 hour period. <br/><br/>am I missing something or is this roadmap stuff on the app? should I give up for now and just strum along?<br/><br/>Either way it was SO nice to get some musical interaction after so long!…..
General :: Technical support :: Super unstable MIDI clock output
2020-06-06T14:18:01+00:00stefanha5015The rewritten MIDI Beat Clock is now available in the jammr 1.2.90 beta release:<br/><a href="https://forum.jammr.net/topic/2066/">https://forum.jammr.net/topic/2066/</a><br/><br/>Would be great to hear if it works for you!
General :: Technical support :: Super unstable MIDI clock output
2020-05-10T07:31:14+00:00stefanha4870I have started working on this.
General :: Technical support :: Super unstable MIDI clock output
2020-04-23T05:07:00+00:00stefanha4713eb_liveDrums: Just until the MIDI Beat Clock is improved.
General :: Technical support :: Super unstable MIDI clock output
2020-04-22T16:03:37+00:00eb_liveDrums4710<blockquote><em>stefanha</em><br/>Keep in mind that MIDI Beat Clock is a convenience feature for syncing the tempo automatically between apps/devices.You can play in sync simply by manually setting the tempo in your drum machine instead of using MIDI Beat Clock.</blockquote><br/>This is not a good solution, without clock sync the drum machine will drift out of time. Maybe thats fine if its just a drum machine, but you cant have multiple jammrs using electronic instruments that rely on clock.
General :: Technical support :: Super unstable MIDI clock output
2020-04-21T18:05:54+00:00stefanha4705Keep in mind that MIDI Beat Clock is a convenience feature for syncing the tempo automatically between apps/devices.<br/><br/>You can play in sync simply by manually setting the tempo in your drum machine instead of using MIDI Beat Clock.
General :: Technical support :: Super unstable MIDI clock output
2020-04-20T16:29:11+00:00captaincancel4675<blockquote><em>eb_liveDrums</em><br/>Anyone on windows want to try this older 32 bit VST to see if you can get stable clock from it?<a href="https://www.expert-sleepers.co.uk/downloads/clocker_1_0_0_win32.zip">https://www.expert-sleepers.co.uk/downloads/clocker_1_0_0_win32.zip</a></blockquote><br/>I tried it, didn't seem to do anything.
General :: Technical support :: Super unstable MIDI clock output
2020-04-20T16:12:30+00:00eb_liveDrums4674Anyone on windows want to try this older 32 bit VST to see if you can get stable clock from it?<br/><br/><a href="https://www.expert-sleepers.co.uk/downloads/clocker_1_0_0_win32.zip">https://www.expert-sleepers.co.uk/downloads/clocker_1_0_0_win32.zip</a>
General :: Technical support :: Super unstable MIDI clock output
2020-04-20T02:57:38+00:00captaincancel4648<blockquote><em>stefanha</em><br/>The MIDI Beat Clock is not related to network latency. MIDI is only local to your computer. jammr does not transfer MIDI over the network.Another way of explaining the current clock drift behavior is that jammr knows the right time at which to emit a MIDI Beat Clock message, but the MIDI message is sent at an arbitrary point in time afterwards. The precise timing currently depends on your computer or you could say it's left up to chance. Adding a timestamp will ensure that the receiver knows exactly when the MIDI Beat Clock message is supposed to happen, regardless of when it was actually sent and received. This should significantly reduce drift.Don't worry, I will get to this if no one else does before me. At the moment it's looking like 3 weeks.</blockquote><br/>That would be stellar. My coding is a bit rusty and would probably a while to get solid build let alone write a fix like this.
General :: Technical support :: Super unstable MIDI clock output
2020-04-19T17:50:02+00:00eb_liveDrums4634<blockquote><em>stefanha</em><br/>The MIDI Beat Clock is not related to network latency. MIDI is only local to your computer. jammr does not transfer MIDI over the network.Another way of explaining the current clock drift behavior is that jammr knows the right time at which to emit a MIDI Beat Clock message, but the MIDI message is sent at an arbitrary point in time afterwards. The precise timing currently depends on your computer or you could say it's left up to chance. Adding a timestamp will ensure that the receiver knows exactly when the MIDI Beat Clock message is supposed to happen, regardless of when it was actually sent and received. This should significantly reduce drift.Don't worry, I will get to this if no one else does before me. At the moment it's looking like 3 weeks.</blockquote><br/>Thanks for the response, really appreciate it.<br/><br/>One thing to consider, why is it that a VST drum machine can stay in sync without the same issues as MIDI clock? Maybe there's a fix there?
General :: Technical support :: Super unstable MIDI clock output
2020-04-19T17:43:04+00:00stefanha4632The MIDI Beat Clock is not related to network latency. MIDI is only local to your computer. jammr does not transfer MIDI over the network.<br/><br/>Another way of explaining the current clock drift behavior is that jammr knows the right time at which to emit a MIDI Beat Clock message, but the MIDI message is sent at an arbitrary point in time afterwards. The precise timing currently depends on your computer or you could say it's left up to chance. Adding a timestamp will ensure that the receiver knows exactly when the MIDI Beat Clock message is supposed to happen, regardless of when it was actually sent and received. This should significantly reduce drift.<br/><br/>Don't worry, I will get to this if no one else does before me. At the moment it's looking like 3 weeks.
General :: Technical support :: Super unstable MIDI clock output
2020-04-19T17:20:59+00:00eb_liveDrums4631<blockquote><em>stefanha</em><br/>The MIDI Beat Clock drift issue is on the todo list but it's only used by a small fraction of users. Therefore the priority isn't high. If anyone with coding skills wants to work on this I'm happy to discuss the code, latency profiling techniques, etc.</blockquote><br/>This is a chicken and egg thing. MIDI clock doesn't work, so the only people attempting this are freewheeling their drum machine. <br/><br/>Many of the jams I've been in use 12 bar blues, or similar standard progressions. That's because the delayed interval format lends itself well to these styles of music.<br/><br/>Most electronic music falls into this same category. Techno is an entire genre of repeating 8 or 16 bar phrases, and I know plenty of people who collaborate this way - usually in person, or by passing protools sessions back and forth with dropbox. No one is doing this on jammr because you can't do it without a functional MIDI clock. If you can fix it, you will open things up to a lot more users. I have a lot of techno friends not on jammr that I would absolutely ask to jam with me this way, if it was possible.<br/><br/><blockquote><em>stefanha</em><br/>The MIDI Beat Clock approach is prone to drift. How much variation you experience depends on your computer.</blockquote><br/>Based on what I've experienced, and your technical description of how jammr produces it's clock, I think the issue is more network latency and buffering. I've got a very beefy media production laptop, lots of cores/ram, and when I clock Ableton to Jammr what I see is a lot of stuttering. 85 bpm for a few seconds then a quick 90bpm that then dives down to 82 bpm, then settles back to 85 for a few seconds before jumping around again. <br/><br/>I'll take a look at the wahjam sourcecode and see if there's anything I can contribute. I like your idea of timestamps, have you considered alternately having a separate timing/interrupt process dedicated to a MIDI clock that is synced to the session metronome? In other words, have your locally derived MIDI clock sync itself to your session clock based on timestamps.
General :: Technical support :: Super unstable MIDI clock output
2020-04-19T13:34:02+00:00captaincancel4623<blockquote><em>stefanha</em><br/>Hi everyone,The MIDI Beat Clock approach is prone to drift. How much variation you experience depends on your computer.If it does not work well it may be necessary to manually set the BPM for external apps or devices.Here is more detail:Although jammr's metronome is sample-accurate and does not drift with respect to the audio stream, the MIDI messages sent to external apps or devices are delivered by the computer's MIDI drivers without timestamps. External apps or devices receive the MIDI Beat Clock messages whenever they receive them and then try to determine the tempo by measuring the timing between messages.This mechanism is imprecise because small timing variations between receiving MIDI messages cause the inter-message time measurement to drift.It's possible that jammr's code can be improved to tighten the timing on the sending side, but this won't eliminate drift completely.Maybe there are MIDI protocol features that can be used to improve the situation. This requires some study and maybe someone here knows?Adding a different tempo synchronization mechanism to jammr is probably the long-term solution. There are newer mechanisms like Ableton Link that might to tempo sync in a more reliable way.The MIDI Beat Clock drift issue is on the todo list but it's only used by a small fraction of users. Therefore the priority isn't high. If anyone with coding skills wants to work on this I'm happy to discuss the code, latency profiling techniques, etc.</blockquote><br/>Does the room's clock derive from the Jammr server node, i.e. is it a master/slave relationship between client and server with respect to the MIDI Beat Clock?