Re: [LAD] Something like Processing for audio

From: Frank Barknecht <fbar@email-addr-hidden>
Date: Mon Sep 29 2008 - 12:12:17 EEST

Hallo,
Darren Landrum hat gesagt: // Darren Landrum wrote:

> Frank Barknecht wrote:
> > Faust can, but: Is it really important? And why would it be important
> > (taking aside speed issues)?
>
> Speed is a large part of it, yes.
>
> Another reason to stick to C++ is for things that need the speed and
> low-level abilities, like on-demand sample streaming from disk for
> making a sampler.

It's a give and take. For some convenience I'll happily give away
some speed. OTOH there are areas where speed matters, those areas
should be optimized (and thus probably be coded in C/C++). The
environments I mentioned can be extended with C in these critical
areas. Anyway speed definitly is not what made Processing popular.

The core objects in Pd are all coded in C. And generally they are
quite fast. Connecting these objects adds a bit of overhead (function
calls etc.), but even that is quite fast in Pd.

> > The latest versions of Pd now work on 64-bit systems as well.
>
> Pd-vanilla can (and I do have it working), but Pd-extended still cannot.

Pd-extended is shipped with an old version of Pd.

> > If you skip the compilation part, Pd (or the other environments I
> > mentioned, Pd is just one example) can do all that. Just bundle the
> > Pd binary and a sh-script with your Pd application to distribute it, if
> > you want. (I would prefer an unbundled download as I already have Pd.)
>
> Does Pd do oversampling? I seem to recall it can.

Yes, you do that with the [block~] object in a subpatch.

> I keep bringing this up because several of the things I want to work
> on, namely lumped modeling/wave digital filters and non-linear
> processing, both require oversampling to work right, largely to
> avoid frequency warping and aliasing issues.

One thing with Pd is that it is a block-based realtime system, so some
of the techniques you mentioned (i.e. those that involve feedback
delay lines) can be impossible to implement in Pd using only the
builtin objects (feedback delay lines always have a minimal delay time
of one block in Pd). But you can code these objects as C-externals or
with Faust for Pd.

> A Processing-alike for audio can also integrate and abstract away things
> like LASH support, MIDI, and OSC. Something like LASH (session state
> saving, see the other current thread) is an important capability in my
> world.

Point taken: Session management is an area where Pd isn't especially
good. OTOH C++ out of the box isn't either. ;)

Ciao

-- 
 Frank Barknecht                                     _ ______footils.org__
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@email-addr-hidden
http://lists.linuxaudio.org/mailman/listinfo/linux-audio-dev
Received on Mon Sep 29 16:15:01 2008

This archive was generated by hypermail 2.1.8 : Mon Sep 29 2008 - 16:15:01 EEST