• SONAR
  • There is STILL MIDI crosstalk in Sonar (p.4)
2016/02/16 15:24:59
brundlefly
I've used the demo of Catanya in the past. This time I used the freeware Blue ARP, but it needs MIDI input to generate output, which might invalidate the test conditions. And then there's SilkTone's own 32-bit 'MIDIBugs' plugin that he developed to demonstrate this and related MIDI buffering issues:
 
http://www.alienworks.com/cakewalk/sonarmidibug/sonarmidibug.htm
 
The above is definitely the easiest one to set up. Just drop the DLL in your x86 Vstplugins folder, insert it as a Simple Instrument (MIDI-generating plugins need to have an audio output track to work correctly in SONAR - even if it's not used), and turn on the 'Generate MIDI' option in GUI.
2016/02/16 15:29:34
Sanderxpander
Anderton
I'd be happy to test this but don't know if I have any plug-ins that generate MIDI out. Do any of SONAR's built-in plugs have it, or any common ones from NI, Arturia, etc.?



NI Maschine, if you happen to have that. I'm sure some Reaktor ensembles do too but I don't use any that do. 
2016/02/16 15:52:22
SilkTone
Anderton
I'd be happy to test this but don't know if I have any plug-ins that generate MIDI out. Do any of SONAR's built-in plugs have it, or any common ones from NI, Arturia, etc.?



Craig, in the past I didn't have much luck finding a built in plugin that reproduces the issue.
2016/02/16 16:10:24
Paul P
SilkTone
Paul, where are you recording MIDI? It specifically happens when you record MIDI from an external MIDI controller while also having VSTis that send MIDI out back into Sonar. From your setup, it sounds like you just need to record one of those MIDI inputs.



You're right,  I wasn't recording.  But now I have and I still haven't encountered a problem.
 
[The following continues the experiment begun in post 23]
 
1. I enabled recording for (only) Rapture, SI EPiano and DimPro.  I started recording and played some notes into Kirnu 1 which got that going, then some notes into Kirnu 2 which were also repeated, then I played DimPro by hand on top of the other two.  Everything was recorded properly.  [During record, though, clips don't properly show what's being recorded.  Only the notes of one clip are repeated (visually) in other clips.  May not be a problem, but certainly not what I'd expect to see.  Once I stopped recording the clips were updated to reflect what was actually recorded in each clip.]
 
2.  I then added just a midi track (6) and set its input to Sonar's "Virtual Controller / MIDI Omni" which is also being read by Kirnu 1.  Armed that for record as well and repeated the above.  This midi track correctly recorded only what was played on Sonar's virtual controller.  And the other clips correctly recorded what was being fed to them.
 
3. I then armed everything for recording and repeated step 2.  Here's what was produced :
    (display just the image to see it a bit bigger)
 

 
"Track 6" is the midi track recording Cakewalk's "Virtual controller / MIDI Omni" (also playing Kirnu 1/Track 1). 
As you can see, Track 6 records only that device.
 
Just to make sure, since you'd mentioned devices 'external' to Sonar, I repeated one more time, but had Track 6 record one of the other keyboards coming through LoopBe30  "1.Internal MIDI / MIDI Omni".  The result was equally successful.
 
2016/02/16 16:45:39
SilkTone
Paul,
 
Your setup (routing etc) is different enough that it could be one of many reasons why it isn't reproducing for you. Unfortunately I don't have a lot of free time right now so can't experiment with something closer to your setup, but maybe later tonight I can do that and will give an update.
 
A few people have repro'd this so I don't think this is specific to my setup.
2016/02/16 16:50:32
Sanderxpander
I even get crosstalk from Maschine if it's not actively generating midi but just said to "thru" mode and playing the Sonar midi clip. Meaning that it then also plays any other tracks that are not specifically set to a physical input and channel.
2016/02/16 17:04:40
tlw
Sonar's internal handling of MIDI from VSTis has always been buggy, for several versions the tick-box in the synth loading dialogue etc. to allow a VSTi to send MIDI existed but didn't actually do anything. I think it was X1 where the function first worked at all.

I acknowledge that a work-around shouldn't be necessary, but needs must, as they say.

Might using the virtual MIDI ports of LoopBe be a work-around?

Use LoopBe to set up some extra MIDI in and out ports in Windows that Sonar then just treats as another external MIDI device. Then use the LoopBe ports as a virtual MIDI cable by pointing the VST MIDI output at a LoopBe MIDI in and setting the input whichever track or VST you want to use that MIDI to the relevant LoopBe out.
http://nerds.de/en/loopbe1.html
2016/02/16 20:57:36
auto_da_fe
I was on the original Xtalk bug report.  So I know a lot about this issue.
 
Overall things are better, but it still does weird stuff when you enable midi out.  Fortunately I usually only ever use 1 midi channel so do not see a lot of these issues.
 
I too have discovered that "none" does not mean none, however assigning an unused midi port from my octa-capture provides a suitable work around.  
2016/02/16 22:46:34
brundlefly
auto_da_fe
I was on the original Xtalk bug report.  So I know a lot about this issue.
 

 
Good, then maybe you can clarify how to reproduce it...? 
 

I too have discovered that "none" does not mean none, however assigning an unused midi port from my octa-capture provides a suitable work around.

 
None means none; you just can't record it or echo it.




2016/02/16 23:21:06
SilkTone
OK, here are some simple steps to repro. The only extra thing you need is an external MIDI keyboard. I don't know if LoopBe would work since I have not tried it.
 
  1. Start with an empty project
  2. Insert a single MIDI track
  3. For the MIDI track in step 2's input, select [Virtual Controller]->MIDI Ch. 1
  4. Insert a VST2 synth, say SI-String Section, into its own new MIDI and synth track
  5. For the synth's MIDI track in step 4's input, select [Your External MIDI Controller]->OMNI
  6. Select the MIDI track of the synth in step 4, and arm it for record.
  7. Open the Virtual Controller (Alt+Shift+0)
  8. Start recording
  9. Click on notes in the Virtual Controller
 
Actual Results:
MIDI events from the Virtual Controller in step 3 are recorded onto the MIDI track of the synth in step 4.
 
Expected Results:
Since the input of the synth in step 5 is selected to be [Your External MIDI Controller]->OMNI, it should only record MIDI events coming in from the external MIDI controller that is selected as its input.
 
Important:
If you flubbed any of the steps, say accidentally select the wrong input in step 5, then changed that to the correct input, the problem will not reproduce. This is actually the workaround as well... Select an unrelated input, then back again to [Your External MIDI Controller]->OMNI.
 
Clearly this is not how it is supposed to work. Especially if you consider that temporarily changing to a different input, then back again, changes the behavior.
 
Over the years this bug has become less and less severe. Initially Sonar would crash if more than 1 VSTi sent MIDI data out at the same time (no workaround), and MIDI events sent from VSTis would bleed into any other track that is being recorded (no workaround). At least now there are workarounds. Still, after all these years one would think CW can get the routing right. It is such basic DAW functionality.
© 2026 APG vNext Commercial Version 5.1

Use My Existing Forum Account

Use My Social Media Account