What do you mean by break, crashes?  If yes, what version of libpd are you using?  Up until about a month ago, floating point exceptions (such as NAN) would crash libpd, whereas pd-vanilla ignores them.  Peter B. recently added a commit that changed this:

https://github.com/libpd/libpd/commit/27c848a56d3d27e62231f8b0d9ef17c7c56cd9f9

Anywho, you'll probably want to take care of those NAN's anyway. :)  Not sure why pd vanilla ignores SIGFPE.

cheers,
Rich

On Tue, Mar 20, 2012 at 4:57 PM, 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