MIDI Sync Between Loopy and Other Apps

edited December 2011 in General
Really liking the latest updates (vers. 2.2). However, I've noticed some MIDI timing problems (which may have always existed) and I have been trying to figure out just where the problem(s) originate.

I was testing Loopy's MIDI sync capabilities with Genome MIDI Sequencer. This was simply placing Loopy in MIDI slave mode and tapping the play button in GMS. It just happened that I had a sequence loaded in GMS that routed MIDI to a percussive synth sound in NLog. So I had GMS controlling both NLog and Loopy. While it was amazing to see my iPad2 actually playing these seperate apps together, the sync was slightly off and very noticeable.

Then I tried closing all open apps and creating a simple beat in MoDrum and then copy/pasting it into Loopy. I then synced Loopy and MoDrum and had them play the same beat with each other. Again the MIDI sync is noticeably off. This could be anything from slight waveform alteration during transfer through Sonoma's pasteboard, to MoDrum inserting a few MIDI frames (?cycles, ???) at the start of the export. Usually MoDrum is as stable as a rock though.

My question is this: is true inter-app MIDI sync really still a pipe dream on iOS? Do we need to carefully construct our synced parts so that only one of them is percussive and thus hiding the loose sync? Have I been going about this all wrong?

I've been trying to devise a workflow that allows me to use these various sound generators together on the same iPad2 with some, but not enough success. I have yet to figure out a system that would be stable enough for me to use live in bands that play typical songs rather than freeform electronica. I know I'm potentially opening myself to loads of criticism, but the idea of playing a bass part in the first verse and using it in later verses seems to make sense conceptually. I just can't get it from concept to performance!

Thanks for any thoughts on the MIDI sync between apps on the same iDevice.

Comments

  • Hey @klingklang - Hmm, that's interesting! Did you notice where the sync problem was? Were any particular two apps that worked properly together?

    Syncing is actually something that's not easy to get perfect, and there's no standard technique to make it happen: It's up to the developer. While developing Loopy's sync I tested with MoDrum (and another copy of Loopy), and I had it absolutely spot on, both on-device and over WiFi, but that's no guarantee it'll be perfect in all conditions.

    So, no, MIDI sync's not a pipe dream, but it is necessary to actually implement it properly. If one app's misbehaving, then it's just a matter of getting it fixed =) If that's Loopy, I'd love to hear about it.

    My suggestion: Try different combinations of apps, and see if you can identify the problematic component. Does MoDrum sync perfectly with NLog? With GMS? GMS/NLog? If Loopy's implementation is problematic for you, I'll get right on it =)
  • I'm just doing some mucking about with it myself, and I see that there does appear to be a .029s discrepancy being introduced with Loopy's input now, to my surprise! I'll get that fixed up.
  • Awesome, thanks Michael! The other night, I ran a few of the tests you mention, but I should chart out a series of tests and the results. What started this was noticing that GMS seemed to drift in and out of tempo when being MIDI master to 2 apps. That started me poking around.

    I'll try to post the results from the tests. And thanks again for following through on this.

    - Lovin' Loopy!
  • Cheers!

    Okay, status update: I've identified and fixed the issue (a dumb tick counting bug) that causes Loopy to be out of sync by one MIDI clock tick (1/24th of a beat). My bad. Submitted to the App Store, and will be available as soon as Apple give it the thumbs up.

    Till then, use Loopy as the MIDI clock master - it sends out fine.

    Thanks heaps for making me aware of this! A bugger we didn't catch it during testing!
Sign In or Register to comment.