X-Git-Url: https://scm.cri.ensmp.fr/git/Faustine.git/blobdiff_plain/c7f552fd8888da2f0d8cfb228fe0f28d3df3a12c..b4b6f2ea75b9f0f3ca918f5b84016610bf7a4d4f:/interpretor/preprocessor/faust-0.9.47mr3/examples/capture.dsp diff --git a/interpretor/preprocessor/faust-0.9.47mr3/examples/capture.dsp b/interpretor/preprocessor/faust-0.9.47mr3/examples/capture.dsp new file mode 100644 index 0000000..bd4aacf --- /dev/null +++ b/interpretor/preprocessor/faust-0.9.47mr3/examples/capture.dsp @@ -0,0 +1,27 @@ +declare name "capture"; +declare version "1.0"; +declare author "Grame"; +declare license "BSD"; +declare copyright "(c)GRAME 2006"; + +//------------------------------------------------- +// Capture : record up to 8s of sound and +// playback the recorded sound in loop +//------------------------------------------------- + +import("music.lib"); + +B = button("Capture"); // Capture sound while pressed +I = int(B); // convert button signal from float to integer +R = (I-I') <= 0; // Reset capture when button is pressed +D = (+(I):*(R))~_; // Compute capture duration while button is pressed: 0..NNNN0..MMM + + +capture = *(B) : (+ : delay(8*65536, D-1)) ~ *(1.0-B) ; + + +smooth(c) = *(1-c) : +~*(c); +level = hslider("level (db)", 0, -96, 4, 0.1) : db2linear : smooth(0.999); + +process = vgroup( "Audio Capture", capture : *(level) ) ; +