Jump to content

General MIDI Assignment of Instrument to TTS-1?


dalemccl

Recommended Posts

After more than ten years of not doing anything with music, I am back using Cakewalk (was Sonar back when I was using it before.)  Seems I have forgotten a lot about Cakewalk in those 10 years . 

I have a lot of type 1 General MIDI files I had downloaded from internet MIDI file websites in those days.  When I play them now with TTS-1  loaded, the instruments for each track are automatically assigned to TTS-1, so it sounds right when I play it.  My recollection from the old days is that GM MIDI files had a patch change event at the beginning of each track to tell a GM-compliant hardware sound module, or vsti, which instruments to assign.

But when I look at the event list for each track, there are no patch change events shown. (All event types, including Patch Change, are checked in the Event Manager).

How else could these GM MIDI files be telling TTS-1 which patch/instrument to use for each track?

Thanks.

 

 

Edited by dalemccl
Link to comment
Share on other sites

The type 1 GM MIDI files can contain bank/patch info on each track, which is what points TTS-1 to the planned instrument, just like the channel & volume, etc. is set initially as well.

The event list info is also still helpful, because many MIDI files also contain individual programming messages that will then override the initial track settings.

Link to comment
Share on other sites

5 minutes ago, JnTuneTech said:

The type 1 GM MIDI files can contain bank/patch info on each track, which is what points TTS-1 to the planned instrument, just like the channel & volume, etc. is set initially as well.

The event list info is also still helpful, because many MIDI files also contain individual programming messages that will then override the initial track settings.

Thanks.  I see the volume events, as well as chorus and reverb events, at the beginning of each MIDI track.  But there are no bank/patch events in any track. Yet TTS-1 knows which instruments/patches to play.  In the absence of bank/patch events, is there some other way the MIDI file could be telling TTS-1 which instruments to assign?

Link to comment
Share on other sites

I guess I should have said it better - sorry!  -In type 1 GM MIDI files, the tracks themselves are defining the initial data for the bank/patch, volume, pan, and so forth. -Any of the things you see in the Cakewalk MIDI track control section itself. -So, they are not actually events that will be shown by event view, though perhaps there is a utility somewhere that can show that data, I am not sure, as I just use the track controls to tell me what those values are when I first load the MIDI file.

There are other ways to add/change the initial settings (events) that the track(s) themselves define on loading, but that didn't seem to be what you are asking?  As I say, initially, the track settings from the GM MIDI file are what tells TTS-1 how to start, and again, those aren't shown in the event view.

-Ongoing events in the track (as can be seen in event viewer, for instance) are those that happen after the initial per-track GM information. -In addition, there can be attached sysex data events, which generally apply to initializing a specific MIDI device, and so on, and I rarely let those pass through to TTS-1 (I delete them).

 

So basically, it's hierarchical - track data sets the initial instrument (bank/patch),along with volume, pan & so forth, and then any changes thereafter are implied in values - along with notes of course, that come along in the time information of the tracking.

Cakewalk MIDI track controls generally cover all the GM settings that apply to initial track data information that can be recalled, as well as of course modified and saved/exported again. -If I recall properly,, type 1 GM MIDI specifies a separate track for each "instrument" - which I think is also determined/linked to the track channel, starting from 1 thru 16 - as opposed to GM type 0, which just puts all information into one "track". Some other standards are generally used, as channel 10 data is typically drums or percussion, etc.  -Search the Web for GM MIDI Type 1 specifications, and it should be much more thorough - but I hope this helps!

Edited by JnTuneTech
clarifying - hopefully!
  • Like 1
Link to comment
Share on other sites

FWIW - It should also be helpful to know that tracking MIDI using a DAW like Cakewalk can be somewhat confusing if you forget the internal possibilities of MIDI files themselves. Older GM MIDI files can contain information that won't initially be obvious to a casual load & playback with a GM synth (virtual or otherwise). -Depending on your workflow & preferences, you may want to switch to using Cakewalk-style MIDI tracking completely, rather than using the MIDI embedded control information, -or vice-versa, -again it depends on your preferences.

Typically, in my workflow for instance: I will take a "look" at a GM MIDI file I have downloaded (scary thing to do nowadays though, -but I digress) by opening the file directly from the project file-open function of Cakewalk. -If it opens properly, a type 1 GM formatted file will present 1 or more tracks, each having a separate channel and possible output routing (p.s. there can be more than 16, and in those cases, a separate instance of a GM synth, such as TTS-1 is advised for each group of 16 tracks - or duplicate channels, etc.). If it looks like something I may be interested in, I will do a "save as" and thus convert the opened file into a Cakewalk project.

After that, I usually add TTS-1 as an instrument (I prefer to load it separately, and then retroactively assign the MIDI tracks, but that is by choice) in Cakewalk. -Tip 1 - TTS-1 track volume can be louder than comfortable with many MIDI files, so I start with pulling the fader on the TTS-1 down a bit-FYI.  -Then, I click-select any of the MIDI tracks I want to preview, one by one while holding down the ctrl key (on PC), and while still holding down the ctrl key, select the output of that final selected track to point to the TTS-1.

-At that point, you can usually start playing the file, and you can preview the initial results.

From there - I usually use Event Viewer to see what MIDI control events are present, -if any, other than note and pedal events are embedded (that will all vary depending on your tastes & needs), I usually delete the non-performance elements - again, per preference. Often, I will also "sanitize" the MIDI further by exporting the "cleaned up" version I have created as a new type 1 MIDI file, which can then be imported into a Cakewalk project/template, although without tempo or time changes, etc.

My goal usually is to make the downloaded MIDI tracks set up as performance-customizable as possible - so that I can then use more graphical controls in Cakewalk tracking, such as envelopes, and to clean up anything that might get in the way of creating clips & copying parts, etc.  -There are mix-and-match methods too, but I find simplest is best in the long run. Usually, if I find a MIDI track that seems to have odd playback issues on a VST synth, for instance, it is often related to embedded MIDI commands that you can't always "see" right away in track or PRV.  -FWIW.

Edited by JnTuneTech
Sppp...pelling!
  • Great Idea 1
Link to comment
Share on other sites

I’ve worked with lots of midi download files. It’s the first place I’ll look for a cover song. 
The trick is to make sure nothing is selected in Midi preferences for device outputs. Then you just open the file  and the TTs1 will load up with the midi tracks 1 to 16 assigned to correct channels 99% of the time it plays exactly as intended it should by the creator. 
If I’m keeping it I immediately save as a normal CWP file 
They usually sound awful at first because of the badly done guitar parts and useless guide vocals. I just mute that and see if the bass and drums are correct. Often drums and bass were generated by Band in aBox so are totally wrong.
But I often get lucky and those I will keep and rework them by replacing all the instruments with proper stuff. 
First stop is the event list uncheck the notes and then delete most of what is there. Of course you need to understand what you are looking at. 

I will also try and change all the bank and patch assignments to “ none” in the track header so the new instruments don’t use them. 
Then I fix stuff in the bass and drums I don’t like and the see what I can use from the rest. I’ll often take one of those terrible guitars and assign it to a electric piano instead. 

Edited by John Vere
Link to comment
Share on other sites

1 hour ago, John Vere said:

They usually sound awful at first

Too true, and often they are useless to even salvage anything from! -But every so often, some are very meticulously arranged, and I am amazed to find them offered up for free - much like Cakewalk here! -My best batch (I am still sorting through them now & then) comes from downloads I found in the later 90's - early 2000's (ouch!) - and I have stopped searching for them now because of the ridiculous amount of scams & misdirection, data collection, and of course malware linked to searching anything "free".

Well done ones can be so helpful. There are also vendors who sell MIDI arrangements, I have used a few from MIDI-Hits, and they used to supply .wrk file formats for Cakewalk, but I had several terrible renditions they sold that put me off.   Anyway - Unless you are trying to cover something like Rush or ELP, a basic drum, bass & piano arrangement with at least proper timing, structure, and key can help save time, and even teach a bit.  -The better ones can make up for not having an expert keyboard player (I am not), and save time setting up drum tracks, etc.

At one time (again, ouch), I started using Cakewalk (Sonar) to transcribe parts in printed songbooks to MIDI, using the staff view. I still use those tracks now & again, but I doubt I could go that way now, too tedious!  But sometimes it also helps to have a MIDI transcription to learn & play along with - by using the staff view as it plays along with the tracking (yes, I know staff view is not all that, but then again, neither is my ability to read printed music). I bet it could be helpful with teaching, -that is, if they continue to teach music in schools anyway..  But again, -I digress!

  • Like 1
Link to comment
Share on other sites

Side comment, since this was touched on and not sure what the OP is pursuing... There have been so many advances in things in the last decade that relying on an accurate MIDI file is almost a thing of the past, primarily because of Melodyne. In the old days the MIDI tracks would often need to be routed to an external VSTi (although using TTS-1 to initially separate it was a good choice) and you were totally locked in to the (in)accuracy of the MIDI creator; but nowadays you can run an original commercial copy through track separation (iZotope RX or Steinberg SpectraLayers) and then drag/drop those stems on a MIDI track to let Melodyne convert them. There is often a lot of touch up required afterward (further track separation, VSTi inserts, error corrections, etc.), but you also have the advantage of having the original commercial copy in the project to work against (I leave it as track 1 and mute/unmute as needed), and since that was your source, all tempo/key changes are retained in the audio->MIDI conversions (shift+drag clips to new lanes to preserve timing positions).

Link to comment
Share on other sites

When you load a MIDI file into Cakewalk, the first volume, pan and bank/program change for each track is transferred to the track properties. 

As they've been transferred to the track properties, you won't see them in the event list, but you can edit them via the track inspector.  Any further pan/volume/bank select/program changes in the track will appear in the event list.

When you export/save as a MIDI file, the volume/pan/bank select/program changes that were transferred to the tracks will be added as MIDI events at the beginning of the MIDI file.

The most common workflow for users is to start with a MIDI file, then continue as a Cakewalk (CWP) project, so it makes more sense to reflect these in the track properties rather than having to edit MIDI events in the event list.

For more details, refer to the Reference Guide PDF (page 1455).

  • Like 2
Link to comment
Share on other sites

@mettelus  Yes there are now ways to try and separate a song into stems but the tools that might work are expensive.  Then it depends on the recording. 
But your mention of this is actually one of my new ways to create cover songs using the original as the template.
The results have been better tracks for me than using downloaded files . 
I record the song into Cakewalk and drag it to the timeline . This creates the all important tempo map . I might have to edit the tempo map. Then I rebuild the song by playing the parts. I use real bass first and then convert that to midi . I’ll also lay down a simple piano part to anchor the chords even if it’s not required for the song. 
I also have gleaned useful drums using drum replacer.  If your lucky you can at least extract the kick and snare 

 

 

Link to comment
Share on other sites

13 hours ago, mettelus said:

an accurate MIDI file is almost a thing of the past, primarily because of Melodyne.

Well... in my experiences anyway - Melodyne is usually only partially right, even with the newest versions and CbB. -At least it is fast, so I can do it quickly, then open the Cakewalk tempo track view, to see where it got lost. And don't get me started about how it decides the BPM, especially on any track with multiple time changes. -And if your subject material has very little or no rhythmic transients... I could go on, but suffice to say it is different with every track I have done so far.

The suggestions about running track separation algorithms is interesting, -thank you for that. I would have to see if the time and resources it takes to do that as you excellently point out, would truly be worth it. As of this writing, I have yet to see any audio extraction capable of pulling a full & accurate piano chart out of the middle of a mixed commercial track, nor converting the orchestral pieces in the backing track of the same into a useable MIDI arrangement. -Maybe someone like Giles Martin can almost do it in an expensive professional studio (read up on the latest reconstructions that have been made of Beatles archives, for instance) , but well, for me, not quite. -Now, of course, as time goes on, and tools such as AI and ever-increasing processing power become available for folks like me, that may change, -to be sure.

For now though, most of the time I do actually get useable tempo extraction from Melodyne, and/or one of several methods available in Cakewalk, and combining that with an accurate MIDI transcription, and plain old manual entry (wow - actually playing an instrument - no way!), it's quite easy to cover an existing tune reasonably well, and as mentioned, also have the original on the tracking to refer to when needed. Of course, the more complex the material, the more work it takes, but that is part and parcel, as they say. -But hey, all good suggestions here, no question about that! And using TTS-1 to get a rough draft of a MIDI arrangement can be very useful to some of us, but if it's not your thing, -carry on!

Link to comment
Share on other sites

8 hours ago, John Vere said:

Then it depends on the recording. 

Therein lies much of the real challenge. Another point to keep in mind is that stem separation often defaults to five stems (some let you dig deeper). A "trick" here (especially if you want MIDI to drive a VSTi), is that the "audio quality" of that temporary stem can be destroyed for the sake of MIDI extraction. Example, aggressively removing harmonics, reverbs (high end), and inserting audio microscopes on fundamental frequencies. Audibly this now sounds like crap, but has very defined transients and frequencies for Melodyne to extract MIDI better (bake the changes into that temp stem so the CPU doesn't freak if you do an entire stem conversion). Even then you are going to need to edit the MIDI (velocities will be way off, but relative velocity might be good). For audio->midi conversion, aggressive EQ (always do this on a temp copy) can be your friend.

Link to comment
Share on other sites

  • 4 weeks later...

Hi - I'm a first-time poster.

Like dalemccl I'm an ex-Sonar user trying to get into Cakewalk-by-Bandlab after a long absence.

I don't understand why Cakewalk now blocks user access to some normal MIDI events like some initial program and bank changes (and who knows how many others?), but it at least explains some of my recent frustrations. I've always spaced out MIDI events a little to work with marginal hardware (e.g. some MIDI interfaces and processors, TC Helicon harmonizers, DMX512 or especially MIDI mergers), but that's all now a bit flakey.

I also can no longer open a MIDI file, have it play using an SYXG50 VSTi, fix a few events and exit all within a minute or so. I've watched endless Youtube videos just to get any sound out of my MIDI files on Cakewalk, and even then, most don't relate to the latest Cakewalk. But John Vere's tip (above) has at least let me hear MIDI files (albeit using the TTS-1 VSTi), so hopefully I can work from there to replace it with the SYXG50.

There are a lot more topics also discussed above which sound very worthy of further investigation - so my thanks to all contributors here in this oasis of useful tips. Are there any other places where out-of-touch users like me can learn more to make our time with Cakewalk more productive?

Thanks,

Tony

 

  • Like 1
Link to comment
Share on other sites

13 hours ago, user6994586481375366 said:

thanks to all contributors here in this oasis of useful tips. Are there any other places where out-of-touch users like me can learn more to make our time with Cakewalk more productive?

Glad that you find it useful, as many of us do. -As to other places, I still find trying things out in the DAW itself is one of the most productive things I can do to learn, and heck it's free, nothing blocking that. Then, if there are any other specific questions that come to mind, don't hesitate to start a topic here!

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...