• SONAR
  • [Solved] How do I mass modify a MIDI channel?
2016/02/03 19:19:07
jyoung60
I'll try to make this brief, lol. I need to change the MIDI channel assignment of one track.  It is currently 10 and it needs to be 11.
Yes, I can set it in the track settings, and the help docs say this about that:
This parameter does not affect the channel information that is stored with each MIDI event. When the track is displayed in other views, like the Piano Roll or Event List view, you will see the original channel that is stored in the file.

 
However, I want the channel to be actually changed, not simply overridden by a setting.
 
The documentation goes on to say:
You can edit the channel values in those views or use the Process > Find/Change command.

 
So I select the entire track that needs to be changed,
then go to Process > Find/Change
A window comes up that I have no clue how to use, lol.
So I take a stab and enter the number 11 in the channel boxes under "All Non-Special Events".
Click OK.
Nothing happens.
 
In the event list everything is still at channel 10.
 
Can someone point out where I turned left instead of right?
2016/02/03 20:00:25
tenfoot
Hey Jyoung60.
 
This may not help you, but I believe the channel listed on individual events in the track listing is just the channel that was transmitted by your controler when you recorded the track. Once you set a track output chanel, it is competely meaningless. There really is no need to worry about it.
 
Someone with more experience than I may have more to say.
Best regards.
 
2016/02/03 20:33:42
gbowling
Yes, you can do it with the find/change command. When you did it you were trying to "Find" everything that was channel 11, and there isn't any. Here's what to do.
 
- select your track
- do the process>find/change command
 
The cluttered screen that comes up should have everything check by default with all the ranges defined. Basically what that is, is a "find" screen. If you leave the default, with everything checked and all the ranges, all the channels, it finds everything in the track, which is what you want.  So click "OK"
 
The next screen looks similar but with some things grayed out. What you want to change on that screen is under ALL Non Special Events section under "Channel"
 
What you want to do there is put the min AND the max to be whatever channel you want it to be. If the original is channel 10 and you want it to be channel 11. Put 11 in the min box and also put 11 in the max box.
 
So the first time that cluttered box comes up, it's the "find" box. Once you set what to find and click OK.. Then it becomes the "change" box. Hence the "find/change" command. Find everything, only change the min/max on the channel is what you want.
 
gabo
2016/02/03 20:39:47
garrigus
2016/02/03 21:37:22
jyoung60
garrigus
You should be able to do that with the Event Inspector. Check out this video...
https://www.youtube.com/watch?v=Ixb8gIcGM-U&index=3&list=PLFdNhPVD03KCTxKOWpz8tfzCMbWfXASJS


 
BINGO!!  I was going to try gbowling's suggestion and mark it as the answer (if it worked, and most likely would have), but this one totally is the way to go. 
 
One thing to mention:  The YouTube video is a few years old now, and access to the Event Inspector has changed. It is now accessible in the Control Bar; far right under the section marked Events.  Other than that, spot on! Thank you!
 
 
2016/02/04 20:33:18
icontakt
jyoung60
garrigus
You should be able to do that with the Event Inspector. Check out this video...
https://www.youtube.com/watch?v=Ixb8gIcGM-U&index=3&list=PLFdNhPVD03KCTxKOWpz8tfzCMbWfXASJS


 
BINGO!!  I was going to try gbowling's suggestion and mark it as the answer (if it worked, and most likely would have), but this one totally is the way to go. 


 
Note that the Event Inspector method only works with note events. If the track contains controller events (e.g. pitchwheel, aftertouch), use Find/Change.
2016/02/04 21:16:19
jyoung60
icontakt
Note that the Event Inspector method only works with note events. If the track contains controller events (e.g. pitchwheel, aftertouch), use Find/Change.



Yes, I found that out quickly, lol.  Luckily this particular track had very few controller events, so I hand-edited them. But thanks for pointing it out, others will benefit. :-)
2016/02/06 03:47:15
williamcopper
Because I have to do this very frequently, I wrote a simple cal program to do it.   It applies to whatever is currently selected, so select your track(s), clip(s) or whatever.   Midi only.
 
Just put the following in notepad or some text editor, give it a name, put it in your CAL scripts location, then you can access it with CTL-F1 (or assign it to a single character, for a short cut).   Careful to have no extra spaces after the ( parens.
=========
(do
  (include "need20.cal")
  (int new_chan 1)
  (int i 0 )
  (getInt new_chan "New Midi Channel: " 1 16 )
  (-= new_chan 1 )
  (forEachEvent
     (do
         (= Event.Chan new_chan )
         (++ i)
     )
   )
   (pause "Adjusted " i " channel events. ")
)
 
2016/02/06 07:33:11
tenfoot
I have never had to change this setting. Could I ask what may well be a stupid question - what practical purpose does changing this setting rather than the channel output serve? Even if the midi data is to be used outside of Sonar, the correct channel will be stored when you export as a midi file won't it?
 
Just curious as always good to learn a new trick!
2016/02/06 08:00:36
jyoung60
tenfoot
...what practical purpose does changing this setting rather than the channel output serve? Even if the midi data is to be used outside of Sonar, the correct channel will be stored when you export as a midi file won't it?


For me personally, when working with the Event List, I like having a visual cue of which channel I'm working with rather than try to remember what it might have been changed to. Throw in a bit of OCD and my reasoning is complete, lol.
12
© 2026 APG vNext Commercial Version 5.1

Use My Existing Forum Account

Use My Social Media Account