Hi Ed,

I just tested your filtertest_list patch in RjDj and it worked exactly as expected. As Rich suggested maybe you're using an outdated version of libpd?

If Frank's around I'm sure he would know for certain but if I remember rightly the [u_lowpass] / [u_beequad] combination is not really designed for dynamically changing parameters. Maybe take a look at [e_reslop], [e_lop2] and [e_lop4] for some other filter implementations. 

Regarding your second attempt, at what frequency does it 'break' and what's your sampling rate?

Cheers,
Joe

On 20 March 2012 05:57, Ed Kelly <morph_2016@yahoo.co.uk> wrote:
Hi,

I'm trying to design or find a resonant lowpass filter for use with libPd for Openframeworks running on an iPhone 4.

1. I've tried the rjlib filter attached (filtertest_list.tar.gz) and it works fine in Pd, but instantly breaks when I run it on the iPhone - all other playing audio cuts out, and it is impossible to reset. I suspect that the buffers fb1 fb2 ff1 ff2 ff3 are hitting NAN values and staying there, but I haven't tested this.

2. I've had a go at implementing the filter from http://www.musicdsp.org/archive.php?classid=3#25 as a Pd external (mvcf~.tar.gz) and it is very efficient CPU-wise. However, higher values of f or q cause the internal filter buffers to hit NAN and stay there (tested in Pd - I haven't tried this on the iPhone yet).

I would ideally like to find out why the second attempt breaks at high q and/or f, as what I want is a 24dB/Octave moog-ish filter. I'm sure those of you with higher math skills will intuitively know why, but I'm just learning calculus now (my early education was a bit chaotic). I'm also limited by the fact that this is for a commercial project (although I'll be happy to share the code :) so I can't just take a GPL external and recompiled libpd with it.
 
Ed

Gemnotes-0.1alpha: Live music notation for Pure Data
http://sharktracks.co.uk/

_______________________________________________
Pd-dev mailing list
Pd-dev@iem.at
http://lists.puredata.info/listinfo/pd-dev