Jump to content

How can I stop Cakewalk outsmarting the user at MIDI export ?


Richie_01

Recommended Posts

Hi folks, I'm sorry if this has been asked before - couldn't locate a corresponding answer in the forum.

Here is the issue:
In the early days of Cakewalk, a *.mid file was an accurate representation of a *.wrk file. E. g. a  program change at 1:03:180 in the *.wrk turned into a program change at 1:03:180 in the *.mid file. A cc7 volume at 1:03:190 translated into a cc7 volume at 1:03:190.
cake-000.png.0a2205a0c71d8531c629c982d5e6330f.pngcake-001.png.3c5e7e96cc5ff39b47a0b4b2ce12bcfe.pngcake-002.png.96467838269d26cfb4d891496ba2d84d.png
Compare the *.wrk and the *.mid event list here - all events are identical in order and timing. Perfect. No headaches.

 

At some point in time the algorithm was changed to "outsmart" the user during MIDI export ... 🙁  
On my X2 a program change e.g. at 1:01:010  disappears to the track header as well as the first cc7. No longer in the event list, only visible in the inspector - so presumably shifted in time to 1:01:000
Cake-003.png.be56d9e6a4aaabf15cdf71c3f1b3f43b.png
Cake-004.png.d210eeae2a5ab74f88499c8bd62fcce7.png
Compare Cake-003.png and Cake-004.png: the cc7 at 2:01:010 disappears from the event list, (presumably technically shifted to 1:01:000)


That sucks.   Why ?

Because *.mid is the go-to format for live performances. That's where you clearly shouldn't mess with timings.

For multitimbral hardware synths as well as for external hosts such as Cantabile or VSTHost and the like ... the timing of events matters. 
E. g.  FIRST  you load a performance, containing the overall setup,  THEN  you switch the synths contained in the performance to the desired sounds,  THEN  you set your volume, pan, reverb via cc, syx,  THEN  you start triggering notes ...

Absolutely logical & works reliably when corresponding loading times are considered appropriately . This is achieved by setting all commands (program change, cc ..) in the correct order at the correct point in time of your file (e.g. extra setup measure).


Unless ... your beloved DAW unnecessarily messes things up ... by overruling the user, shifting commands to time codes  it  thinks are "smart" ...
That's unfortunately what the actual versions of Cakewalk do when you save to a *.mid file. 

The algorithm's outsmarting seems to become worse over time ...

In the most recent Cakewalk version even a program change at the end of the song is deleted completely, if no other events are following.
Cake-005.thumb.png.387c440e81d60c1f51e14616bb7aa3d8.pngCake-006.thumb.png.6d40db908a84f9b01cb5d54c1a8416ff.png
Compare Cake-005.png and Cake-006.png; not only the program change at the track start is removed from the event list, but the program change at the end, too.

But there was a reason for that .. program change: at the end of the song you might want to switch your reverb unit to a "dry" program. It is a necessity in a live situation to turn off your reverb in between songs for normal communication. Another example: you might want to switch a synth to a program used in the next song ...

So Cakewalk again and again overrules deliberate, thoughtful commands set by the user with what a lonesome programmer 😉 ... thinks is smart - but really isn't. 

 

Hence the question: how can I gain control over my work & decisions again and switch the unwanted, destructive outsmarting off ?

As a workaround you can outsmart the sequencer's outsmarting by inserting additional cc and program changes - but this double-double-crossing is ... annoying extra work & testing. I'd rather have the best DAW ever not acting like a smartass and I'd rather not fight with it over artificial changes ... 


Any hidden knowledge out there ? Maybe  TTSSEQ.INI ?

Thanks a lot for any replies addressing a technical solution.

Edited by Richie_01
accidentaly inserted a picture twice ... just ignore ...
  • Like 2
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...