On 16/01/2015 19:33, IOhannes m zmölnig wrote:
On 01/16/2015 12:23 PM, Alessio Degani wrote:
Hi list,
[...]

When you want to write a PD external that process audio stream, the
scenario is:
1- PD passes chunked audio stream to the inlet of the external and read
an audio chunk from the outlet of that external.
Each input and output chunk is of fixed length of, say, Nc samples. Each
chunk is a NON-overlapped adjacent chunk of the audiostream to be
processed.
i hope you are aware that this is a simplification on your side, and not
how Pd handles audio streams (when it comes to overlapping)

Humm... I didn't know that there are different way to handle audio stream in PD. Can PD directly manage overlapp and stuff like that?
Where I can read something about that? (I've already read your very useful guide: HOWTO write an External for Pure Data)

My question is:
There is a standard way, a "design pattern", to manage this kind of
processing?
i don't know of a standard "design pattern" but there are two ways that
come to my mind:

- implement a ring-buffer where you put the sample chunks delivered by
Pd, and read/use them whenever you have collected enough data.
overlapping is very simple to implement (as long as you don't overwrite
the data :-))

Yes... I think that [out/in] ring-buffer is a good practice!

- let Pd do the partitioning and overlapping.
this should be the preferred way, but obviously only works if you can
live with Pd's constraints regarding overlap (overlap-factor mus be a
power-of-two).
[CUT]

Ok... as I said before, I would like to learn more about this! :)
It seems a useful facility!

Thank you

gfmdar
IOhannes



_______________________________________________
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list


-- 
a.


-- 
a.