But the CC messages are not standardized and global for any synth right?
Only general midi is but roland,yamaha,alesis,korg etc. all have different extend midi CC messages so u can't automate gloabally or standardize right?
Yes and no. There is a general chart:
Appendix A-Midi Charts
MIDI Controllers: MIDI Implementation:
Number Definition Parameter
0 Bank Select 0-127
1 Modulation Wheel 0-127
2 Breath Control 0-127
3 Undefined 0-127
4 Foot Controller 0-127
5 Portamento Time 0-127
6 Data Entry 0-127
7 Channel Volume 0-127
8 Balance 0-127
9 Undefined 0-127
10 Pan 0-127
11 Expression Controller 0-127
12 Effect Control 1 0-127
13 Effect Control 2 0-127
14 Undefined 0-127
15 Undefined 0-127
16 General Purpose Controller #1 0-127
17 General Purpose Controller #2 0-127
18 General Purpose Controller #3 0-127
19 General Purpose Controller #4 0-127
20-31 Undefined 0-127
32-63 LSB Controllers (0~31) 0-127
64 Damper Pedal on/off (sustain) 0-127
65 Portamento on/off <63=off; >64=on
66 Sustenuto on/off <63=off; >64=on
67 Soft Pedal on/off <63=off; >64=on
68 Legato Footswitch <63=off; >64=on
69 Hold 2 <63=off; >64=on
70 Sound Controller 1 0-127
71 Sound Controller 2 (Resonance) 0-127
72 Sound Controller 3 (Release Time) 0-127
73 Sound Controller 4 (Attack Time) 0-127
74 Sound Controller 5 (Cutoff) 0-127
75 Sound Controller 6 (Decay Time) 0-127
76 Sound Controller 7 (Vibrato Rate) 0-127
77 Sound Controller 8 (Vibrato Depth) 0-127
78 Sound Controller 9 (Vibrato Delay) 0-127
79 Sound Controller 10 0-127
80 General Purpose Controller #5 0-127
81 General Purpose Controller #6 0-127
82 General Purpose Controller #7 0-127
83 General Purpose Controller #8 0-127
84 Portamento Control 0-127
85-90 Undefined 0-127
Every company uses the general purpose ones (and others) set to whatever they like and generally respond to the assigned ones as expected. Most newer keyboards will use CC's for the basic things and have more complex parameter changes sent as sysex since that allows for more than 128 values Look at the midi implantation chart to see what the keyboard responds to
CC assignments were part of the Midi 1.0 spec. Roland introduced GM as a response to the fact that there was no set instrument assignments covered in the original spec so what they proposed was a set sound set based on standardized patch numbers (i.e. patch 1 = bass, patch 2= piano etc) so a trumpet sound patch on one synth would have the patch# as a trumpet patch on an other synth.
GM also covers midi synth multitiberality, assigning different midi channels to different instruments. Drums on midi channel 10 for instance