Logic Pro 9 Midi program change...how?


New to Logic midi sequencing.
I'd like to insert midi program changes, ie sounds/patches, into my midi sequences.
I read the manual, (pg 245...247) but could not follow, tho it seems easy.

I see the my list view of midi events, and could probably do it manually, but...
how do I know the bank and program #'s for patches from my mixer channel drop down menus?, and..is there a way to set the line bar to a given beat position, and , voila!...press a button and have a selected patch inserted as a change?

I figured out how to do this on my Roland Fantom sequencer...but can't grasp the procedure on Logic.

Logic pro 9....macbook pro
Thanks for any help
Welcome to the forum!

Here is a screen shot for you to consider. There are three windows open: the arrange, the MIDI event list, and the hyper editor.


  • prg_chng_ex1.jpg
    47.8 KB · Views: 280
Upvote 0
Logic allows you to edit the default General MIDI program names. When you use the hyper editor or MIDI event list to enter program change information, you will bring up the default GM names, unless you manually rename them.

The second screen shot above shows the Logic environment window, after a newly added "multi-instrument" has been inserted in the "MIDI instruments" layer. When you click on the the "multi-inst" icon, you will see the full list of GM program names, any of which may be renamed (by double-clicking, etc.).
Upvote 0
The first screen shot above shows a small arrange window, with the hyper-editor tab highlighted, and the "Program change" lane selected.

Note that the hyper editor window has been greatly enlarged, so you can easily work with the wide vertical bar. As you click-hold the bar, you can select any of the 128 different MIDI programs. If you are not using General MIDI, and you have renamed your programs, the correct names will pop up.

The MIDI event list is sitting on top of the arrange window. The "Notes" tab is highlighted, so you will only see the program change information. You can use copy-paste to add additional program changes in different sections of your MIDI regions. The reference manual should explain how the numbers work. This initial program change is at the beginning, but additional program changes may be placed anywhere. If your program change is at bar 17, you only have to enter 17, Logic will add the detail.

If you click-hold the program number (in the MIDI event list), the corresponding program names will appear. If you click hold the bar in the program change lane of the hyper editor, the program name and number will update in the MIDI event list once you release the mouse.

Sometimes program changes can be used to accomplish articulation changes.

I will add here that there is a recent thread ("Changing from staccato to legato, etc") in which CSeye details using CC messages to accomplish articulation changes. My example is different, as I use external MIDI instruments or standalone samplers like Kontakt.

A third technique involves storing articulations in Logic's MIDI (arrange window) folders, and triggering with MIDI channels. However, Kontakt uses program change information to switch articulations, allowing a single MIDI channel to carry many different (up to 128) articulations.
Upvote 0


Program change insertion in list view

Thanks for all that detailed answer.
I followed it all, got to the environment window, found the GM sounds chart, etc, and figured out how to use the H-ed program track to insert a GM patch change withing the list view pulldown.

But....what I really want to do, is find the Bank/Program #'s for my sounds that are not GM. I have highlighted my arrange track, say channel 5, that has "Warm Strings" , selected from the 07 Pop Strings category in the pull down menu of the mixer channel. This , plus Logic Instruments, GarageBand sounds, 11 World, etc, were loaded with my LogicPro 9 program at the start.
How do I find the Bank/Program # for this sound, and insert it , manually I guess) into a program change slot in the list view?. I know I can put a change there, via the H-ed, with a temporary GM sound, just to get an instruction inserted, then , hopefully , change the #'s.

I think the above is possible because my Roland Fantom has #'s for every sound, Bank (sometimes MSB and LSB) then a program (patch) #. GM sounds all seem to have 121 as Bank#, but others have different #'s. I have to manually insert both #'s into my sequences as program change instructions to get a patch change during a song....but it works, with any sound I select.

How to do this on Logic?
Another mystery. On the Logic list, if I do have a program change, the val column is the GM patch #, with a default "+" in the Num column, but I can look at pull down #'s in the Num column, which have 1-128 as the first #, then the patch # as the second. Weird. Not sure what's being indicated here.

Juan, or any other responder: Thanks for any answer.

Upvote 0
I am not sure I understand your question. If you are using one of Logic's VIs, such as the EXS24, I am sure it would have a facility to change programs or articulations...but I rarely do any serious programming with the EXS24.

On the other hand, if you are using an external instrument, such as your Fantom, you would create your own "multi-intrument" in the "MIDI instruments" layer of Logic's environment. After you do that (ask if you need assistance), double-click in the parameter box to rename your new "multi-inst" from the default to "Fantom." Then, double-click on the multi-instrument icon that you created (its name will have changed to "Fantom") to load the GM default names. Rename these to match your Fantom patch names. You will, of course, need to find those names in the Fantom manual, I assume they would be there or you could download it/them from the Roland site.

When you create a multi-inst, it defaults to having all 16 channels off. Click on each of the 16 little squares (in the icon) to activate all the MIDI channels. The "slashes" will disappear.

Then, create a MIDI track. You should be able to right-click in the MIDI track and pick "re-assign" -- choose the "Fantom" instrument you created -- and then proceed as first stated above to enable your program changes.

It would have been difficult to explain the entire procedure at once, which is why I waited for a response from you.
Upvote 0


Hey Juan. A couple of days later here.
Thanks for staying with this issue.
No, I'm not using my Fantom as a sound source. \
It does have a bank and program # for every one of it's sounds (2000?), so I thought maybe Logic would work the same, but now I realized that the Logic sounds come from various software instruments, each of which , could have a numbering system, I suppose. I looked at the vst instruments that came with the program, and could not find a program numbering system. Maybe it's there....still looking.
In the meantime, a friend suggested a work around: just have any new instrument have it's own channel, ....ie, don't worry about inserting program changes within a track sequence. Works for now.

Lifelong learning is the odyssey.
Upvote 0
Maybe you asked what time it is, and I told you how to build a watch...not sure.

Logic has a straightforward method to select patches. There are numerous answers to the topic, but maybe this screen shot will get you closer to where you want to go. Start with the orange arrow on the left of the screen and keep pressing the mouse until you find the patch you want to load.


  • patch_selection.jpg
    65.2 KB · Views: 135
Upvote 0


Hey Juan, again.
Followed your arrows, but this just lets me change a program on a given track. No problem there. Still can't get to any patch #'s (bank, program), except the 128 default GM sounds.

But...life goes on. I'll figure it out someday, or live w/o it.
Thanks for all your responses.
Not sure how, but if you'd like to hear one of my miraculous midi tunes....after, all, that's what all this tech-technique talk is all about....let me know how I can do this.
I welcome feedback, good/bad.
Upvote 0
1) how do I know the bank and program #'s for patches from my mixer channel drop down menus?

2) and..is there a way to set the line bar to a given beat position, and , voila!...press a button and have a selected patch inserted as a change?

Correct me if I am wrong, but I think I explained part 2 of your original question.

Part 1 sounds to me like you would like a printout of the correlation between the "pop-up" sounds included with Logic and their equivalent "program numbers."

If you would be so kind as to give me an example of three patches you would like to insert on a given MIDI track, I would like to dig a little deeper into this.

What you are asking is straightforward in linking Logic with a program such as Kontakt, and I did start a thread regarding it in the "Studio Techniques" section of the forum.

You can share your creations by uploading or providing links in the "LUG Media Station" area of the forum.
Upvote 0


Hey Juan. Once again, thanks for pursuing this question thru all my confusion.
I looked up your "Studio Techniques" posting....interesting, but I really don't want to get that involved, with "Kontact" etc

You asked if I could provide 3 patches for which I'm searching for patch #'s , to be inserted into the list view, so a sequence can automatically switch sounds within a song.

Here's three patches, stock to Logic Pro 9, that I would like to find patch #'s for.
Analog moog Lead, under 06 Synthesizers ES2 vst instrument
Chourused Electric Piano under 05 Keyboards EVP88 vst instrument
Warm String Section under 07 Pop Strings EXS24 instrument

I can get to the the environment page, which shows default GM patches, then try to scroll down a new multi-instrument, but I don't get a choice of above instruments.

Also, if I go the websites of above instruments, can't find any patch list with associated bank #'s, etc.

Am I crazy, have you already shown this ? Somehow I'm missing it all.
Plus, thru your search of the "Studio Techniques", it seems to me you're searching for a solution to the same issue, tho, thru a more complicated process.

Anyway...If you post again, thanks. I'm going to back off the issue. Either discover the "easy" method later, or do without.
Thanks for all your input. I've learned alot just following your directions.
Upvote 0
...it seems to me you're searching for a solution to the same issue, tho, thru a more complicated process...

You are correct. The difference is I am interested in authentic samples of orchestral sounds, and Kontakt does those very well. Plus I have an existing library of samples that need to be converted from archaic formats.

Learning the basics of Logic for me was uphill, and I ran out of inspiration before I played around with the EXS24. But there are many who are happy with it. I have loaded the stock orchestral sounds that come with Logic, but to me they blur together and create the impression of a seventies vintage electronic organ rather than live musicians. Hence my acquisition of Kontakt, which comes with samples from the Vienna Orchestral Library.

But none of this means I want to abandon the intricacies of Logic. I prepared ensemble scores by hand while in college, and literally got writer's cramp. I had to hire a copyist to write out the individual player's parts, so they would be ready in time for the rehearsals. Consequently, I am totally behind any incremental progress made with notation programs.

I did notice when I loaded the cello sound from the Logic hierarchy pop-up, that the general MIDI numbering of 43 (or 42 or 41) superimposed on the MIDI region in the individual track of the arrange window. Otherwise, I will just proceed by trial and error.
Upvote 0
I loaded your three instruments, but did not see the "program change" checkbox. I presume the included Logic instruments are not multi-timbral, that is, you would have to create separate tracks as your friend suggested.

When you create a new multi-instrument in the environment (and enable its 16 channels), Logic provides the program change facility. But then you lose access to the Logic instruments.

Which is why I went with Kontakt. Possibly someone knows better than I...
Upvote 0