The MIDI Forum

  1. Steve
  2. MIDI Specifications
  3. Saturday, 17 August 2019
  4.  Subscribe via email
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:

https://i.imgur.com/bjW9k2t.png

It looks like this in CalkWalk:

https://i.imgur.com/a2o1ddd.png

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!
Comment
There are no comments made yet.
Accepted Answer Pending Moderation
0
Votes
Undo
CC 38 is the Data Entry LSB.

What do you mean by "The 104 it throwing the setting off."?
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 1
Accepted Answer Pending Moderation
0
Votes
Undo
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.
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 2
Accepted Answer Pending Moderation
0
Votes
Undo
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.
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 3
Accepted Answer Pending Moderation
0
Votes
Undo
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?
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 4
Accepted Answer Pending Moderation
0
Votes
Undo
you have to set it to 3 * 128 +104 to change the pitch-bend 3 semitones.

No you don't. Who told you that?
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 5
  • Page :
  • 1


There are no replies made for this post yet.
Be one of the first to reply to this post!