Page 5 of 10

Re: Synced LFO

PostPosted: Mon Sep 15, 2014 2:08 pm
by tulamide
Nubeat7 wrote:here is the correct version for FL studio, i built in a properties switch, so you have both versions to test... best way for releases is to use this in the users options so the user can choose the host, after we have no way that the plugin identifies the host by itself...

Thank you very much, Nubeat7! So indeed the factor 4 was the solution. Just omitting the divison steps for FL Studio.

It works just like it should and we're now safe at least on the 5 tested DAWs! (Which are the most important, I'd say)

Btw., after this experience I'll stay away from FL Studio for my own productions. Here's another odd behaviour: Set a time signature (in my case 4/2) and a tempo (in my case 130). Now start playing and listen to the metronome. Change the ppq resolution (you'll find it in the project settings, right were you change the signature also) from 96 to some other value (in my case 960). Play again and compare the speed from the metronome before and now. Funny, eh? :lol:

Re: Synced LFO

PostPosted: Mon Sep 15, 2014 7:11 pm
by Nubeat7
good to hear that it works fine, in general 95% of time people are using 4/4 anyway but its good to have a solution which works on different timesignatures :)

Re: Synced LFO

PostPosted: Mon Sep 15, 2014 10:23 pm
by Perfect Human Interface
tulamide wrote:Btw., after this experience I'll stay away from FL Studio for my own productions.


"FL uses a 'time division' setting, this is not the same as traditional 'time signature', but you can set equivalents.

6/8 in traditional time signature is 6 beats per bar, 2 steps per beat for example. Although its normally easier to just leave it set to 4 steps per beat and use different snap settings in the Piano roll."

As per an IL rep.
FL is made to just use the piano roll snap settings instead of changing the time signature. So as with many things with FL, it's atypical but it works.

The discrepancy is with the actual PPQ pos output, which is inconsistent. I've brought this up on the forums already and it may or may not be looked into by the team, depending on whether or not they care that FL outputs different PPQ values than other DAWs.

I really don't like the idea of having to add a special setting just for FL in the plugin somewhere, but if there's no other way I guess that's what you've got.

Re: Synced LFO

PostPosted: Tue Sep 16, 2014 3:06 am
by tulamide
Perfect Human Interface wrote:I really don't like the idea of having to add a special setting just for FL in the plugin somewhere, but if there's no other way I guess that's what you've got.

For a few hours I wondered why other plugs from other manufacturers don't have issues. Then I started reading the VSTSDK documentation. And guess what?

getHostVendorString (->host)
Fills text with a string identifying the host's vendor.

getHostProductString (->host)
Fills text with a string identifying the host's name.

getHostVendorVersion (->host)
Returns the host's vendor-specific version.


It's all there, just not made available to Flowstone users :cry:

EDIT: Additionally, this is what Steinberg defines as PPQ Pos
ppqPos

double ppqPos;

the quarter position related to samplePos. as this is a floating point value, it can be easily converted to any scale. provided that the tempo is also given, any linear positions (like samples, smpte) can also be calculated precisely.
Example :

At tempo 120, 1 quarter makes 1/2 second, so 2.0 ppq translates to 48000 samples at 48kHz sample rate.
.25 ppq is one sixteenth note then. if you need something like 480ppq, you simply multiply ppq by that scaler.


They made it perfectly clear, so why did FL just ignore it? :(

Re: Synced LFO

PostPosted: Tue Sep 16, 2014 11:10 am
by Perfect Human Interface
tulamide wrote:At tempo 120, 1 quarter makes 1/2 second, so 2.0 ppq translates to 48000 samples at 48kHz sample rate.
.25 ppq is one sixteenth note then. if you need something like 480ppq, you simply multiply ppq by that scaler.
[/i]

They made it perfectly clear, so why did FL just ignore it? :(


I'll post this on the IL forums.

Re: Synced LFO

PostPosted: Tue Sep 16, 2014 10:00 pm
by Perfect Human Interface
tulamide wrote:Here's another odd behaviour: Set a time signature (in my case 4/2) and a tempo (in my case 130). Now start playing and listen to the metronome. Change the ppq resolution (you'll find it in the project settings, right were you change the signature also) from 96 to some other value (in my case 960). Play again and compare the speed from the metronome before and now. Funny, eh? :lol:


I actually tried this to see if it was a bug or something that might need to be brought up, but nothing happened for me.

Re: Synced LFO

PostPosted: Tue Sep 16, 2014 10:13 pm
by tulamide
Perfect Human Interface wrote:
tulamide wrote:Here's another odd behaviour: Set a time signature (in my case 4/2) and a tempo (in my case 130). Now start playing and listen to the metronome. Change the ppq resolution (you'll find it in the project settings, right were you change the signature also) from 96 to some other value (in my case 960). Play again and compare the speed from the metronome before and now. Funny, eh? :lol:


I actually tried this to see if it was a bug or something that might need to be brought up, but nothing happened for me.

Nothing? That's interesting. With a non-quarter-based time signature like in my example above, the tempo slowed down extremely (don't get me wrong: still showing 130 bpm, but actually ticking much slower). If that's just on my pc then I would like to know why? I never had that issue with any other DAW (Reaper, LMMS, and two other freeware ones, whose names I don't remember :lol: )

Re: Synced LFO

PostPosted: Tue Sep 16, 2014 10:51 pm
by Perfect Human Interface
I have no idea. Are you using FL 11? If it's definitely happening for you then maybe you could make a bug report, but I couldn't reproduce it.

Re: Synced LFO

PostPosted: Sun Sep 21, 2014 12:54 am
by Father
Perfect Human Interface wrote:Anyways, please give this a try and let me know if there's anything wrong with it.

Great idea, but for some reason its not working when host is playing. Please let us know if you got the time to fix it.
Nubeat7 wrote:here is the correct version for FL studio, i built in a properties switch, so you have both versions to test... best way for releases is to use this in the users options so the user can choose the host, after we have no way that the plugin identifies the host by itself...

I don't feel good about making an option for FL! Wish we had that host information available in FS.
The new version works perfectly fine with FL Studio in crazy time signatures. Is it confirmed to be working with other popular DAWs?

Re: Synced LFO

PostPosted: Sun Sep 21, 2014 1:22 am
by Perfect Human Interface
Father wrote:Great idea, but for some reason its not working when host is playing. Please let us know if you got the time to fix it.


What do you mean by "not working?" It's not synced or just stops oscillating? What host are you using?

It works fine for me in FL Studio (tested 2 machines). It doesn't sync correctly to different time signatures in other hosts because of the issues discussed in this thread. The fix to that is a very simple change in the math (time sig numerator divided by denominator * 4 I believe). But if you "fix" it that's for other hosts and then won't work correctly in FL, hence the switch Nubeat implemented.

I should add that IL's response to this was that you shouldn't change the "steps per beat" setting in FL (which is what FL features instead of standard time sig setting; important to emphasize that this is NOT actually time sig) and to just use different snap settings in the sequencer instead. So with that in mind, best thing to do if you don't want a switch is probably to set it to work correctly with other hosts and then just hope users won't/tell users not to use the "steps per beat" setting (which probably very few would anyways).