fbpx
Skip to main content

MIDI Forum

What does MIDI cont...
 
Notifications
Clear all

What does MIDI controller/value 38 104 do?

6 Posts
3 Users
0 Reactions
14 K Views
Steve
Posts: 3
Active Member
Topic starter
 

Does anyone know what MIDI control/value 38 104 does?

I created a MIDI file and changed the pitch bend range one octave. It looks like this in Record Producer:

It looks like this in CalkWalk:

Note that 1640 is 12 * 128 + 104. The 104 it throwing the setting off.

I dumped the file using mf2tXP and got this:

MFile 1 3 480
MTrk
0 Meta SeqName "untitled"
0 TimeSig 4/4 24 8
0 KeySig 0 major
0 Tempo 500000
0 Meta TrkEnd
TrkEnd
MTrk
0 Meta TrkName "Track 1"
0 PrCh ch=1 p=56
0 Par ch=1 c=7 v=127
0 Par ch=1 c=101 v=0
1 Par ch=1 c=100 v=0
2 Par ch=1 c=6 v=12
3 Par ch=1 c=38 v=104
3 On ch=1 n=60 v=127
1940 Pb ch=1 v=8192

So what is that 38 104 doing?

Thanks!

 
Posted : 17/08/2019 7:33 am
Eddie Lotter
Posts: 295
Reputable Member
 

CC 38 is the Data Entry LSB.

What do you mean by "The 104 it throwing the setting off."?

 
Posted : 17/08/2019 10:54 am
Bavi_H
Posts: 267
Reputable Member
 

Pitch Bend Sensitivity is a "Registered Parameter" -- it is Registered Parameter Number (RPN) zero.

To change a Registered Parameter, you send four Control Change messages. Two messages select the Registered Parameter Number, and two more messages change the value of the parameter. For Pitch Bend Sensitivity you use the following:

Controller 101 (Registered Parameter Number MSB), value 0
Controller 100 (Registered Parameter Number LSB), value 0
Controller 6 (Data Entry MSB), value 0-127 semitones
Controller 38 (Data Entry LSB), value 0-127 cents

Record Producer is showing all four Control Change messages. Instead of showing the controller numbers, it is showing their names, except it doesn't know controller 38 is "Data Entry LSB".

Cakewalk is simplifying its Event List view by showing these four Control Change messages as one event. Instead of showing the RPN number of zero, it lists it as "Pitch Bend Sensitivity", and instead of showing the individual values of 12 and 104, it combined them into one value 1640 = 12 * 128 + 104.

1 cent is 0.01 semitone. So the values of 12 semitones and 104 cents combine to give you a pitch bend range of 13.04 semitones (1 octave and 1.04 semitones) up or down from center. To get exactly 1 octave up or down from center, you want to use the values of 12 semitones and 0 cents, or in Cakewalk's combined method 12 * 128 + 0 = 1536.

 
Posted : 17/08/2019 4:16 pm
Steve
Posts: 3
Active Member
Topic starter
 

What do you mean by "The 104 it throwing the setting off."?

Instead of entering 3 * 128 to change the pitch-bend to 3 semitones, you have to set it to 3 * 128 +104 to change the pitch-bend 3 semitones.

 
Posted : 17/08/2019 8:27 pm
Steve
Posts: 3
Active Member
Topic starter
 

and instead of showing the individual values of 12 and 104, it combined them into one value 1640 = 12 * 128 + 104.

Well. They shouldn't do that. It's stupid. I had to manually edit the file with another program to get the 104 out.

Any idea how the 104 got in there?

 
Posted : 17/08/2019 8:30 pm
Eddie Lotter
Posts: 295
Reputable Member
 

you have to set it to 3 * 128 +104 to change the pitch-bend 3 semitones.

No you don't. Who told you that?

 
Posted : 18/08/2019 8:09 am
Share: