Live input, MIDI Out, looping and skipped notes bug

Author
Jekyll Vance
Max Output Level: -90 dBFS
  • Total Posts : 50
  • Joined: 2010/10/07 07:57:05
  • Status: offline
2014/01/08 05:20:41 (permalink)

Live input, MIDI Out, looping and skipped notes bug



Hello Cakewalk and forumers!
I want to describe a strange problem with MIDI out and looping, that seem to be present in Sonar back from its early versions. Now at last after some proper experimenting I narrowed it down and request it to be analyzed and hopefully fixed. I frequently use VST synths MIDI out, trying to do some “berlin school” and generative music, so this problem bothers me quite a lot.
You’ll see what I mean. To reproduce it, please set up a little experiment. it may seem tricky, but I tried to describe everything in detail. I tested this in Sonar 8.5.3 and X3)
 
Experiment 1.  Record your midi out in loops and compare with initial notes sequence. To do that:
-  Load some MIDI-VSTi plugin and enable MIDI Out on it.
-  Insert new “IN” midi track and set its output to your MIDI-VSTi.
-  Draw some note sequence, that we’re going to play through MIDI Out (let it be simple and strictly quantized to grid, say 1/8 C3 note on each beat).
Then, add second “OUT” midi track to record notes that MIDI Out produces and select your MIDI-VSTi as track input. Enable Input echo on all tracks. You can also route “Out” MIDI track to some synth to audition your notes.
-  Enable recording on “OUT” MIDI track with auto-punch (set loop points and corresponding punch points, say, to 4-beats loop; loop start must strictly coincide with first Note On! This is important).
-   Press record. Wait about 4-5 loop cycles to pass, stop record.
-    Compare what you've got on take lanes (extend piano roll to maximum when analyzing).
 
In theory, you should get a set of identical takes, because the sequence, played by MIDI VSTi, is looped, unchanged and synchronized to host playback engine and tempo. In theory, notes must be strictly quantized to the grid as they are in initial sequence. What we’ve got in reality:
Take 1: all notes are recorded in place, strictly aligned to grid, but, there is a very short “ghost” note in the end of the first take, which “stands out” of the loop. Obviously this is the note that must have been located at first beat of take 2, but instead it‘s partially recorded at the end of take 1 out of punch region.
Take 2 and subsequent: first note is absent.
Conclusion: when loop start coincides with “live input” Note On, Sonar is unable to catch, reproduce and record this note.
 This behavior was observed with most MIDI VSTi plugins that I tested. Some other plugins MIDI output cause slightly other type of behavior (let’s call it type 2): at the start of each take we got an “endless” note that extends till the end of the loop. Obviously the Note off is skipped in this case. All other notes lag about 23-26 ticks from the grid.
Let’s experiment further: nudge first note to the right from the start of the loop by several ticks and repeat record. When pushed 3 ticks to the right, we observe that behavior changes from “ghost” note to “endless” note.  When pushed 60 ticks to the right, everything becomes normal (all notes get recorded in place).
 
Experiment 2.  Route your note sequence from “In” track to “Out” track directly through some virtual MIDI driver, let’s take free loopMIDI, MIDI Yoke or LoopBe1. Record your loop a couple of takes again.
Let’s see results. Now each note lags a little from grid, that is, the lag exists between the moment when note is played by MIDI VSTi and the moment when it gets recorded. Second, notes timing is slightly different, you can easily see that by velocity markers, that go in tight groups for each note rather than seem as one. So, Note On events have different timing (different lag), as well as durations (they differ about 1-2 ticks). This must be the virtual driver inaccuracy (every driver I tested shows it). But in this case the first note is not skipped and, except this inaccuracy, everything’s fine.
 
Experiment 3. Real wonders happen here. Use a modular VSTi host (Plogue Bidule or Energy XT), enable MIDI out on it. Make sure that you properly connect midi input with outputs inside VSTi. When MIDI out is routed directly to host pipeline, we’ll observe behavior, described in experiment 1 (either “ghost” or “endless” notes). Now route MIDI from VSTi to virtual MIDI driver instead (in Bidule you can use MIDI out bidule for this purpose, in Energy – Piz MIDI out plugin). Connect “Out” track input in Sonar to virtual MIDI driver as earlier.
Result: we see some timing inaccuracy again (associated with virtual MIDI driver, I presume), but, the most intriguing – notes are now going a dozen of ticks ahead (!) of grid, they get recorded on timeline earlier than the actual note is played by MIDI In. This must be either VSTi synchronization bug or time travel, what do you think? I guess this is not Bidule or Energy personal problem, because in several modular hosts I tested it was the same.
 
To summarize.
The sad result of all this strange things: when you play the same looped sequence from MIDI VSTi, each time the loop restarts it sounds different to ear, that makes quite hard to work with MIDI-out generated sequences. I’m afraid now there‘s no way to get live MIDI input in loop played and recorded right. Each method to do this gives us some bug (are they interconnected?).
If someone is interested but too lazy to reproduce the problem by oneself, I can provide some screenshots of recorded sequences.
#1

5 Replies Related Threads

    SilkTone
    Max Output Level: -59.5 dBFS
    • Total Posts : 1566
    • Joined: 2003/11/10 17:41:28
    • Status: offline
    Re: Live input, MIDI Out, looping and skipped notes bug 2014/01/08 11:06:12 (permalink)
    Yes, the wonderful VSTi MIDI Output issues again. Many of the symptoms (ghost notes and hung notes) were described here five years ago and were originally filed as CWBRN-1336. On that page, Bug #1 matches your stuck (infinite) notes, and Bug #3 matches your ghost notes.
     
    CW has fixed some of these issues in X3d. You say you tested in 8.5.3 and X3. Did you try it in X3d? Even in X3d, I'm still seeing issues with VSTi MIDI Output, see here. But maybe some of your issues have been fixed.
     
    In addition to the issue described in that last thread (which now has a work-around in X3d), I'm also seeing strange MIDI glitches while setting different MIDI tracks as the current MIDI track during playback. In those cases the MIDI tracks are hard-wired to a specific MIDI port and Echo=ON. So those tracks should not be changing their MIDI source just because you clicked on them, but I often find there are short bursts of MIDI events from unrelated tracks appearing on the track that was just clicked on, or sometimes all MIDI playback disappears for a second or two when clicking on different tracks. I still plan on narrowing down some steps to reliably reproduce this so I can file a new problem report for it.
     
    It really is sad that CW chose to completely ignore these issues for almost 5 years, and even after making some fixes in X3d, there are still issues in this area. For a program as mature as Sonar X3, it's MIDI routing should really be rock-solid. I still don't understand why we can't just get a good MIDI implementation in Sonar.

    Windows 10 Pro x64, SONAR Platinum 64-bit
    Focusrite Scarlett 18i8 USB, ASRock Z97 Pro4, Haswell 4790k @ 4.4GHz
    32GB DDR3/1600, 500GB SSD (OS) + 256 GB SSD + 3TB MD
    NVIDIA GTX-1070, 40" 4K Monitor + 1 Monitor in ISO booth
    #2
    Splat
    Max Output Level: 0 dBFS
    • Total Posts : 8672
    • Joined: 2010/12/29 15:28:29
    • Location: Mars.
    • Status: offline
    Re: Live input, MIDI Out, looping and skipped notes bug 2014/01/08 12:23:03 (permalink)
    X3D resolves some MIDI issues, if you haven't already installed it I suggest you do so plus perform a VST Reset.
    Also please check the first post of this thread, looks like we might have already reported some of these issues: http://forum.cakewalk.com/Outstanding-Issues-as-of-X3D-and-general-comments-m2952585.aspx#2952585
     
    Ta.
    post edited by CakeAlexS - 2014/01/08 12:50:14

    Sell by date at 9000 posts. Do not feed.
    @48/24 & 128 buffers latency is 367 with offset of 38.

    Sonar Platinum(64 bit),Win 8.1(64 bit),Saffire Pro 40(Firewire),Mix Control = 3.4,Firewire=VIA,Dell Studio XPS 8100(Intel Core i7 CPU 2.93 Ghz/16 Gb),4 x Seagate ST31500341AS (mirrored),GeForce GTX 460,Yamaha DGX-505 keyboard,Roland A-300PRO,Roland SPD-30 V2,FD-8,Triggera Krigg,Shure SM7B,Yamaha HS5.Maschine Studio+Komplete 9 Ultimate+Kontrol Z1.Addictive Keys,Izotope Nectar elements,Overloud Bundle,Geist.Acronis True Image 2014.
    #3
    Jekyll Vance
    Max Output Level: -90 dBFS
    • Total Posts : 50
    • Joined: 2010/10/07 07:57:05
    • Status: offline
    Re: Live input, MIDI Out, looping and skipped notes bug 2014/01/09 04:23:41 (permalink)
    Silktone, thanks for reply. Excellent review of MIDI bugs that you refer to, by the way. Yes, I use X3d and all the bugs are still there. I decided to recheck it since 8.5.3 because some impovements for the MIDI Out was announced by Cakewalk in the new version of Sonar. One real improvement that I see is that I don't constantly get stucked notes anymore when playing notes live through MIDI Out (I'm not 100% sure in it, though). I heard they also fixed multiple MIDI Outs problem (when several plugins have it enabled), still haven't tested it yet.
    But, one thing I know, - once I start to use looping, the problems I described evolve, so I presume they are connected with the way looping and MIDI buffer work together in Sonar.
    About MIDI crosstalk problem: agreed and confirmed. Writing about it was on my agenda, but you did it for me. I will answer in your thread.

    CakeAlexS, yes, you're right, my problem seems to correnspond with "Loop recording Bug Still in X3d" (I cannot post a link for now, will do it later). Glad to hear that it is confirmed by Cakewalk at last. If you have already reported this problem to Cakes, I ask you to let them know also about  Virtual midi driver output from VSTi problem (see my experiment 3 above). If someone else will manage to reproduce it, of course.


    I have some other bugs to hunt, prepairing a review.
     
     
     
     
     
    post edited by Jekyll Vance - 2014/01/09 04:31:38
    #4
    Splat
    Max Output Level: 0 dBFS
    • Total Posts : 8672
    • Joined: 2010/12/29 15:28:29
    • Location: Mars.
    • Status: offline
    Re: Live input, MIDI Out, looping and skipped notes bug 2014/01/09 07:13:34 (permalink)
    Hi Jekyll
    My time is getting limited again, could I point you to Cakewalk problem report form?
    http://www.cakewalk.com/s...act/problemreport.aspx

    Please let me know if cake confirms this (plus number) so I can take a record. Others might confirm this issue.


    Thanks.
     
    (corrected typo)
    post edited by CakeAlexS - 2014/01/10 05:25:51

    Sell by date at 9000 posts. Do not feed.
    @48/24 & 128 buffers latency is 367 with offset of 38.

    Sonar Platinum(64 bit),Win 8.1(64 bit),Saffire Pro 40(Firewire),Mix Control = 3.4,Firewire=VIA,Dell Studio XPS 8100(Intel Core i7 CPU 2.93 Ghz/16 Gb),4 x Seagate ST31500341AS (mirrored),GeForce GTX 460,Yamaha DGX-505 keyboard,Roland A-300PRO,Roland SPD-30 V2,FD-8,Triggera Krigg,Shure SM7B,Yamaha HS5.Maschine Studio+Komplete 9 Ultimate+Kontrol Z1.Addictive Keys,Izotope Nectar elements,Overloud Bundle,Geist.Acronis True Image 2014.
    #5
    Jekyll Vance
    Max Output Level: -90 dBFS
    • Total Posts : 50
    • Joined: 2010/10/07 07:57:05
    • Status: offline
    Re: Live input, MIDI Out, looping and skipped notes bug 2014/01/10 05:24:11 (permalink)
    Hmm. Today I tried it (experiment 3) with Reaper and get the same results - notes are recorded ahead of playback again. Probably this is a general issue, need to investigate further. If anyone has some thoughts on this, please share
    #6
    Jump to:
    © 2025 APG vNext Commercial Version 5.1