Re: [LAD] Paul's Extreme Sound Stretch
On Fri, 1 Oct 2010 03:25:50 +0200 Robin Gareus ro...@gareus.org wrote: On Oct 1, 2010, at 2:32 AM, Camilo Polymeris wrote: The original Fourier Transform as invented by the smart French guy of the same name does operate on continuous (as opposed to sampled) data from -inf to +inf. I understand Fourier invented the Fourier Series only, anyone knows who generalized it to FT? not me, but google did: Fourier’s initial series lacked the precision of a function, and Dirichlet and Riemann would later express the series as a formal integral. [1] mmm, that sounds ambigous to me... what exactly does it mean? Integral here is used as synonimous of solution of the heat-PDE? What is sure is that Dirichlet was the first to prove a convergence theorem for Fourier series, and for this he had to first give a new (both more precise and more general) definition of function. He gave the famous Dirichlet-function (charateristic of rationals) as an example of a function - with his definition - not satisfying the hypotheses of his theorem. Then Riemann, Cantor and others proved other convergence theorems with other hypotheses. Cantor actually developed his set theory for the need to describe the set of some points regarding Fourier series (something like the admissable discontinuities, can't remember ATM). Also I seem to remember that Riemann's integral sprouted from some problems he had in Fourier analysis. Unfortunately I still know nothing about the history of the FT... renato ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] [PD-dev] question about multithreaded externals in Pd
First of all, my apologies to all for x-posting of the original matter--I did not realize there was such a major overlap in user base on pd-list and pd-dev lists making my x-post truly redundant. since rPars can't be used by any other thread, you need to make a copy for each thread. This must be it! You are absolutely right as there is no guarantee rPars won't get destructed (with the end of the constructor function) before the worker thread is properly instantiated. FWIW, instead of creating a copy of rPars, I've actually gone with Robin's suggestion to use sched_yield() and have a wait condition which is cleared once the worker thread has spawned to ensure it will get the necessary data from rPars before they are destructed as follows: void *pd_cwiid_pthreadForAudioUnfriendlyOperations(void *ptr) { threadedFunctionParams *rPars = (threadedFunctionParams*)ptr; t_wiimote *x = rPars-wiimote; t_float local_led = 0; t_float local_rumble = 0; unsigned char local_rpt_mode = x-rpt_mode; while(x-unsafe -1) { pthread_mutex_lock(x-unsafe_mutex); if ((local_led == x-led) (local_rumble == x-rumble) (local_rpt_mode == x-rpt_mode)) { if (x-unsafe) x-unsafe = 0; //signal that the thread init is complete pthread_cond_wait(x-unsafe_cond, x-unsafe_mutex); } //snip static void *pd_cwiid_new(t_symbol* s, int argc, t_atom *argv) { //snip // spawn threads for actions known to cause sample drop-outs threadedFunctionParams rPars; rPars.wiimote = x; pthread_mutex_init(x-unsafe_mutex, NULL); pthread_cond_init(x-unsafe_cond, NULL); pthread_create( x-unsafe_t, NULL, (void *) pd_cwiid_pthreadForAudioUnfriendlyOperations, (void *) rPars); // wait until other thread has properly intialized so that // rPars do not get destroyed before the thread has gotten its // pointer information while(x-unsafe) { //must use as many yields as necessary as there is no //guarantee that one will be enough //also on Linux use sched_yield //rather than pthread_yield sched_yield(); } //snip Many thanks all for your help on this one! Hopefully the existence of this thread will help others who may be looking for similar solutions. Best wishes, Ico ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev
Re: [LAD] [ANN] Qtractor 0.4.7 - The Furious Desertrix is out!
On 10/02/2010 06:05 AM, Tim E. Real wrote: On October 1, 2010 06:55:52 pm Niels Mayer wrote: Also some of the configuration dialogs are coming up bigger than the screensize. So you have to Tab-down to the invisible ok or cancel and press return, and hope you got the right one. Just curious, doesn't your system respond to holding ALT down and moving a window by grabbing anywhere in the window? Much easier than tabbing... yes, ALT+righ-click for dragmove a window is a X11 standard and it should work on qtractor. unless meego is not X11 based, which i find very unprobable anyway, which qtractor dialogs doesn't fit on nowadays screensizes? i mean, which ones are bigger than 800x600 ? please tell me (Built QTractor and tested OK.) -- rncbc aka Rui Nuno Capela rn...@rncbc.org ___ Linux-audio-dev mailing list Linux-audio-dev@lists.linuxaudio.org http://lists.linuxaudio.org/listinfo/linux-audio-dev