Jump to content


  • Posts

  • Joined

  • Last visited

Posts posted by Dragonlord

  1. I really don't understand what's so bad about FL's delay compensation.

    There is a very understandable section on it in the help file, which is one of the resources you really should check more often.


    In the help file, there is a step-by-step description on how to deal with delay.

    #1 - Select a channel which does not contain the delayed plugin

    #2 - Choose 'set from' and select the channel which does contain the plugin

    #3 - Route the channels that are unaffected by the plugin through the channel you selected

    Hardly something I'd consider switching DAW over.

    If you remove the delay-causing plugin later on, you can always just go to the channel with set delay and press Reset (see image).

  2. I also don't see how applying that level of math would help in any way, You only want to extend the range, and (presumably), have even changes (so moving the wheel halfway between 0 and +12 is +6). Not sure what advanced math buys you here, other than an attempt to impress people who have or will get grad degrees in engineering and computer sciences (there are at least two who posted in this thread).

    Simple is usually better :P

    I think you've misunderstood what he wants to achieve.

    He wants his pitch wheel to go one octave down when he moves it from the center-position to the lowest position, and only two semitones up when he moves it from center-position to the highest position. In other words, he does not want even changes between the highest and lowest positions of the pitch wheel.

    However, I still agree that there is no need for advanced maths here. Simple fractions and conditionals will do.

    There are two ways to do this. One is to fill the exact pitch-range of 14 semitones (12 down, 2 up) or to use part of a 24 semitone span (12 down, 12 up). For the sake of learning as much as possible, I'm going to do it the most difficult way first. For those who just want a simple answer to what to do, skip to the end of the second way, and you'll find a formula to paste into FL.

    First way!

    First off, since a span of -12 to +2 is desired, one needs a total range of 14 semitones. Since FL specifies these using only one variable which describes semitones up/down, you would have to instruct FL to pitch-bend from -7 to +7. This can be done by changing the number next to the pitch-knob to 7.

    At that point, you will have gained if nothing else, the desired range. The rest can be done with the formula-editor of FL. Simply right-click the pitch-knob and select "Link to controller..." to get to the Remote control settings.

    What you know is that you want it to distribute the twelve first semitones over the first 0.5 values of input, and the final two over the input span from 0.5 to 1. The formula editor provides you with pretty much everything you need, without the need for estimates using taylor/fourier series.

    For the first half of the input, you want it to go from 0 to 12/14. This can be done using the IfL(a,B)-function, which equals 1 when a is less than b. As such, to leave the pitch-bend null and void from 0.5 and up, all you'd have to do is change the formula from Input to IfL(Input,0.5)*Input. Now you'll have a graph that goes halfway up, and then drops to zero again. Then you translate these values to the desired pitch-range, and end up with the following formula for pitch-bending one octave down:


    Now all you have to do is do the same for the two semitones up, using IfGE(a,B), which equals 1 when a is greater than or equal to b. (Using this instead of IfG(a,B) ensures that it doesn't go one octave down when the pitch-wheel is centered). You then distribute those values over the two semitones up, and you add the two together.

    (IfL(Input,0.5)*input*24/14) + (IfGE(Input,0.5)*((Input-0.5)*2/14)+(IfGE(Input,0.5)*12/14))

    Now, since FL wasn't designed to pitch-bend with non-equal range up and down, you're left with an offset in pitch.

    When we line up the various pitch-alterations, we get the following two sets of semitones.

    FL -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7
    You -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2

    So when we want the pitch-bend to remain neutral (no change in pitch), it's actually going five semitones up. Of course, by right-clicking the note 5 semitones up on the piano-roll (ie: the F above your C), you correct this offset, and you now have the desired range behaving the way you were hoping.

    Second way!

    The second way removes the need for the offset in notes by creating the entire span of 12 notes in each direction, and then only using part of it.

    First, set the number of semitones you want to bend with to 12 in the box next to the pitch-knob. Since the first half is already correct, you can start out by setting the formula to IfL(Input,0.5)*Input. Now you just need to make sure it doesn't go beyond two semitones up. This can be done by simple math, since you know that you want it to occupy an area of 2 semitones, starting halfway up. At this point, you're all probably very tired of thinking and just want the results, so I'm just going to copypaste the formula here:

    (IfL(Input,0.5)*Input) + ((IfGE(Input,0.5)*2*Input/12)+(IfGE(Input,0.5)*10/24))

    Now, at the end here, a small and boring description of why this method is better than using taylor/fourier series. Taylor/Fourier-series work by using sine or cosine to create an approximation of a function. This is the foundation for the fourier transform, which is used rather frequently in many of the VSTs we all know and love. However, to get a close approximation of even just a simple linear function, like the standard pitch-bend from -2 to +2, you need an awful lot of sinewave-components, and you're still going to get errors, and when you're going to use it with a pitch-wheel... well, you want to do the pitch-bend thing, you don't want it to sound like an LFO ate your pitch. Taylor/Fourier series are also subject to a lot of errors near edges, like the end-points of a saw-wave (discontinuous functions), and that is likely to appear also with the approximation in this case.

  3. I know how to split by using the layer thingy, but it's not what I'm looking for. What I want to do is to be able to switch between instruments by just pressing a button in my keyboard. I've seen people do it in live performances, and it should be feasible, I mena, the buttons generate a midi CC signal, but the thing is that instrument selection doesn't seem to be automatable nor mappable in FL nor Reason...

    The answer to your problem is really very simple. The MIDI-specs define this thing called a Program Change. (Often called Patches, at least when dealing with GM or soundfonts). Most midi-keyboards already have buttons to select various the various programs (instruments) available, and FL responds to that out of the box, no extra automation or mapping is needed. If your keyboard is programmable, you will probably be able to make the buttons send program changes to predefined programs as well, so that you won't have to go through several programs to find the one you want.

  4. I rarely crawl out of the shadows of OCReMix to post anything anywhere, but this calls for posting, just because of how awesome this is. Really nice work with the "totally wacky time signature" - makes me want to experiment with various strange time signatures myself.

    All in all a solid and good remix which, as mentioned, would be absolutely great on Halloween. Keep up the good work.

    *fades back into the shadows of lurking*

  • Create New...