Hi August, the main problem of your code is that the function m_child is stuck with waiting for the conditional (cond.Wait() ) when you want to delete object. On the other hand, there _was_ a flext bug when terminating such incooperative threads. (which is in cvs tomorrow morning)
There a two ways to make your code cleaner:
iteratives once in a while. Then you can also use ShouldExit()
just before StopThreads() in your destructor
best greetings, Thomas
----- Original Message ----- From: "august" august@alien.mur.at To: pd-list@iem.kug.ac.at Sent: Monday, April 14, 2003 5:17 PM Subject: [PD] readanysf~ almost beta
'ncase anyone is interested. ongoing work with this external. basically, I use pd for various things and need a similar interface to different filetypes.
an almost beta version is at:
http://aug.ment.org/software/readanysf~0.05.tar.gz
the only known bug at the moment is that if you try and remove one of the readanysf~ objects from the canvas, something is likely to explode.
this has something to do with how flext handles threading, i think, but am not sure.
is there something like a pthreads_join in flext? i think that would help.
ShouldExit() and StopThreads() simply doesnt do it for me.
features:
pcm and time seeking looping (internally and should be sample accurate) plays aiff, wav, nextstep (same code as readsf~ with 16,24 and 32bit float support) plus vorbis and mp3 (using madlib)
near future: add flac support (anyone have a good simple flac code?) conifigure and make scripts
distant future: http streaming (perhaps) convert to pure c++ without flext if i cant get flext to work with the threading. would be a shame.
any suggestions? -tsugua.
PD-list mailing list PD-list@iem.kug.ac.at http://iem.kug.ac.at/cgi-bin/mailman/listinfo/pd-list