Hi,

I have a question regarding CLAM processing architecture. I installed it
from Debian package and created a simple network:

MonoAudioFileReader -> FFT -> SpectrumView

and run it. This caused NetworkEditor to shutdown. I checked in program
output that there was problem with JACK server not being present.
I managed to install it and program stopped shutting down, but nothing
happened (I couldn't see any activity in SpectrumView)
till I used AudioSink in my network.

What I'm really trying to do is to understand CLAM architecture and compare
it with my ideas for DataFlow network.
I read Xavier Amatriain's PhD Dissertation about CLAM, but it did not
contain many technical details (not that I expect it from such document).
This example above made me wonder how is data routing organised in CLAM.
Are data "pulled" or "pushed"?
If they are pushed, why didn't FFT get data in first setup?
If they are pulled, why didn't FFT pull them? Does only AudioSink has right
to pull and as a side effect FFT got the data?
Also, why is audio backend needed to read a wav file?

I was also wondering if CLAM used multithreading for processing network (I
only found you can get separate threads for GUI and the network)?
I posted this question (about multithreading) on clam-users list, but maybe
it isn't right place for it so now I'm asking on developers list.

I will be very grateful for any remarks on this issues.
Regards,
Ewa.
_______________________________________________
clam-devel mailing list
clam-devel@lists.clam-project.org
http://lists.clam-project.org/listinfo.cgi/clam-devel-clam-project.org

Reply via email to