Jump to content

Confused about pitch bend values vs. RPN (Pitch Bend Sens)


Dave G

Recommended Posts

I'm trying to learn the basics of drawing a pitch bend in the PRV controller pane and exactly how RPN (Pitch Bend Sensitivity) affects this.

I'd like clarification on how the pitch bend works, how far up/down it goes, what the values mean, and how the RPN affects pitch bend. Here are a few observations:

1) I load an RPN controller into the Controller Pane. The meter goes from 0 - 16,383.

2) I load a Wheel controller into the Controller Pane. The meter goes from -8,192 - 0 - 8,191.

I've tried Google searching and YouTube'ing for literally an hour, but still confused. What I've learned was that the Wheel controller offers a range of four notes/semitones (2 up, 2 down from 0). But I don't exactly know what RPN adjustment represents.

My questions:

1) What do the RPN and Wheel values equate to in regards to notes/semitones?

2) As an example, how would I draw a pitch bend/figure the values from a) one note to another and b) the same note on another octave?

3) How does the RPN affect pitch bend?

4) How do I know the Wheel value I've reached accurately represents the target note?

Attached is a sample image with both events going to approximately 4,096.

Any guidance is appreciated. Thanks! :)

EDIT: The RPN controller doesn't seem to work in SoundCenter, but it is very pronounced in TTS-1.

bend.JPG

Edited by Dave G
Link to comment
Share on other sites

The RPN (which is number 0) that controls the pitch bend is in steps of 128. Each 128 increment adjusts the pitch bend rage by a semi tone.  With most synths, the default range is 2 semi tones up and down.

Say you want the pitch bend to be 3 semi tones up and 3 semi tones down.  For this you would issue a RPN 0 value of 384.

Say you want the pitch bend to be 12 semi tones up and 12 semi tones down.  For this you would issue a RPN 0 value of 1536

So the formula is RPN  0  128 x semitones required.

Of course, this will only work if the synth you use responds correctly to the Roland GS or Yamaha XG standard.

You already correctly stated that the actual pitch bend values from -8,192 - 0 - 8,191.  This is necessary because of the higher resolution required for pitch bend - especially when using the higher ranges. 

  • Like 1
  • Thanks 2
Link to comment
Share on other sites

Dave, do you have a keyboard with a Pitch Bend and/or Mod Wheel on it?  My guess is no, which is why you are asking how to approximate it using the PRV.

But if you did have one, it's quite helpful to record some MIDI movement into your MIDI track of CbB, and then study the curves.  You can learn a lot from that.  Of course the curves are completely logical once you see how they appear based on the movement of the PB or Wheel, but it is quite helpful.

So, if you do not have a keyboard to study first hand, there is another great way of ascertaining this knowledge:

Download a free MIDI song that has a keyboard part that you are fully aware utilized PB and/or ModWheel in the performance, open that MIDI song with CbB, and then look at the MIDI curves in the track of that keyboard part!

The MIDI programmers for MIDI songs actually do a quite excellent job at perfecting these types of things.

Let me think for minute on a decent example for you to download.... I'll be back in a minute with a link.

  • Great Idea 1
Link to comment
Share on other sites

Okay... I think these 2 songs by Boston are super examples.  Both the  lead guitar AND keyboard parts (B3 organ) have Pitch Bend going on, especially during the bridge on both of these songs -- Smokin', and Hitch a Ride.

Here's a link to where you can download those song files for free so you can open them with your CbB DAW and begin studying the MIDI curves of said tracks.

https://www.midiworld.com/search/?q=boston

Edited by Toddskins
  • Like 1
Link to comment
Share on other sites

Thank you both for the concise explanation. I seem to understand that a wheel controller set to +8,191 increases by two semitones/notes. And RPN 1,536 allows the wheel to produce a full octave bend (12 semitones/notes).

I tested this by

  1. drawing a C4 note with a wheel +8,191 (two-note bend) at measure 2
  2. resetting the wheel to 0 at measure 3, and
  3. drawing a straight D4 note (two notes up, per C4) at measure 3.5.

Screenshot attached.

Remaining questions:

  • Is RPN only required if my bend Wheel requires more than two semitones/notes (+8,191 >)?
  • Does RPN 1,536 (12 semitones/notes) completely override the max bend Wheel setting of two semitones/notes?
  • Can one do a pitch bend of more than an octave if desired?

Thanks again.

Bend example.JPG

Edited by Dave G
Reworded questions, included image
Link to comment
Share on other sites

In any synths I have used there is a pitch  bend setting for range which can be set to different values--0 for no pitch bend, or any number of semitones, intervals, or octaves. The full range of the wheel's movement is then mapped to the pitch bend range.  For example, I can set the PB range to a perfect fifth. In that case, moving the wheel up full bends a note (or notes) up a Perfect Fifth and moving the wheel completely down lowers the note(s) by a Perfect Fifth. Likewise if I set the PB range to 2 octaves or 3 octaves, etc. the wheel changes the pitch based on the range set in the PB range parameter.

EDIT: To see what midi data TTS-1 responds to (such as PB range) see the document available through TTS-1's HELP button.

Never mind; I don't use PRV and evidently the PRV has its own set of rules for handling MIDI data.

 

Edited by User 905133
Link to comment
Share on other sites

25 minutes ago, Dave G said:

Remaining questions:

So RPN is not required unless I'm using a Wheel of more than two semitones/notes (+8,191)?

Does that mean RPN 1,536 (12 semitones/notes) completely overrides a Wheel setting of two semitones/notes?

Is it just assumed that it would be max 2 semitones without RPN? Or can one potentially do a pitch bend of more than an octave?

Thanks again.

 

RPN is not required unless you want the range to be a value other than 2.  In other words, most synths default to a range of 2.  However, I usually put a RPN 0 256 and a pitch bend =0 at the start of my MIDI tracks to prevent wrong notes caused by a pitch bend that is still active.

Yes, RPN 1,536 completely overrides a Wheel setting of two semitones/notes?

You can do a pitch bend of more than 2 octaves.... just apply the formula I gave you.  For example.  24 semi tones would be RPN 3072 (128 x 24)  - as long as your synth can handle the range.

One thing you have to watch with large ranges is that you might hear the steps as the pitch rises.  If that happens, then portamento would come the the rescue there.

Link to comment
Share on other sites

I did discover one more thing per the visual example I posted above, but on a new instance of this I just created:

The pitch bend occurs perfectly on that first note. However, the second note is slightly louder than the first. This is a TTS-1 Synth Lead instrument that has a sustain, and I confirmed the Velocity is the same level on both notes.

Thoughts please?

Link to comment
Share on other sites

38 minutes ago, Dave G said:

I did discover one more thing per the visual example I posted above, but on a new instance of this I just created:

The pitch bend occurs perfectly on that first note. However, the second note is slightly louder than the first. This is a TTS-1 Synth Lead instrument that has a sustain, and I confirmed the Velocity is the same level on both notes.

Thoughts please?

That's probably a characteristic of the synth itself - or even the particular patch. 

I tried was the patch SAW and natural lead and I that did not happen here - In fact in 20 years of using pitch bends, I have never had that issue....

Link to comment
Share on other sites

  • 5 years later...

I had to re-open this Topic from 2020 because RPN just stumped in a different way. My brain literally fogged from studying this too long, so I was forced to ask here because there's a math conundrum here that I can't resolve.

In this Topic, I learned that the RPN event sets the max pitch bend range to 16,383 (which I prefer 8,192, but does it matter?), 24 notes. And the Wheel event literally defines the range desired as drawn into my Controller Pane.

The 128 increment x four notes is 512. However, setting the RPN at 8,192 (and also trying 16,383), the pitch bend only goes up two notes. I had to draw in steps of 341 (8,192 ÷ 24) to get to the fourth note. I don't remember ever having to deviate from that increment of 128.

This is where the brain fog came in. I can't figure out how I understood this before and I'm embarrassed to ask for a refresher here.

My image attachment shows the pitch bend on note #1 reaching the key four notes up to match note #2. Can anyone figure out why the 128 wasn't enough and I had to count by 341? I'm sorry the explanation was a mess, but there's something here I'm not getting. Thanks in advance!

RPN.png

Link to comment
Share on other sites

Which synth are you using?  Not all synths use RPN 0 to change pitch bend range.

For those that do,  RPN 0 128 is a semi-tone, 256 is two semi-tones, 384 is 3 semi-tones, and so on.

These work.  I have been using these for my GM MIDI projects for ages.

  • Like 1
Link to comment
Share on other sites

14 minutes ago, Promidi said:

Which synth are you using?  Not all synths use RPN 0 to change pitch bend range.

For those that do,  RPN 0 128 is a semi-tone, 256 is two semi-tones, 384 is 3 semi-tones, and so on.

These work.  I have been using these for my GM MIDI projects for ages.

As in what synth, are you referring to a hardware synth or the SoftSynth? This is for a TTS-1 track. My PC is pretty much bare bones, using the RealTek chip on the motherboard.

I don't remember ever changing anything, as RPN always followed the 128 increment. I just noticed this today, unless there's something I'm foolishly missing.

Link to comment
Share on other sites

Although RPN #0 #0 is the standard for Pitch Bend sensitivity, there's no standard as to what the ranges actually mean.

Some synths have a maximum of two semi-tones for pitch bend range, so the RPN values will be totally dependent on what the synth supports.

When using this RPN, the 14-bit range -8912 to 8911, or 0 to 16383 will be for the maximum range the synth supports.   So if the synth support 2 semi-tones, either 8911 or 16833 will be 2 semi-tones; if the synth supports and octave, then 8911 or 16383 will mean an octave.

You'll need to refer to the synth's documentation to  be sure.
 

Link to comment
Share on other sites

I just did a quick test using TT-S.  A MIDI track, set to Channel 1, routed to an instance of TT-S.

In the PRV, I entered 3 notes, each with a pitch bend acting on it.  I was able to use RPN 0 Events  change the Bend Range before each Note and bend combination.   The the notes by the amounts set in the RPN 0 events.

So TT-S does indeed respond to RPN 0 to change Bend Range.

As the TT-S is based on Roland GM modules, it does follow the RPN 0 > 128 per semitone scheme.

Edited by Promidi
Link to comment
Share on other sites

16 minutes ago, Promidi said:

So TT-S does indeed respond to RPN 0 to change Bend Range.

This is actaully the first thing I ever posted about to the old forum c. 2006. I wasn't getting any pitch bend response from TTS-1 because the range had somehow been reset or defaulted to zero.

Link to comment
Share on other sites

Thank you all for the wealth of information. I admit that the technical details are way over my head, but I do appreciate the insight.

I did forget to mention that the 128 increment does still work as desired for a typical two-note Wheel bend event.

Given all that's been discussed here, I'm still trying to figure out why suddenly I have to increment in more than 128 per semitone in RPN. This just happened out of nowhere. How do I find the culprit? Is there a setting I can change or would a clean reinstall of my DAW resolve that?

Thanks again. :)

Edited by Dave G
Link to comment
Share on other sites

2 minutes ago, Dave G said:

Given all that's been discussed here, I'm still trying to figure out why suddenly I have to increment in more than 128 per semitone in RPN. This just happened out of nowhere. How do I find the culprit? Is there a setting I can change or would a clean reinstall of my DAW resolve that

Are you saying that if you issue the following events (in that order): 

RPN 0 > 384  (which would result in a 3 semi tone Pitch Bend range)
Pitch bend > 8191 (which is the highest possible value)
Note > c3 64 100 (velocity 64 ; Duration 100 ticks)

Rather than hearing a D#3 note, you get a higher note?

In the 30 odd years of making MIDI files, I have used RPN 0 events to change pitch bend range.   In all that time I have always got the correct range from RPN 0.

Link to comment
Share on other sites

1 hour ago, Promidi said:

RPN 0 > 384  (which would result in a 3 semi tone Pitch Bend range)
Pitch bend > 8191 (which is the highest possible value)
Note > c3 64 100 (velocity 64 ; Duration 100 ticks)

Rather than hearing a D#3 note, you get a higher note?

Solved the problem: I somehow trained my brain to draw both Events incorrectly. I drew the Wheel as the RPN and the RPN as the Wheel.

Here's a little "note to self" illustrating exactly how to draw these in! In this image, note 1 bends C2 to C3 and note 2 plays C3. Gonna have to rewrite my personal documentation on this.

(Wouldn't it be more logical for the RPN to be a straight line defining the range and the Wheel as the actual bend event?)

Anyway, sorry for the confusion and the mess added to this thread. Thanks to those who chimed in! 😀

RPN new.png

Edited by Dave G
Link to comment
Share on other sites

2 hours ago, Dave G said:

(Wouldn't it be more logical for the RPN to be a straight line defining the range and the Wheel as the actual bend event?)

I put the wheel events as a ramp of events (like in a pedal steel) and the RPN events single discreet events.  This RPN would always occur before any notes and wheel events. 

I actually have a Studioware Panel that does the wheel ramp (Starting at From and ending at Thru).  I also have a Studioware panel that prompts the user for the number of semitones required.  The internal code (actually a CAL script I wrote) then converts the number of semitones to the correct RPN Events and insert it at NOW in the active track.

I have attached the CAL script that does this.

Also, remember that with Chase on, even if you start play back in the middle of the note and the most recent RPN event is the one you entered, that RPN event will still be sent first, creating the intended pitch bends.

GM Pitch Band Range.CAL

  • Thanks 1
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...