[PD] oscillators (osc~ / cycle~) not working well in FM?

Alexandre Torres Porres porres at gmail.com
Mon Nov 23 04:36:26 CET 2015


Did you make it work in a patch? if so, can you share it? :)

Maybe someone could work on a "fix" on the source and send it to miller,
perhaps this could be updated for the next version release (0.47).

cheers

2015-11-22 19:32 GMT-02:00 Matt Barber <brbrofsvl at gmail.com>:

> Yeah, so all that really needs to be done is to force symmetry by copying
> the 0-pi phase inverted to the pi-2pi phase + guard points for [tabosc4~].
> I did that and it's been stable for 3.5 hours. It wouldn't be too hard to
> fix this in the Pd source; it would be a marked improvement to [osc~] even
> with the 512-pt table and linear interpolation.
>
> On Sun, Nov 22, 2015 at 12:43 PM, Matt Barber <brbrofsvl at gmail.com> wrote:
>
>> OK, subtracting out the DC is more stable, but still deteriorates after a
>> bit, since the exact value likely changes with frequency due to
>> interpolation. So the solution is going to have to be in writing the table.
>> We can do it in Pd but we're hampered by the six-digit limit on specifying
>> 2pi directly as a float. The most accurate pi I can think of for feeding
>> through [cos] is [0 -1( -- [atan2]. [cos] uses the cosf() function from C,
>> which expects floats instead of doubles, so hopefully the symmetry is
>> better. I'm going to try it for a while and write back.
>>
>> Matt
>>
>> On Sun, Nov 22, 2015 at 11:16 AM, Roman Haefeli <reduzent at gmail.com>
>> wrote:
>>
>>> On Sun, 2015-11-22 at 10:44 +0100, volker böhm wrote:
>>> > hi,
>>> > i think the timbre change in the FM example is due to a less than
>>> ideal cosine wavetable which is used for osc~ (and cos~ etc.).
>>> > the "cos_maketable(void)" in d_osc.c produces a waveform which is
>>> slightly asymmetric, i.e. it has a tiny DC offset.
>>> > this in return, causes the timbre shift when used in an FM context
>>> (asymmetric FM).
>>> > vb
>>>
>>> Well spotted.
>>>
>>> Roman
>>>
>>> _______________________________________________
>>> Pd-list at lists.iem.at mailing list
>>> UNSUBSCRIBE and account-management ->
>>> http://lists.puredata.info/listinfo/pd-list
>>>
>>>
>>
>
> _______________________________________________
> Pd-list at lists.iem.at mailing list
> UNSUBSCRIBE and account-management ->
> http://lists.puredata.info/listinfo/pd-list
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20151123/56d0706e/attachment-0001.html>


More information about the Pd-list mailing list