From vze26m98 at optonline.net Thu Mar 1 09:39:35 2007 From: vze26m98 at optonline.net (vze26m98) Date: Thu, 01 Mar 2007 12:39:35 -0500 Subject: [CM] [Snd] Set beats-per-minute from selection? Message-ID: Hi all- Trying to get my head around everything in Snd (I'll be at it for a while!) I'm curious: is there a script/procedure already written that would set beats-per-minute from the current selection? I've seen the snap-mix-to-beat stuff, and it seems like such a thing wouldn't be too hard to write, but has anyone done it already? Best and thanks! Charles Turner From vze26m98 at optonline.net Thu Mar 1 18:24:30 2007 From: vze26m98 at optonline.net (vze26m98) Date: Thu, 01 Mar 2007 21:24:30 -0500 Subject: [CM] [Snd] Black backgrounds in GTK EPSFs? Message-ID: Hi- Recently built Snd-GTK on OSX 10.4.8; I'm using File-Print to write waveforms to EPS files. I've noticed that the EPS file at line 16 says this: 0.00 0.00 0.00 RG 0 0 706 213 RF 0.00 0.00 0.00 RG So the first call to RG is causing RF to paint a black rectangle for the background, rendering the graph invisible. (Also, the RF rectangle is smaller than the bounding box (702,219), leaving a white band across the top) I've spent some time setting different background and foreground colors in preferences, and the EPS always shows 0.00 0.00 0.00 for both bg and fg calls. So the color changes I see on-screen are never reflected in the EPS file. I've started to poke around in the source code, and it doesn't seem to be anything simple with ps_bg() and ps_fg() that I can tell. But beyond that will require some serious study. Anyone else having this issue? Best, Charles From bil at ccrma.Stanford.EDU Fri Mar 2 04:49:15 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Fri, 2 Mar 2007 04:49:15 -0800 Subject: [CM] [Snd] Black backgrounds in GTK EPSFs? In-Reply-To: References: Message-ID: <20070302123948.M4092@ccrma.Stanford.EDU> Thanks for the bug report! You can fix your existing eps file by commenting out the black background rectangle -- "%" comments out a line: % 0.00 0.00 0.00 RG % 0 0 706 213 RF I also can't see why ps_bg can't find the background color in Gtk, but I think this kludge fixes it: void ps_bg(axis_info *ap, axis_context *ax) { /* get background color, fill graph, then set foreground for axis */ #if USE_MOTIF ps_set_color(get_background_color(ax)); #else #if USE_GTK { state_context *sx; chan_info *cp; sx = ss->sgx; cp = ap->cp; if (cp->cgx->selected) ps_set_color(sx->selected_graph_color); else ps_set_color(sx->graph_color); } #endif #endif ... } I notice that the Gtk eps string positioning is left over from long ago -- I'll fix that later today. Sorry about the mess -- my long term plan here is to use Gtk's new print dialog which depends on cairo for the graphics -- I think I need to make a cairo version of the Gtk graph drawing routines (they currently use Gdk), but maybe the gdk stuff already uses cairo -- this whole business is in flux. From b0ef at esben-stien.name Fri Mar 2 16:24:53 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Sat, 03 Mar 2007 01:24:53 +0100 Subject: [CM] Freeze Running Simplest Examples (snd-ls-0.9.7.12) Message-ID: <87649jb2cq.fsf@esben-stien.name> Trying again to get snd-ls up and running;). I've now recompiled my entire OS, but getting the exact same problem;). I've compiled snd-ls and started it with M-x run-scheme in emacs. It starts up fine. I then, in scheme-mode, evaluate (load-from-path "rt-compiler.scm") and that also seems to go fine. It says RT-Compiler loaded successfully. I then run this example code, with C-M-x: (let ((osc (make-oscil))) ( 0 3 (lambda () (out (* 0.8 (oscil osc)))))) At exactly this point, when hitting the combination C-M-x, the snd-ls GTK window freeze and it's just grey and does not repaint. No sound is heard. I'm running jackd-0.102.29 on GNU/Linux-2.6.18-rt7. Any pointers as to what I can try? -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From vze26m98 at optonline.net Sat Mar 3 11:21:52 2007 From: vze26m98 at optonline.net (vze26m98) Date: Sat, 03 Mar 2007 14:21:52 -0500 Subject: [CM] [Snd] Trouble with JackOSX? Message-ID: Hi all- I'm curious whether anyone is having/has had trouble (or success) with building Snd for use with JackOSX? I'm able to do it, but had to hack some files to get it to work. (OSX 10.4.8 PPC, Snd 8.9 not CVS, powerpc-apple-darwin8-gcc-4.0.1) I use the following configure: ./configure CFLAGS="-I/sw/include" LDFLAGS="-L/sw/lib -lmx -bind_at_load" GUILE_CONFIG_path=/sw/bin GUILE_CONFIG_ name=guile-1.6-config GUILE_name=guile-1.6 --disable-nls --with-guile --with-gtk --with-static-xg --with-builtin-gtkrc --with-jack I find that this defines MUS_JACK and leaves MUS_MAC_OSX and HAVE_JACK undefined. I found I needed to link with libsamplerate, but for some reason the configure file didn't put this in my makefile. I added it manually. I hacked up _sndlib.h and audio.c, mainly to get certain declarations working with the above FLAGS. Also, as I believe OSX doesn't support an RT scheduling priority, I turned those functions that reference sched_setscheduler into dummy functions. Not a pretty job, but so far everything works. I've got Ardour and Snd gracefully co-existing now! Very happy, Charles From k.s.matheussen at notam02.no Sun Mar 4 01:06:35 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Sun, 04 Mar 2007 10:06:35 +0100 (CET) Subject: [CM] Re: Freeze Running Simplest Examples (snd-ls-0.9.7.12) In-Reply-To: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> References: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> Message-ID: Esben Stien: > > Trying again to get snd-ls up and running;). I've now recompiled my > entire OS, but getting the exact same problem;). > > I've compiled snd-ls and started it with M-x run-scheme in emacs. It > starts up fine. I then, in scheme-mode, evaluate (load-from-path > "rt-compiler.scm") and that also seems to go fine. It says RT-Compiler > loaded successfully. > > I then run this example code, with C-M-x: > > (let ((osc (make-oscil))) > ( 0 3 > (lambda () > (out (* 0.8 > (oscil osc)))))) > > At exactly this point, when hitting the combination C-M-x, the snd-ls > GTK window freeze and it's just grey and does not repaint. No sound is > heard. > Oh no... > I'm running jackd-0.102.29 on GNU/Linux-2.6.18-rt7. > Which version of gtk, which version of emacs, and which version of guile? > Any pointers as to what I can try? > Yes, first try not to evalute (load-from-path "rt-compiler.scm"). It shouldn't be necessary when using snd-ls. (need to update the manual) If that didn't help, try to start snd-ls in a terminal, and then paste (let ((osc (make-oscil))) ( 0 3 (lambda () (out (* 0.8 (oscil osc)))))) into the terminal. From k.s.matheussen at notam02.no Sun Mar 4 01:23:56 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Sun, 04 Mar 2007 10:23:56 +0100 (CET) Subject: [CM] Re: [Snd] Trouble with JackOSX? In-Reply-To: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> References: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> Message-ID: vze26m98: > Hi all- > > I'm curious whether anyone is having/has had trouble (or success) with > building Snd for use with JackOSX? I'm able to do it, but had to hack > some files to get it to work. > > (OSX 10.4.8 PPC, Snd 8.9 not CVS, powerpc-apple-darwin8-gcc-4.0.1) > > I use the following configure: > > ./configure CFLAGS="-I/sw/include" LDFLAGS="-L/sw/lib -lmx > -bind_at_load" GUILE_CONFIG_path=/sw/bin GUILE_CONFIG_ > name=guile-1.6-config GUILE_name=guile-1.6 --disable-nls --with-guile > --with-gtk --with-static-xg --with-builtin-gtkrc --with-jack > > I find that this defines MUS_JACK and leaves MUS_MAC_OSX and HAVE_JACK > undefined. > > I found I needed to link with libsamplerate, but for some reason the > configure file didn't put this in my makefile. I added it manually. > > I hacked up _sndlib.h and audio.c, mainly to get certain declarations > working with the above FLAGS. > > Also, as I believe OSX doesn't support an RT scheduling priority, I > turned those functions that reference sched_setscheduler into dummy > functions. > > Not a pretty job, but so far everything works. I've got Ardour and Snd > gracefully co-existing now! > Oh, okay. The jack support for macosx and cygwin was untested, so if you send a patch to Bill, that would be great. Or if you want, send it to me, and I'll test it on linux and add any necessarry #ifdef's before sending it to Bill. Thanks! From k.s.matheussen at notam02.no Sun Mar 4 01:59:38 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Sun, 04 Mar 2007 10:59:38 +0100 (CET) Subject: [CM] Re: Freeze Running Simplest Examples (snd-ls-0.9.7.12) In-Reply-To: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> References: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> Message-ID: > loaded successfully. > > I then run this example code, with C-M-x: > > (let ((osc (make-oscil))) > ( 0 3 > (lambda () > (out (* 0.8 > (oscil osc)))))) > > At exactly this point, when hitting the combination C-M-x, the snd-ls > GTK window freeze and it's just grey and does not repaint. No sound is > heard. By the way, which key are you using for meta? I have never understood when M means esc+shift, alt, the menu key, or one of the windows keys... In the case of evaluating code, Ctrl+Alt+X is the correct key combination. I don't know if that solves anything? From bil at ccrma.Stanford.EDU Sun Mar 4 04:52:34 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Sun, 4 Mar 2007 04:52:34 -0800 Subject: [CM] [Snd] Trouble with JackOSX? In-Reply-To: References: Message-ID: <20070304124955.M56115@ccrma.Stanford.EDU> > I found I needed to link with libsamplerate, but for some reason the > configure file didn't put this in my makefile. I added it manually. The configure script is trying to use pkg-config to get the jack-related libraries and compiler flags. Please send me whatever you had to add by hand, and I'll fixup the configure process in the case where pkg-config doesn't exist. (Actually, please send all the changes you made -- we want the build process to work in as many contexts as possible). From k.s.matheussen at notam02.no Sun Mar 4 06:13:41 2007 From: k.s.matheussen at notam02.no (Kjetil Svalastog Matheussen) Date: Sun, 4 Mar 2007 15:13:41 +0100 (CET) Subject: [CM] Re: Freeze Running Simplest Examples (snd-ls-0.9.7.12) In-Reply-To: References: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> Message-ID: On Sun, 4 Mar 2007, Kjetil S. Matheussen wrote: > > > > Yes, first try not to evalute (load-from-path "rt-compiler.scm"). It shouldn't > be necessary when using snd-ls. (need to update the manual) Yes, I tried. This is the reason. I don't know why its crashing, its not supposed to, but I'll try to fix it soon. In the mean time, remember not to evaluate (load-from-path "rt-compiler.scm"). From vze26m98 at optonline.net Sun Mar 4 10:28:50 2007 From: vze26m98 at optonline.net (vze26m98) Date: Sun, 04 Mar 2007 13:28:50 -0500 Subject: [CM] [Snd] Guile newbie help? Message-ID: Hi all- Could someone explain why the following executes at the Guile-1.6 repl prompt but not in the Snd listener? (do ((i 1 (1+ i))) ((> i 4)) (display i)) I get 1234 in the first place and # in the second. Many thanks! Charles From bil at ccrma.Stanford.EDU Sun Mar 4 10:46:03 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Sun, 04 Mar 2007 10:46:03 -0800 Subject: [CM] [Snd] Guile newbie help? In-Reply-To: References: Message-ID: <45EB13EB.4020600@ccrma> > I get 1234 in the first place and # in the second. If you look at the terminal you started Snd in, you'll see 1234. Guile's display function writes to stdout or something like that. To get output to the Snd listener, you either need to set up a "soft port" (see examp.scm) or use snd-print. From b0ef at esben-stien.name Sun Mar 4 16:12:13 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 05 Mar 2007 01:12:13 +0100 Subject: [CM] Re: Freeze Running Simplest Examples (snd-ls-0.9.7.12) In-Reply-To: (Kjetil Svalastog Matheussen's message of "Sun, 4 Mar 2007 15:13:41 +0100 (CET)") References: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> Message-ID: <87k5xwim5e.fsf@esben-stien.name> Kjetil Svalastog Matheussen writes: > remember not to evaluate (load-from-path "rt-compiler.scm"). Excellent; finally it's working; I hear a sine;). It took some years, but now we're rolling;). Thank you very much. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Sun Mar 4 16:12:43 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 05 Mar 2007 01:12:43 +0100 Subject: [CM] Re: Freeze Running Simplest Examples (snd-ls-0.9.7.12) In-Reply-To: (Kjetil S. Matheussen's message of "Sun, 04 Mar 2007 10:59:38 +0100 (CET)") References: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> Message-ID: <87fy8kim4k.fsf@esben-stien.name> "Kjetil S. Matheussen" writes: > which key are you using for meta? ALT -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Sun Mar 4 16:22:10 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 05 Mar 2007 01:22:10 +0100 Subject: [CM] Re: Freeze Running Simplest Examples (snd-ls-0.9.7.12) In-Reply-To: (Kjetil Svalastog Matheussen's message of "Sun, 4 Mar 2007 15:13:41 +0100 (CET)") References: <20070303200003.1136.99225.Mailman@cm-mail.stanford.edu> Message-ID: <87fy8kh74d.fsf@esben-stien.name> Kjetil Svalastog Matheussen writes: > In the mean time This is really excellent. I'm smiling from ear to ear. I'll mark this day in history. The most awesome. Thank you, again. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From vze26m98 at optonline.net Sun Mar 4 17:25:57 2007 From: vze26m98 at optonline.net (vze26m98) Date: Sun, 04 Mar 2007 20:25:57 -0500 Subject: [CM] [Snd] Guile newbie help? In-Reply-To: <45EB13EB.4020600@ccrma> Message-ID: OK, in spite of all the many useful examples in the distribution and some reading of the Guile documents, this dummy can't get the following to work in the listener: (assuming a ">" prompt) >(define next 0) >(define prev 0) >(define sum 0) >(define rdr (make-sample-reader 0)) >(while (not (sample-reader-at-end? rdr)) (set! next (rdr)) (set! sum (+ sum (- next prev))) (set! prev next)) ...or in a more readable form: (while (not (sample-reader-at-end? rdr)) (set! next (rdr)) (set! sum (+ sum (- next prev))) (set! prev next)) I can take all these statements out of the while loop and I believe they work correctly (or give results other than 0.0). Thanks, Charles From rm at seid-online.de Sun Mar 4 18:21:41 2007 From: rm at seid-online.de (Ralf Mattes) Date: Mon, 05 Mar 2007 03:21:41 +0100 Subject: [CM] [Snd] Guile newbie help? In-Reply-To: References: Message-ID: <1173061301.5357.15.camel@localhost.localdomain> On Sun, 2007-03-04 at 20:25 -0500, vze26m98 wrote: > OK, in spite of all the many useful examples in the distribution and > some reading of the Guile documents, this dummy can't get the following > to work in the listener: > > (assuming a ">" prompt) > > >(define next 0) > >(define prev 0) > >(define sum 0) > >(define rdr (make-sample-reader 0)) > > >(while (not (sample-reader-at-end? rdr)) (set! next (rdr)) (set! sum (+ > sum (- next prev))) (set! prev next)) > > ...or in a more readable form: > > (while (not (sample-reader-at-end? rdr)) > (set! next (rdr)) > (set! sum (+ sum (- next prev))) > (set! prev next)) > > I can take all these statements out of the while loop and I believe they > work correctly (or give results other than 0.0). > Could you elaborate a little bit more _what_ you want to do? Is this really copied code? What's "(rdr)" supposed to return - shouldn't this be "(read-sample rdr)"? BTW, i prefer more "speaking" names, like "current" where you use "next" ... So, iff i understand correctly, your code sums up the difference between all samples. Isn't that supposed to 0.0? Cheers, Ralf Mattes > Thanks, Charles > > > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist From vze26m98 at optonline.net Sun Mar 4 19:47:53 2007 From: vze26m98 at optonline.net (vze26m98) Date: Sun, 04 Mar 2007 22:47:53 -0500 Subject: [CM] [Snd] Guile newbie help? In-Reply-To: <1173061301.5357.15.camel@localhost.localdomain> Message-ID: Ralf Mattes wrote on 3/4/07 at 9:21 PM >Could you elaborate a little bit more _what_ you want to do? >Is this really copied code? What's "(rdr)" supposed to return - >shouldn't this be "(read-sample rdr)"? > >BTW, i prefer more "speaking" names, like "current" where you use >"next" ... Here's a slightly revised version then: (while (not (sample-reader-at-end? rdr)) (set! current (next-sample rdr)) (set! sum (+ sum (- current prev))) (set! prev current)) >So, iff i understand correctly, your code sums up the difference >between all samples. Isn't that supposed to 0.0? Hi Ralf- Well, I'm trying to sum the difference between the current sample and the previous sample. I don't think this sums to zero, but I could be really wrong. :-) I did the following calc: prev current diff 0.0 - -0.439 = 0.438 -0.439 - -0.224 = -0.215 -0.224 - 0.141 = -0.365 0.141 - 0.449 = -0.308 0.449 - 0.512 = -0.063 0.512 - -0.318 = 0.830 -0.318 - 0.087 = -0.405 0.087 - 0.436 = -0.349 -0.437 sum (I hope my math is sufficiently correct. I don't have access to a spreadsheet) The above isn't a complete thought, but what I'm hoping to get is a rough number that would distinguish between 50 samples of white noise and 50 samples that don't get above +-0.0005 in amplitude. I'd like to use the number to label sound files. It isn't some synthesis process. Hope the above is clear, or maybe it's clear I've got some bolts loose... In any event, thanks for entertaining my problem! Best, Charles From bil at ccrma.Stanford.EDU Mon Mar 5 04:03:50 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Mon, 5 Mar 2007 04:03:50 -0800 Subject: [CM] [Snd] Guile newbie help? In-Reply-To: References: <1173061301.5357.15.camel@localhost.localdomain> Message-ID: <20070305120251.M7358@ccrma.Stanford.EDU> Your code returns the value of the last sample (you're integrating the differences, so you end up re-making the original). The following is perhaps what you're aiming at: (let ((prev 0.0) (sum 0.0)) (scan-channel (lambda (next) (set! sum (+ sum (- next prev))) (set! prev next) #f)) sum) But, I think the confusion comes from the question of when the reader sets its "at-end" flag. Since the reader returns 0.0 when it hits the end (and then notices that it has hit the end), your code always ends with a 0.0 sample, and that becomes the value of the sum. One (slightly bizarre) way around this is: (let ((prev 0.0) (sum 0.0) (next 0.0) (rdr (make-sample-reader 0))) (while (let () (set! next (rdr)) (not (sample-reader-at-end? rdr))) ;(snd-print (format #f "~%;sum: ~A, ~A ~A" sum next prev)) (set! sum (+ sum (- next prev))) (set! prev next)) sum) Anyway, I think reader-at-end? probably should be true one sample earlier -- I'll look at this later today. From k.s.matheussen at notam02.no Mon Mar 5 12:19:00 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Mon, 05 Mar 2007 21:19:00 +0100 (CET) Subject: [CM] Re: Re: Freeze Running Simplest Examples (snd-ls-0.9.7.12) In-Reply-To: <20070305200007.16668.82826.Mailman@cm-mail.stanford.edu> References: <20070305200007.16668.82826.Mailman@cm-mail.stanford.edu> Message-ID: Esben Stien: > > Kjetil Svalastog Matheussen writes: > >> In the mean time > > This is really excellent. I'm smiling from ear to ear. I'll mark this > day in history. The most awesome. Thank you, again. > I'm very glad to hear. :-) Please don't hesitate to ask in case something isn't working. From willy.rouaix at gmail.com Tue Mar 6 01:39:30 2007 From: willy.rouaix at gmail.com (Willy Rouaix) Date: Tue, 6 Mar 2007 10:39:30 +0100 Subject: [CM] on several voice In-Reply-To: <45e9ac900703050433u217a34c3ye13a964bba645059@mail.gmail.com> References: <45e9ac900703050433u217a34c3ye13a964bba645059@mail.gmail.com> Message-ID: <45e9ac900703060139j7807c471o2d64c221a039f745@mail.gmail.com> Good Afternoon, I try to write a little drum exercise, but i have not the result I need. My CMN file is the .cmn ;), the result is tournerie.jpg, and what I want is tournerie_goal.jpg. these 3 files are on http://naeco.free.fr/divers/CMN/ If you have an answer, it is welcome ! I thank you for your help, Willy -------------- next part -------------- An HTML attachment was scrubbed... URL: From b0ef at esben-stien.name Tue Mar 6 05:28:34 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Tue, 06 Mar 2007 14:28:34 +0100 Subject: [CM] Wrong Number of Arguments -> MIDI (snd-rt) Message-ID: <873b4i1oxp.fsf@esben-stien.name> I'm trying to use MIDI in my first endeavor into SND-rt, but trying to insert just the first block to enable MIDI, gives me an error. Wrong number of arguments to # In /usr/local/snd-ls/snd-8/eval-c.scm: 745: 31* [eval-c-parse ( rt_gen2__2 (lambda (# # # #) (the )))] 634: 32 (cond ((string? term) (<-> term " ")) ((number? term) (<-> # " ")) ...) 641: 33 (if (string? (car term)) (eval-c-eval-funccall term) ...) 643: 34 (let* ((type #)) (if (list? type) (let # #) (if # # #))) 645: 35 (if (list? type) (let (#) (<-> "typedef " # ...)) ...) 660: 36 (if (not (eval-c-symbol-is-type type)) (eval-c-macro-result term) ...) 665: 37 (let* (# # #) (if # # #)) ... 725: 38 [string-append "" "" ... 729: 39* [apply # ... 729: 40* [map # ("static void " rt_gen2__2 #)] In unknown file: ?: 41* [eval-c-parse (lambda (# # # #) (the ))] In /usr/local/snd-ls/snd-8/eval-c.scm: 634: 42* (cond ((string? term) (<-> term " ")) ((number? term) (<-> # " ")) ...) 641: 43 (if (string? (car term)) (eval-c-eval-funccall term) ...) 643: 44 (let* ((type #)) (if (list? type) (let # #) (if # # #))) 645: 45 (if (list? type) (let (#) (<-> "typedef " # ...)) ...) 660: 46 (if (not (eval-c-symbol-is-type type)) (eval-c-macro-result term) ...) 662: 47 [eval-c-macro-result (lambda (# # # #) (the ))] 624: 48 (let* ((a #) (b #)) (if (not #) (eval-c-parse b) ...)) 625: 49* [macroexpand-1 (eval-c-macro-lambda (# # # #) (the ))] In unknown file: ?: 50 (cond ((pair? e) (let* (# #) (if # # e))) (#t e)) ?: 51 (let* ((a #) (val #)) (if (defmacro? val) (apply # #) e)) ?: 52 (if (defmacro? val) (apply (defmacro-transformer val) (cdr e)) e) ?: 53 [apply # ((# # # #) (the ))] ?: 54 [# (# # # #) (the )] In /usr/local/snd-ls/snd-8/eval-c.scm: 1184: 55 (let* ((ret (<-> # #))) (eval-c-downlevel) ret) 1184: 56* [string-append "(struct RT_Globals *rt_globals , int control__3 , int data1__4 , int data2__5 )" ... 1190: 57* (if (eq? (quote decl) (car body)) "" ...) 1192: 58 [string-append "{" " " ... 1193: 59* [eval-c-parse-lines ((the ))] 748: 60 [apply # ... 748: 61* [map # # " "))> ((the ))] In unknown file: ?: 62* [# # " "))> (the )] In /usr/local/snd-ls/snd-8/eval-c.scm: 748: 63* [string-append ... 748: 64* [eval-c-parse-line (the )] 741: 65 (if (and (string? term) (not #) ...) (<-> term (string #\newline)) ...) 745: 66 [string-append ... 745: 67* [eval-c-parse (the )] 634: 68 (cond ((string? term) (<-> term " ")) ((number? term) (<-> # " ")) ...) 641: 69 (if (string? (car term)) (eval-c-eval-funccall term) ...) 643: 70 (let* ((type #)) (if (list? type) (let # #) (if # # #))) 645: 71 (if (list? type) (let (#) (<-> "typedef " # ...)) ...) 660: 72 (if (not (eval-c-symbol-is-type type)) (eval-c-macro-result term) ...) 662: 73 [eval-c-macro-result (the )] 624: 74 (let* ((a #) (b #)) (if (not #) (eval-c-parse b) ...)) 625: 75* [macroexpand-1 (eval-c-macro-the )] In unknown file: ?: 76 (cond ((pair? e) (let* (# #) (if # # e))) (#t e)) ?: 77 (let* ((a #) (val #)) (if (defmacro? val) (apply # #) e)) ?: 78 (if (defmacro? val) (apply (defmacro-transformer val) (cdr e)) e) ?: 79 [apply # ()] ?: 80 [# ... wrong-number-of-args Here's my code. It compiles fine without the MIDI block. (definstrument (soldier_of_b0rkness_2 start-time duration frequency amplitude #:key (partial0 1.0)(partial-amplitude0 0.8) (partial1 1.593)(partial-amplitude1 0.6) (partial2 2.135)(partial-amplitude2 0.6) (partial3 2.295)(partial-amplitude3 0.35) (partial4 2.917)(partial-amplitude4 0.3) (partial5 3.598)(partial-amplitude5 0.2) (amplitude-envelope '(0 0 .04 1 .4 1 1 0)) ;;(amplitude-envelope '(0 0.5 1 0 1 0))) #:allow-other-keys) (let* ((start (floor (* start-time (mus-srate)))) (len (floor (* duration (mus-srate)))) ;;base oscillator (sine0 (make-oscil :frequency frequency)) (sine1 (make-oscil :frequency (* partial0 frequency))) (sine2 (make-oscil :frequency (* partial1 frequency))) (sine3 (make-oscil :frequency (* partial2 frequency))) (sine4 (make-oscil :frequency (* partial3 frequency))) (sine5 (make-oscil :frequency (* partial4 frequency))) (sine6 (make-oscil :frequency (* partial5 frequency))) ;;insert modulating oscillator (mod (make-oscil :frequency 50)) (indenv '(0 1 100 1)) ;snare (indenv '(0 100 50 1)) (devf (make-env :envelope indenv :scaler (in-hz 75) :start start :end len)) (amplitude-envelope (make-env :envelope amplitude-envelope :scaler amplitude :start start :end len)) (output (make-vct len)) ;delete these two old lines from havanna ; (osc (make-oscil)) ;(vol 4/6) ) ;; ( 0 2 (lambda () (receive-midi (lambda (control data1 data2) (declare ( control data1 data2)) ;(printf "gakk! %x %x %x\\n" control data1 data2) )) (out (* (env amplitude-envelope) (+ (* partial-amplitude0 (oscil sine1 (* (env devf) (+ (oscil sine0) (oscil mod))))) (* partial-amplitude1 (oscil sine2 (* (env devf) (+ (oscil sine0) (oscil mod))))) (* partial-amplitude2 (oscil sine3)) (* partial-amplitude3 (oscil sine4)) (* partial-amplitude4 (oscil sine5)) (* partial-amplitude5 (oscil sine6)) ) ) ) ) ) ) ) I'm on GNU/Linux with snd-ls-0.9.7.12. Any pointers as to what I can try? -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From scholz-micha at gmx.de Tue Mar 6 04:23:38 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Tue, 06 Mar 2007 13:23:38 +0100 Subject: [CM] Re: Compiling FTH? In-Reply-To: (vze26m's message of "Sun\, 04 Mar 2007 13\:12\:49 -0500") References: Message-ID: <864poyzhkl.fsf@Lerche.Socrates> Hi, Charles! Sorry for late reply but my sendmail seems to have trouble with your email address. So I choose the ccrma mailing list. Thank you very much for reporting the stdin etc bug. > struct ficlCallback > { > void *context; > ficlOutputFunction textOut; > ficlOutputFunction errorOut; > ficlSystem *system; > ficlVm *vm; > ficlPointer port_in; > ficlPointer port_out; > ficlPointer port_err; > int stdin_fileno; > int stdout_fileno; > int stderr_fileno; > FILE *(&__sF[0]); > FILE *(&__sF[1]); > FILE *(&__sF[2]); > }; I renamed the last three slots to circumvent this issue. The changes are now in CVS and, together with the missing common.mk, in the updated fth-1.0.8.tar.* I hope you have not too much trouble with Fth! Mike From bil at ccrma.Stanford.EDU Tue Mar 6 04:52:05 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Tue, 6 Mar 2007 04:52:05 -0800 Subject: [CM] on several voice In-Reply-To: <45e9ac900703060139j7807c471o2d64c221a039f745@mail.gmail.com> References: <45e9ac900703050433u217a34c3ye13a964bba645059@mail.gmail.com> <45e9ac900703060139j7807c471o2d64c221a039f745@mail.gmail.com> Message-ID: <20070306124956.M63301@ccrma.Stanford.EDU> The lowered eighth rest + little staff is the problem? Here's one possibility: (defun eighth-rest-in-little-staff () (eighth-rest invisible (make-sundry :mark #'(lambda (mark note score &optional justifying) (when (not justifying) (let* ((x0 (box-x0 note)) (y0 (- (box-y0 note) 1.0))) (setf (line-width score) *staff-line-width*) (moveto score x0 y0) ; draw little staff lines (rlineto score 0.5 0) (moveto score x0 (- y0 .25)) (rlineto score 0.5 0) (moveto score x0 (- y0 .5)) (rlineto score 0.5 0) (draw score) (show score eighth-rest ; draw an eighth rest :matrix (translate-matrix score eighth-rest (+ x0 .1) (- y0 .25))))))))) (cmn (setf s1 (staff (meter 4 4) begin-repeat-bar g5 (note-head :x) stem-up g5 (note-head :x) stem-up g5 (note-head :x) stem-up g5 (note-head :x) stem-up end-repeat-bar)) (staff (tied-to s1) (d4 e.) (b4 s) (eighth-rest invisible) (d4 e stem-down)(d4 e.) (d4 s) (f4 q)) (staff (tied-to s1) (eighth-rest-in-little-staff) (b3 e (note-head :circled-x) stem-down) (eighth-rest-in-little-staff) (b3 e (note-head :circled-x) stem-down) (eighth-rest-in-little-staff) (b3 e (note-head :circled-x) stem-down) (eighth-rest-in-little-staff) (b3 e (note-head :circled-x) stem-down))) From bil at ccrma.Stanford.EDU Tue Mar 6 05:00:56 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Tue, 6 Mar 2007 05:00:56 -0800 Subject: [CM] on several voice In-Reply-To: <45e9ac900703060139j7807c471o2d64c221a039f745@mail.gmail.com> References: <45e9ac900703050433u217a34c3ye13a964bba645059@mail.gmail.com> <45e9ac900703060139j7807c471o2d64c221a039f745@mail.gmail.com> Message-ID: <20070306130007.M73650@ccrma.Stanford.EDU> If you just want the rests below the main staff, you don't need any extra function; just use the dy "message": (cmn (setf s1 (staff (meter 4 4) begin-repeat-bar g5 (note-head :x) stem-up g5 (note-head :x) stem-up g5 (note-head :x) stem-up g5 (note-head :x) stem-up end-repeat-bar)) (staff (tied-to s1) (d4 e.) (b4 s) (eighth-rest invisible) (d4 e stem-down)(d4 e.) (d4 s) (f4 q)) (staff (tied-to s1) (eighth-rest (dy -1.2)) (b3 e (note-head :circled-x) stem-down) (eighth-rest (dy -1.2)) (b3 e (note-head :circled-x) stem-down) (eighth-rest (dy -1.2)) (b3 e (note-head :circled-x) stem-down) (eighth-rest (dy -1.2)) (b3 e (note-head :circled-x) stem-down))) From rm at seid-online.de Tue Mar 6 05:18:27 2007 From: rm at seid-online.de (Ralf Mattes) Date: Tue, 06 Mar 2007 14:18:27 +0100 Subject: [CM] on several voice In-Reply-To: <45e9ac900703060139j7807c471o2d64c221a039f745@mail.gmail.com> References: <45e9ac900703050433u217a34c3ye13a964bba645059@mail.gmail.com> <45e9ac900703060139j7807c471o2d64c221a039f745@mail.gmail.com> Message-ID: <1173187107.5350.22.camel@localhost.localdomain> On Tue, 2007-03-06 at 10:39 +0100, Willy Rouaix wrote: > Good Afternoon, > I try to write a little drum exercise, but i have not the result I > need. My CMN file is the .cmn ;), the result is tournerie.jpg, and > what I want is tournerie_goal.jpg. these 3 files are on > http://naeco.free.fr/divers/CMN/ > The image ?http://naeco.free.fr/divers/CMN/tournerie_goal.jpg? cannot be displayed, because it contains errors. Hmm, tournerie_goal.jpg is several times the size of tournerie.jpg ... makes me suspicious. Cheers, RalfD > If you have an answer, it is welcome ! > > I thank you for your help, > > Willy From vze26m98 at optonline.net Tue Mar 6 05:49:47 2007 From: vze26m98 at optonline.net (vze26m98) Date: Tue, 06 Mar 2007 08:49:47 -0500 Subject: [CM] Re: Compiling FTH? In-Reply-To: <864poyzhkl.fsf@Lerche.Socrates> Message-ID: Michael Scholz wrote on 3/6/07 at 7:23 AM >Hi, Charles! Sorry for late reply but my sendmail seems to have >trouble with your email address. So I choose the ccrma mailing list. Yes, I think this ISP, Optimum Online, is responsible for about 150% of the spam sent around the globe... >I renamed the last three slots to circumvent this issue. The changes >are now in CVS and, together with the missing common.mk, in the >updated fth-1.0.8.tar.* I've downloaded the release tarball and the stdin thing gave no complaints. Here's I think the last one: spinoza:/usr/local/src/fth-1.0.8 cturner$ make for f in ./ficl ./lib ./src; do (cd ${f} && make all); done make[1]: Nothing to be done for `all'. make[1]: Nothing to be done for `all'. gcc -DHAVE_CONFIG_H -I.. -I. -I../ficl -I../lib -I/usr/local/include -g -O2 -c ../src/utils.c ../src/utils.c: In function 'completion': ../src/utils.c:1883: warning: return makes pointer from integer without a cast ../src/utils.c: In function 'fth_initialize_readline': ../src/utils.c:1889: error: 'history_word_delimiters' undeclared (first use in this function) ../src/utils.c:1889: error: (Each undeclared identifier is reported only once ../src/utils.c:1889: error: for each function it appears in.) ../src/utils.c:1890: error: 'history_no_expand_chars' undeclared (first use in this function) ../src/utils.c:1895: error: 'rl_erase_empty_line' undeclared (first use in this function) ../src/utils.c: In function 'fth_feed_history': ../src/utils.c:1932: error: 'history_max_entries' undeclared (first use in this function) ../src/utils.c: In function 'fth_repl': ../src/utils.c:2093: warning: assignment makes pointer from integer without a cast ../src/utils.c:2175: error: 'history_max_entries' undeclared (first use in this function) make[1]: *** [../src/utils.o] Error 1 make: *** [all] Error 2 spinoza:/usr/local/src/fth-1.0.8 cturner$ It looks like there are a bunch of variables defined with no declarations. Not sure whether you want them declared right there, or whether there might be an include file that's missing, or not referenced... Thanks!! Charles From willy.rouaix at gmail.com Tue Mar 6 05:53:37 2007 From: willy.rouaix at gmail.com (Willy Rouaix) Date: Tue, 6 Mar 2007 14:53:37 +0100 Subject: [CM] on several voice In-Reply-To: <1173187107.5350.22.camel@localhost.localdomain> References: <45e9ac900703050433u217a34c3ye13a964bba645059@mail.gmail.com> <45e9ac900703060139j7807c471o2d64c221a039f745@mail.gmail.com> <1173187107.5350.22.camel@localhost.localdomain> Message-ID: <45e9ac900703060553u57779b41v91a4551f384d9c48@mail.gmail.com> Good Afternoon, 2007/3/6, Bill Schottstaedt : > > If you just want the rests below the main staff, you don't need any > extra function; just use the dy "message": Thank you, it is exactly what I need. > The image "http://naeco.free.fr/divers/CMN/tournerie_goal.jpg" cannot be > displayed, because it contains errors. > Hmm, tournerie_goal.jpg is several times the size of tournerie.jpg ... > makes me suspicious. > > Cheers, RalfD > Excuse me, I have forgotten to pass in RVB, I don't know why, but in CMJN, the jpg have often this problem... There is still a small problem, but i search before to ask :) Again thanks Willy -------------- next part -------------- An HTML attachment was scrubbed... URL: From el_kaneli at yahoo.es Tue Mar 6 08:19:40 2007 From: el_kaneli at yahoo.es (kaneli sanchez) Date: Tue, 6 Mar 2007 17:19:40 +0100 (CET) Subject: [CM] mixing in snd Message-ID: <790721.17220.qm@web26607.mail.ukl.yahoo.com> Hi guys, Does anyone know of a way to mix files with nice movable mix tags without generating huge temp files? --------------------------------- LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y m?viles desde 1 c?ntimo por minuto. http://es.voice.yahoo.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From bil at ccrma.Stanford.EDU Tue Mar 6 10:09:44 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Tue, 6 Mar 2007 10:09:44 -0800 Subject: [CM] mixing in snd In-Reply-To: <790721.17220.qm@web26607.mail.ukl.yahoo.com> References: <790721.17220.qm@web26607.mail.ukl.yahoo.com> Message-ID: <20070306175453.M17381@ccrma.Stanford.EDU> > Does anyone know of a way to mix files with nice movable mix tags > without generating huge temp files? I've toyed with making a mix a virtual edit; you'd have only the mixed-in sound on disk, and begin times or whatever in core, and the edit reader would be smart about reading the mixed in stuff at the right time -- hmm, now as I type, I think this might not be so hard... From k.s.matheussen at notam02.no Tue Mar 6 10:40:24 2007 From: k.s.matheussen at notam02.no (Kjetil Svalastog Matheussen) Date: Tue, 6 Mar 2007 19:40:24 +0100 (CET) Subject: [CM] Wrong Number of Arguments -> MIDI (snd-rt) In-Reply-To: <20070306181002.24470.1593.Mailman@cm-mail.stanford.edu> References: <20070306181002.24470.1593.Mailman@cm-mail.stanford.edu> Message-ID: Esben Stien: > ) > ) > ) > ) > > I'm on GNU/Linux with snd-ls-0.9.7.12. > > Any pointers as to what I can try? > Oops, seems like that error isn't catched by the rt compiler. Lambdas require a body. Declare doesn't do anything. Uncomment the printf call, or add something else, and it works. From vze26m98 at optonline.net Tue Mar 6 19:05:15 2007 From: vze26m98 at optonline.net (vze26m98) Date: Tue, 06 Mar 2007 22:05:15 -0500 Subject: [CM] inf-snd.el? Message-ID: HI all- Trying to get inf-snd.el working, and getting the following in my emacs buffer: (snd:1152): Gtk-WARNING **: cannot open display: > Process Snd-Scheme exited abnormally with code 1 I've built snd-GTK on OSX. I haven't had luck with "snd -separate" as a command line; do I have to build a version of snd configured --nogui? Many thanks, Charles From j.v.o.koskinen at gmail.com Wed Mar 7 06:19:33 2007 From: j.v.o.koskinen at gmail.com (Ville Koskinen) Date: Wed, 7 Mar 2007 16:19:33 +0200 Subject: [CM] [Snd] Searching conditionally for starts and ends of phrases Message-ID: <392b6b160703070619ycd78d3exaa9336578319f95e@mail.gmail.com> Hello, I'm a starting user trying to customize Snd to edit spoken word audio. I'd like to use Snd to find starts and ends of utterances. I can calculate rms values at cursor, but I can't figure out how to integrate this to the search. My code is listed below. I suppose I've misunderstood something about make-moving-average, but I don't know what (I also haven't found out how to debug my code, so that's a problem too. Any help appreciated! Regards, -Ville Koskinen (define (rms position) (let* ( (data (channel->vct (max (- position 1024) 0) 1024) ) (len (vct-length data) ) ) (sqrt (/ (dot-product data data) len)) ) ) (define (phrase-lookup) (let* ( (search-for-sound (if (< (rms (cursor)) .05) 1 0 ) ) (bufferlen 1024 ) (buffer (make-moving-average bufferlen) ) (lowthreshold .00005 ) (highthreshold .001 ) ) (lambda (y) (let ((sum-of-squares (moving-average buffer (* y y))) ) (if (= search-for-sound 1) (> sum-of-squares highthreshold) (< sum-of-squares lowthreshold) ) ) ) ) ) From bil at ccrma.Stanford.EDU Wed Mar 7 07:39:37 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Wed, 07 Mar 2007 07:39:37 -0800 Subject: [CM] [Snd] Searching conditionally for starts and ends of phrases In-Reply-To: <392b6b160703070619ycd78d3exaa9336578319f95e@mail.gmail.com> References: <392b6b160703070619ycd78d3exaa9336578319f95e@mail.gmail.com> Message-ID: <45EEDCB9.1010507@ccrma> Since phrase-lookup returns a function, you can use it either via (scan-channel (phrase-lookup)) or in the C-s case by typing (phrase-lookup) at the "find:" prompt (the first time -- it will be re-evaluated on subsequent C-s's). moving-average divides by its length, so sum-of-squares in your code is actually sum-of-squares/bufferlen. See dsp.scm for one way to implement moving-sum. From bil at ccrma.Stanford.EDU Wed Mar 7 07:44:30 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Wed, 07 Mar 2007 07:44:30 -0800 Subject: [CM] inf-snd.el? In-Reply-To: References: Message-ID: <45EEDDDE.6010403@ccrma> > I haven't had luck with "snd -separate" as a command line; do I have to > build a version of snd configured --nogui? I don't see any problem with gtk-snd in OSX using -separate -- you should get one window with Snd's main menu and optional listener, and a separate window for each open sound. The nogui option makes Snd without a user interface (beyond the REPL). From vze26m98 at optonline.net Wed Mar 7 13:05:34 2007 From: vze26m98 at optonline.net (vze26m98) Date: Wed, 07 Mar 2007 16:05:34 -0500 Subject: [CM] inf-snd.el? In-Reply-To: <45EEDDDE.6010403@ccrma> Message-ID: Bill Schottstaedt wrote on 3/7/07 at 10:44 AM >I don't see any problem with gtk-snd in OSX using -separate -- you >should get one window with Snd's main menu and optional listener, and >a separate window for each open sound. Hmm... My imperfect memory was that I can get a seperate window for any file I open, but the "main" Snd window is blank. If I try to open the listener from the menu, Snd crashes. Of course, even without opening the listener, I get those reports and the emacs sub-job fails... I look into this some more. Thanks! Charles From bil at ccrma.Stanford.EDU Wed Mar 7 15:59:30 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Wed, 7 Mar 2007 15:59:30 -0800 Subject: [CM] inf-snd.el? In-Reply-To: References: <45EEDDDE.6010403@ccrma> Message-ID: <20070307235048.M53420@ccrma.Stanford.EDU> I think I found the open-listener-if-separate-causes-segfault problem; I made a new snd-8.tar.gz and updated the CVS files. To fix it without going to those sources, change handle_listener in snd-glistener.c to: void handle_listener(bool open) { if ((open) && (!listener_text)) make_command_widget(100); if ((SOUND_PANE(ss)) && /* might be run -separate with no sound open */ (sound_style(ss) != SOUNDS_IN_SEPARATE_WINDOWS)) { int hgt; hgt = widget_height(SOUND_PANE(ss)); if (open) { if (hgt > 100) /* we can get here before the sound window has opened, but with one pending. * the position is in terms of current size, which is useless in this case. */ gtk_paned_set_position(GTK_PANED(SOUND_PANE(ss)), (gint)(hgt * .75)); } else gtk_paned_set_position(GTK_PANED(SOUND_PANE(ss)), hgt); } } From vze26m98 at optonline.net Wed Mar 7 16:19:19 2007 From: vze26m98 at optonline.net (vze26m98) Date: Wed, 07 Mar 2007 19:19:19 -0500 Subject: [CM] inf-snd.el? In-Reply-To: <20070307235048.M53420@ccrma.Stanford.EDU> Message-ID: Bill Schottstaedt wrote on 3/7/07 at 6:59 PM >I think I found the open-listener-if-separate-causes-segfault problem; >I made a new snd-8.tar.gz and updated the CVS files. Man! You're a whiz Bill! My other problem(s) with emacs were mostly caused by using Aquamacs-emacs, which is a standalone. A quick Fink install of emacs works just fine, although I had to comment out some stuff for it to get past the lack of a Ruby mode. That left a bunch of undefined stuff... I do get the following error(s): >error in process filter: Symbol's function definition is void: t >error in process filter: comint-output-filter: Symbol's function definition is void: t Which I'd ignore except they cause the system bell to ring at the beginning and end of each file play. I'll try and track this down. Maybe related to the above hacking... This is really a powerful configuration of Snd, and well worth the minor installation effort. Congratulations to you and Michael! Thanks again, Charles From b0ef at esben-stien.name Wed Mar 7 18:10:34 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Thu, 08 Mar 2007 03:10:34 +0100 Subject: [CM] Wrong Number of Arguments -> MIDI (snd-rt) In-Reply-To: (Kjetil Svalastog Matheussen's message of "Tue, 6 Mar 2007 19:40:24 +0100 (CET)") References: <20070306181002.24470.1593.Mailman@cm-mail.stanford.edu> Message-ID: <87ps7kqycl.fsf@esben-stien.name> Kjetil Svalastog Matheussen writes: > Lambdas require a body Thanks;). -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From scholz-micha at gmx.de Wed Mar 7 16:56:24 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Thu, 08 Mar 2007 01:56:24 +0100 Subject: [CM] inf-snd.el? In-Reply-To: (vze26m's message of "Wed\, 07 Mar 2007 19\:19\:19 -0500") References: Message-ID: <86vehcbljb.fsf@Lerche.Socrates> > I do get the following error(s): > >>error in process filter: Symbol's function definition is void: t >>error in process filter: comint-output-filter: Symbol's function > definition is void: t Hi, Charles. I think, the easiest way to circumvent these errors is to install ruby-mode.el, inf-ruby.el (from Ruby distribution) and gforth.el (from Gforth distribution) because inf-snd-mode and snd-mode depend on them. Can you show us an Emacs backtrace? Activate it by Menu Options -> Enter Debugger on Error before starting inf-snd-mode. Mike From vze26m98 at optonline.net Wed Mar 7 17:47:11 2007 From: vze26m98 at optonline.net (vze26m98) Date: Wed, 07 Mar 2007 20:47:11 -0500 Subject: [CM] inf-snd.el? In-Reply-To: <86vehcbljb.fsf@Lerche.Socrates> Message-ID: Michael Scholz wrote on 3/7/07 at 7:56 PM >Hi, Charles. I think, the easiest way to circumvent these errors is >to install ruby-mode.el, inf-ruby.el (from Ruby distribution) and >gforth.el (from Gforth distribution) because inf-snd-mode and snd-mode >depend on them. Can you show us an Emacs backtrace? Activate it by >Menu Options -> Enter Debugger on Error before starting inf-snd-mode. Hi Michael- Yes, I just looked on Fink for a ruby mode. The gforth I have. If I run the debugger, I don't get as far as without it: it halts before the menus are built and the snd buffer is activated: Debugger entered--Lisp error: (void-function t) t("#f\n>") comint-output-filter(# "#f\n") Hope this helps. I'll install the ruby modes and uncomment my hack and let you know what's up... Best, Charles From j.v.o.koskinen at gmail.com Wed Mar 7 21:48:09 2007 From: j.v.o.koskinen at gmail.com (Ville Koskinen) Date: Thu, 8 Mar 2007 07:48:09 +0200 Subject: [CM] [Snd] Searching conditionally for starts and ends of phrases In-Reply-To: <45EEDCB9.1010507@ccrma> References: <392b6b160703070619ycd78d3exaa9336578319f95e@mail.gmail.com> <45EEDCB9.1010507@ccrma> Message-ID: <392b6b160703072148i2d5dbfc4wb7a5c02b4786d9b9@mail.gmail.com> Thanks for the help, Bill! I'll look into dsp.scm and try to refine my code. Is there a way to make functions to output info the listener? Snd seems really powerful. In fact it was the reason I installed Linux on my system. So thanks for a great piece of software too. Regards, Ville Koskinen 2007/3/7, Bill Schottstaedt : > Since phrase-lookup returns a function, you can use it > either via (scan-channel (phrase-lookup)) or in the C-s > case by typing (phrase-lookup) at the "find:" prompt (the > first time -- it will be re-evaluated on subsequent C-s's). > > moving-average divides by its length, so sum-of-squares in > your code is actually sum-of-squares/bufferlen. See dsp.scm > for one way to implement moving-sum. > From bil at ccrma.Stanford.EDU Thu Mar 8 03:00:50 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Thu, 8 Mar 2007 03:00:50 -0800 Subject: [CM] [Snd] Searching conditionally for starts and ends of phrases In-Reply-To: <392b6b160703072148i2d5dbfc4wb7a5c02b4786d9b9@mail.gmail.com> References: <392b6b160703070619ycd78d3exaa9336578319f95e@mail.gmail.com> <45EEDCB9.1010507@ccrma> <392b6b160703072148i2d5dbfc4wb7a5c02b4786d9b9@mail.gmail.com> Message-ID: <20070308105649.M77461@ccrma.Stanford.EDU> > Is there a way to make functions to output info the listener? snd-print is probably the simplest -- it's just like "display" but sends its output to the listener. In Scheme, I always precede the output with a newline and semicolon. From juanig at Maginvent.ORG Thu Mar 8 10:07:43 2007 From: juanig at Maginvent.ORG (Juan I Reyes) Date: Thu, 08 Mar 2007 13:07:43 -0500 Subject: [CM] ats which lisp Message-ID: <1173377263.12799.98.camel@strawberry> Hi, I hate to make Juan Pampin respond to this email but I should say I miss a lot ATS in SBCL and even in the new CMUCl. Has anyone been able to run ATS beyond ACL5 on PlaneCCRMA ? --* Juan Reyes From juan at ccrma.Stanford.EDU Thu Mar 8 11:30:00 2007 From: juan at ccrma.Stanford.EDU (Juan Pampin) Date: Thu, 8 Mar 2007 11:30:00 -0800 Subject: [CM] ats which lisp In-Reply-To: <1173377263.12799.98.camel@strawberry> References: <1173377263.12799.98.camel@strawberry> Message-ID: <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> Hi Juan, unfortunately I couldn't port ATS from clm-2 to clm-3 due to the drastic change in clm-struct (I'd basically have to re-write everything from scratch, since I was using pointers to arrays which are no longer supported). That said, the code should work without problems in clm-2 (if you manage to compile clm-2 in sbcl or cmucl). There is a C version of ATS that you can download from SouceForge which implements the analysis functions and comes with a simple GUI written in GTK. I know Fernando has been using this for his last piece and managed to read the analysis data into clm-3, so he is "the man" :-) You can find links to most of the stuff from this page: http://www.dxarts.washington.edu/ats/ Best, JUAN On 3/8/07, Juan I Reyes wrote: > > Hi, > > I hate to make Juan Pampin respond to this email but I should say I miss > a lot ATS in SBCL and even in the new CMUCl. > > Has anyone been able to run ATS beyond ACL5 on PlaneCCRMA ? > > --* Juan Reyes > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist > From juan at ccrma.Stanford.EDU Thu Mar 8 14:12:23 2007 From: juan at ccrma.Stanford.EDU (Juan Pampin) Date: Thu, 8 Mar 2007 14:12:23 -0800 Subject: [CM] ats which lisp In-Reply-To: <1173388101.16845.22.camel@strawberry> References: <1173377263.12799.98.camel@strawberry> <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> <1173388101.16845.22.camel@strawberry> Message-ID: <131f0ea00703081412n64a4dd5ajf4ece2cfce12deef@mail.gmail.com> Juan, I'd be happy to help getting ATS to compile on Fedora, it shouldn't be that hard if you have clm-2 compiled. Please send me a private email with your error log and I'll take it from there. Cheers, JUAN On 3/8/07, Juan I Reyes wrote: > Hola Juan! > > Thanks a lot for your response. > > I was afraid this was going to be the answer. I have not had any luck > with ATS on clm-2 on Fedora Extras' cmucl-19c-7.fc6. But please forgive > me for not having tried de C version but I feel the Lisp code is quite > exquisite (and flexible) for many musical expression algorithms compared > to the graphical interface. I'll give it few more shots. > > BTW, Could ATS Scheme be a nice project for SND gurus: Kjetil and > Michael Scholz ? > > Best of all > > --* Juan Reyes > > > On Thu, 2007-03-08 at 11:30 -0800, Juan Pampin wrote: > > Hi Juan, > > unfortunately I couldn't port ATS from clm-2 to clm-3 due to the > > drastic change in clm-struct (I'd basically have to re-write > > everything from scratch, since I was using pointers to arrays which > > are no longer supported). That said, the code should work without > > problems in clm-2 (if you manage to compile clm-2 in sbcl or cmucl). > > There is a C version of ATS that you can download from SouceForge > > which implements the analysis functions and comes with a simple GUI > > written in GTK. I know Fernando has been using this for his last piece > > and managed to read the analysis data into clm-3, so he is "the man" > > :-) > > You can find links to most of the stuff from this page: > > http://www.dxarts.washington.edu/ats/ > > Best, > > JUAN > > > > > From juanig at Maginvent.ORG Thu Mar 8 13:08:21 2007 From: juanig at Maginvent.ORG (Juan I Reyes) Date: Thu, 08 Mar 2007 16:08:21 -0500 Subject: [CM] ats which lisp In-Reply-To: <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> References: <1173377263.12799.98.camel@strawberry> <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> Message-ID: <1173388101.16845.22.camel@strawberry> Hola Juan! Thanks a lot for your response. I was afraid this was going to be the answer. I have not had any luck with ATS on clm-2 on Fedora Extras' cmucl-19c-7.fc6. But please forgive me for not having tried de C version but I feel the Lisp code is quite exquisite (and flexible) for many musical expression algorithms compared to the graphical interface. I'll give it few more shots. BTW, Could ATS Scheme be a nice project for SND gurus: Kjetil and Michael Scholz ? Best of all --* Juan Reyes On Thu, 2007-03-08 at 11:30 -0800, Juan Pampin wrote: > Hi Juan, > unfortunately I couldn't port ATS from clm-2 to clm-3 due to the > drastic change in clm-struct (I'd basically have to re-write > everything from scratch, since I was using pointers to arrays which > are no longer supported). That said, the code should work without > problems in clm-2 (if you manage to compile clm-2 in sbcl or cmucl). > There is a C version of ATS that you can download from SouceForge > which implements the analysis functions and comes with a simple GUI > written in GTK. I know Fernando has been using this for his last piece > and managed to read the analysis data into clm-3, so he is "the man" > :-) > You can find links to most of the stuff from this page: > http://www.dxarts.washington.edu/ats/ > Best, > JUAN > From scholz-micha at gmx.de Thu Mar 8 16:57:36 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Fri, 09 Mar 2007 01:57:36 +0100 Subject: [CM] inf-snd.el? In-Reply-To: (vze26m's message of "Wed\, 07 Mar 2007 20\:47\:11 -0500") References: Message-ID: <86mz2np727.fsf@Lerche.Socrates> > Debugger entered--Lisp error: (void-function t) > t("#f\n>") > comint-output-filter(# "#f\n") Can you test inf-snd.el with changed function run-snd-scheme? Comment out the last line, `(snd-send-invisible "#f")))' (around line 899), and fix the paren a line above. C-x C-e in Emacs after the function compiles it new and now you can test it immediately. Only for sure: you work with guile --with-gtk, okay? Sorry for the trouble, Mike From vze26m98 at optonline.net Thu Mar 8 17:29:54 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Thu, 08 Mar 2007 20:29:54 -0500 Subject: [CM] inf-snd.el Success! Message-ID: Hi Michael- I hope you haven't been beating your head against the wall with the debugging info I sent. I was moving back home today, and had the time to pin my Fink distribution to "unstable" and completely update my entire collection of Fink packages. (It took 5 hours) I also removed the glib I had in my /usr/local/lib so there was no chance of accidentally compiling against it. I've now upgraded to emacs-gtk 22.0.93.1 from the Fink distro, rebuilt Snd using the updated Fink packages, and after installing the latest gforth and ruby mode files, EVERYTHING SEEMS JUST FINE! (I have some weirdness with emacs having a different idea about what Snd's working directory is, and not saving .elc files, but that's another matter!) Thanks again for this wonderful emacs mode! I can hardly wait for Forth scripting... Best, Charles Darwin spinoza 8.8.0 Darwin Kernel Version 8.8.0: Fri Sep 8 17:18:57 PDT 2006; root:xnu-792.12.6.obj~1/RELEASE_PPC Power Macintosh powerpc powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5367) From juanig at Maginvent.ORG Thu Mar 8 15:09:08 2007 From: juanig at Maginvent.ORG (Juan I Reyes) Date: Thu, 08 Mar 2007 18:09:08 -0500 Subject: [CM] ats which lisp In-Reply-To: <131f0ea00703081412n64a4dd5ajf4ece2cfce12deef@mail.gmail.com> References: <1173377263.12799.98.camel@strawberry> <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> <1173388101.16845.22.camel@strawberry> <131f0ea00703081412n64a4dd5ajf4ece2cfce12deef@mail.gmail.com> Message-ID: <1173395348.18328.5.camel@strawberry> Thanks a lot Juan I'll take the offer. Cheers, --* Juan Reyes On Thu, 2007-03-08 at 14:12 -0800, Juan Pampin wrote: > Juan, > I'd be happy to help getting ATS to compile on Fedora, it shouldn't be > that hard if you have clm-2 compiled. Please send me a private email > with your error log and I'll take it from there. > Cheers, > JUAN > From nando at ccrma.Stanford.EDU Thu Mar 8 18:17:11 2007 From: nando at ccrma.Stanford.EDU (Fernando Lopez-Lezcano) Date: Thu, 08 Mar 2007 18:17:11 -0800 Subject: [CM] ats which lisp In-Reply-To: <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> References: <1173377263.12799.98.camel@strawberry> <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> Message-ID: <1173406631.24677.45.camel@cmn3.stanford.edu> On Thu, 2007-03-08 at 11:30 -0800, Juan Pampin wrote: > Hi Juan, > unfortunately I couldn't port ATS from clm-2 to clm-3 due to the > drastic change in clm-struct (I'd basically have to re-write > everything from scratch, since I was using pointers to arrays which > are no longer supported). That said, the code should work without > problems in clm-2 (if you manage to compile clm-2 in sbcl or cmucl). > There is a C version of ATS that you can download from SouceForge > which implements the analysis functions and comes with a simple GUI > written in GTK. I know Fernando has been using this for his last piece > and managed to read the analysis data into clm-3, so he is "the man" > :-) I used atsh (the C version of the analysis program) to do the analysis part - using the command line app or the gtk gui. That compiled fine and is part of Planet CCRMA. Then you can use ATS to load the analysis files (*.ats) into lisp (sbcl under fc4 in my case) and transform them, the resynthesis instruments also worked for me on clm3, I don't remember if I had to do any tweaking... -- Fernando > You can find links to most of the stuff from this page: > http://www.dxarts.washington.edu/ats/ > Best, > JUAN > > On 3/8/07, Juan I Reyes wrote: > > > > Hi, > > > > I hate to make Juan Pampin respond to this email but I should say I miss > > a lot ATS in SBCL and even in the new CMUCl. > > > > Has anyone been able to run ATS beyond ACL5 on PlaneCCRMA ? > > > > --* Juan Reyes From b0ef at esben-stien.name Thu Mar 8 21:49:56 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Fri, 09 Mar 2007 06:49:56 +0100 Subject: [CM] "setchannelmask" Removed (CM) Message-ID: <874povx8xn.fsf@esben-stien.name> Trying to use MIDI with CM, I get: "setchannelmask has been removed from libportmidi" I'm on GNU/Linux using SBCL Is this something known?. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Thu Mar 8 21:51:43 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Fri, 09 Mar 2007 06:51:43 +0100 Subject: [CM] JACK MIDI (CM) Message-ID: <87zm6nvua8.fsf@esben-stien.name> Any plans to add JACK MIDI support to CM? -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Thu Mar 8 23:05:09 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Fri, 09 Mar 2007 08:05:09 +0100 Subject: [CM] Set MIDI Output Device (CM) Message-ID: <87tzwux5ga.fsf@esben-stien.name> Trying to use MIDI with portmidi with CM. It does seem to setup the device and I can see it as an ALSA MIDI device. The command: (pm:GetDefaultOutputDeviceID) 0 ..returns 0 as the default output device and this is, I guess, where it sends the midi event when I do: (new midi) How can I set the output MIDI port to device 9?. I've tried: (setq *portmidi-default-output* 9) , but (pm:GetDefaultOutputDeviceID) still returns 0. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From rbastian at free.fr Thu Mar 8 11:17:09 2007 From: rbastian at free.fr (=?iso-8859-15?q?Ren=E9=20Bastian?=) Date: Thu, 8 Mar 2007 20:17:09 +0100 Subject: [CM] info : clisp, cmucl, cmn Message-ID: <07030820170900.00752@rbastian> Hello, After a hard disk crash, I installed Ubuntu 6.10/Gnome on the laptop hard disk. I could not install clisp (which was my previous lisp for cmn), but I succeded with cmucl (cmucl_19a ...i386.deb) CMN works and snd also. info : it is the finest desktop I never had. Thousand thanks for the crash .... ;-) -- Ren? Bastian http://www.musiques-rb.org http://www.pythoneon.musiques-rb.org From k.s.matheussen at notam02.no Fri Mar 9 06:53:49 2007 From: k.s.matheussen at notam02.no (Kjetil Svalastog Matheussen) Date: Fri, 9 Mar 2007 15:53:49 +0100 (CET) Subject: [CM] ats which lisp In-Reply-To: <1173388101.16845.22.camel@strawberry> References: <1173377263.12799.98.camel@strawberry> <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> <1173388101.16845.22.camel@strawberry> Message-ID: On Thu, 8 Mar 2007, Juan I Reyes wrote: > Hola Juan! > > Thanks a lot for your response. > > I was afraid this was going to be the answer. I have not had any luck > with ATS on clm-2 on Fedora Extras' cmucl-19c-7.fc6. But please forgive > me for not having tried de C version but I feel the Lisp code is quite > exquisite (and flexible) for many musical expression algorithms compared > to the graphical interface. I'll give it few more shots. > > BTW, Could ATS Scheme be a nice project for SND gurus: Kjetil and > Michael Scholz ? > I don't know if this helps, but interfacing with c libraries and c arrays are very easy using snd. If you load the file "eval-c.scm", doing something like this might get you started: (eval-c "-latsa" "#include " (proto->public "void init_atsa();" "int get_atsa_length(char* filename);" "float *get_atsa_data(char* filename);")) (init_atsa) (define list-of-atsa-data (ec-get-floats (get_atsa_data "afile") (get_atsa_length "afile"))) (define (put-data-back newvals) (let ((data (get_atsa_data "afile"))) (c-for-each (lambda (n val) (ec-put-floats-element data n val)) newvals))) (put-data-back (map 1+ list-of-atsa-data)) From vze26m98 at optonline.net Fri Mar 9 08:12:38 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 09 Mar 2007 11:12:38 -0500 Subject: [CM] Re: Compiling FTH on OSX progress In-Reply-To: Message-ID: Hi Michael- I've made a little progress in troubleshooting the OSX compile of FTH. It seems to be centered around some confusions with the readline library. I've been configuring with: ./configure --without-gmp configure picks up on readline.h and history.h (which is a symlink to readline.h) in OSX's /usr/include directory. There's some issue with readline support on OSX, eg: but as of now, I'm unclear why OSX has these includes if there's no support. (A topic for further research...) My first thought was to simply use --with-readline-prefix=/sw in order to reference the Fink install of GNU readline that I have. This seemed to go well until the link stages of FTH's build, where I got a bunch of errors. I decided to try to build without readline as a test: ./configure --without-gmp --without-readline and got the below-- slightly less angry than the compile --with-readline-prefix, but exhibiting many of the same errors: : ../src/array.o ../src/file.o ../src/hash.o ../src/hook.o ../src/io.o ../src/list.o ../src/misc.o ../src/numbers.o ../src/object.o ../src/port.o ../src/proc.o ../src/regexp.o ../src/string.o ../src/symbol.o ../src/utils.o ../ficl/dictionary.o ../ficl/extras.o ../ficl/fileaccess.o ../ficl/hash.o ../ficl/prefix.o ../ficl/primitives.o ../ficl/search.o ../ficl/stack.o ../ficl/system.o ../ficl/tools.o ../ficl/unix.o ../ficl/utility.o ../ficl/vm.o ../ficl/word.o `if test "Xalloca.o obstack.o regex.o" = "X"; then echo ""; else echo ../lib/*.o; fi` -o libfth.so -lm -lc rm -f libfth.a ar cr libfth.a ../src/array.o ../src/file.o ../src/hash.o ../src/hook.o ../src/io.o ../src/list.o ../src/misc.o ../src/numbers.o ../src/object.o ../src/port.o ../src/proc.o ../src/regexp.o ../src/string.o ../src/symbol.o ../src/utils.o ../ficl/dictionary.o ../ficl/extras.o ../ficl/fileaccess.o ../ficl/hash.o ../ficl/prefix.o ../ficl/primitives.o ../ficl/search.o ../ficl/stack.o ../ficl/system.o ../ficl/tools.o ../ficl/unix.o ../ficl/utility.o ../ficl/vm.o ../ficl/word.o `if test "Xalloca.o obstack.o regex.o" = "X"; then echo ""; else echo ../lib/*.o; fi` ranlib libfth.a make fth-static gcc -o fth-static fth.o libfth.a -lm -lc /usr/bin/ld: Undefined symbols: _fth_make_ratio_from_float _gmp_asprintf _mpf_clear _mpf_init_set_d _mpf_integer_p collect2: ld returned 1 exit status make[2]: *** [fth-static] Error 1 make[1]: *** [fth] Error 2 make: *** [all] Error 2 I'll start to look at some of these undefined symbols. (why _gmp_asprintf if I'm not building with gmp?) and see if I can get a good build. Take care and thanks again! Charles From vze26m98 at optonline.net Fri Mar 9 08:24:13 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 09 Mar 2007 11:24:13 -0500 Subject: [CM] Re: Compiling FTH on OSX progress In-Reply-To: Message-ID: I thought I'd inlcude the link erros I got when I built with: ./configure --without-gmp --with-readline-prefix=/sw : -L/sw/lib ../src/array.o ../src/file.o ../src/hash.o ../src/hook.o ../src/io.o ../src/list.o ../src/misc.o ../src/numbers.o ../src/object.o ../src/port.o ../src/proc.o ../src/regexp.o ../src/string.o ../src/symbol.o ../src/utils.o ../ficl/dictionary.o ../ficl/extras.o ../ficl/fileaccess.o ../ficl/hash.o ../ficl/prefix.o ../ficl/primitives.o ../ficl/search.o ../ficl/stack.o ../ficl/system.o ../ficl/tools.o ../ficl/unix.o ../ficl/utility.o ../ficl/vm.o ../ficl/word.o `if test "Xalloca.o obstack.o regex.o" = "X"; then echo ""; else echo ../lib/*.o; fi` -o libfth.so -lintl -liconv -lc -lreadline -lncurses -lm -lc rm -f libfth.a ar cr libfth.a ../src/array.o ../src/file.o ../src/hash.o ../src/hook.o ../src/io.o ../src/list.o ../src/misc.o ../src/numbers.o ../src/object.o ../src/port.o ../src/proc.o ../src/regexp.o ../src/string.o ../src/symbol.o ../src/utils.o ../ficl/dictionary.o ../ficl/extras.o ../ficl/fileaccess.o ../ficl/hash.o ../ficl/prefix.o ../ficl/primitives.o ../ficl/search.o ../ficl/stack.o ../ficl/system.o ../ficl/tools.o ../ficl/unix.o ../ficl/utility.o ../ficl/vm.o ../ficl/word.o `if test "Xalloca.o obstack.o regex.o" = "X"; then echo ""; else echo ../lib/*.o; fi` ranlib: file: libfth.a(alloca.o) has no symbols ranlib libfth.a ranlib: file: libfth.a(alloca.o) has no symbols make fth-static gcc -L/sw/lib -o fth-static fth.o libfth.a -lintl -liconv -lc -lreadline -lncurses -lm -lc /usr/bin/ld: warning multiple definitions of symbol _xrealloc libfth.a(utils.o) definition of _xrealloc in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xrealloc /usr/bin/ld: warning multiple definitions of symbol _xmalloc libfth.a(utils.o) definition of _xmalloc in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xmalloc /usr/bin/ld: warning multiple definitions of symbol _xfree libfth.a(utils.o) definition of _xfree in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xfree /usr/bin/ld: Undefined symbols: _fth_make_ratio_from_float _gmp_asprintf _mpf_clear _mpf_init_set_d _mpf_integer_p collect2: ld returned 1 exit status make[2]: *** [fth-static] Error 1 make[1]: *** [fth] Error 2 make: *** [all] Error 2 From bil at ccrma.Stanford.EDU Fri Mar 9 10:30:47 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Fri, 9 Mar 2007 10:30:47 -0800 Subject: [CM] cairo in snd?? Message-ID: <20070309182805.M95861@ccrma.Stanford.EDU> Heh heh -- for the good sports amongst us (that's everyone!), I've got a cairo backend running in the CVS Snd (replacing the deprecated Gdk graphics stuff). Lots of nits yet to squash, such as getting the cursor to move (sigh, cairo does not support XOR graphics!!). I feel like I'm back at the old lab -- cairo is a gussied-up postscript which was turtle-graphics made unreadable -- the more things change... From vze26m98 at optonline.net Fri Mar 9 11:12:41 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 09 Mar 2007 14:12:41 -0500 Subject: [CM] FTH for Snd: static or shared? In-Reply-To: Message-ID: Hi all- Does anyone know if when compiling Michael Scholz's FTH for Snd, it either has to be, or can, or cannot be compiled static or shared? I think FTH tries to compile static (or both) by default, and I'm having trouble with the static link step... Any thoughts or statements of hard fact greatly appreciated! Best, Charles From bil at ccrma.Stanford.EDU Fri Mar 9 11:30:24 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Fri, 9 Mar 2007 11:30:24 -0800 Subject: [CM] FTH for Snd: static or shared? In-Reply-To: References: Message-ID: <20070309192922.M82793@ccrma.Stanford.EDU> It works in the static case for me -- loading /usr/local/lib/libfth.a -- what was the error? (This is on an Intel Mac). From vze26m98 at optonline.net Fri Mar 9 11:46:50 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 09 Mar 2007 14:46:50 -0500 Subject: [CM] FTH for Snd: SUCCESS!! In-Reply-To: <20070309192922.M82793@ccrma.Stanford.EDU> Message-ID: OK- Sorry for all the churn today. My build of FTH finally completed and I can make check successfully. The usual: Darwin spinoza 8.8.0 Darwin Kernel Version 8.8.0: Fri Sep 8 17:18:57 PDT 2006; root:xnu-792.12.6.obj~1/RELEASE_PPC Power Macintosh powerpc powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build 5367) To build FTH on OSX PPC there are least dependencies on GMP and readline. (There may be others that didn't bark at me) I used Fink unstable source packages in all cases. It seems you MUST build with GMP, as trying to configure without it doesn't avoid a call to gmp_asprintf() in the functions fl_inspect() and fl_to_string() found at the top of src/numbers.c. You can be fooled by configure's acceptance of the BSD readline emulation in OSX 10.4 in usr/include. I spent a while tinkering with trying to get it to work, but the implementation is pretty old (still has max_input_entries from readline 4.1) so the expedient thing to do is install Fink readline or equivalent. As usual, I didn't read the README file quite as carefully as I should. For me, this line worked the best: ./configure --with-gmp-prefix=/sw --with-readline-prefix=/sw --disable-nls CFLAGS="-g3 -O2" Even with it, I got the following complaints from the static link: make fth-static gcc -L/sw/lib -L/sw/lib -o fth-static fth.o libfth.a -lgmp -lreadline -lncurses -lm -lc /usr/bin/ld: warning multiple definitions of symbol _xrealloc libfth.a(utils.o) definition of _xrealloc in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xrealloc /usr/bin/ld: warning multiple definitions of symbol _xmalloc libfth.a(utils.o) definition of _xmalloc in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xmalloc /usr/bin/ld: warning multiple definitions of symbol _xfree libfth.a(utils.o) definition of _xfree in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xfree cp fth-static fth But the final product passes make check, so I'm happy for now. Now on to make Snd-forth!! Best and thanks, Charles From vze26m98 at optonline.net Fri Mar 9 18:38:03 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 09 Mar 2007 21:38:03 -0500 Subject: [CM] Where are fth_new_eval and fth_printing_p? Message-ID: Hi all- My build of Snd-fth fails with this: /usr/bin/ld: warning multiple definitions of symbol _xrealloc /usr/local/lib/libfth.a(utils.o) definition of _xrealloc in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xrealloc /usr/bin/ld: warning multiple definitions of symbol _xmalloc /usr/local/lib/libfth.a(utils.o) definition of _xmalloc in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xmalloc /usr/bin/ld: warning multiple definitions of symbol _xfree /usr/local/lib/libfth.a(utils.o) definition of _xfree in section (__TEXT,__text) /sw/lib/libreadline.dylib(xmalloc.so) definition of _xfree /usr/bin/ld: Undefined symbols: _fth_new_eval _fth_printing_p collect2: ld returned 1 exit status make: *** [snd] Error 1 grep-ing for fth_new_eval and fth_printing_p in the snd-8.9 (release, not CVS) and fth-1.0.8 (again, release) reveals nothing. Looks like they've been pulled with a bunch of Forth stuff from xen.c in the CVS. What's the story? Can I just take the new xen.c and substitute it in the release distribution, or do I need to commit to switching over to the Snd CVS? Best, Charles From scholz-micha at gmx.de Fri Mar 9 18:20:15 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Sat, 10 Mar 2007 03:20:15 +0100 Subject: [CM] Re: Compiling FTH on OSX progress In-Reply-To: (Charles Turner's message of "Fri\, 09 Mar 2007 11\:12\:38 -0500") References: Message-ID: <86k5xpsuu8.fsf@Lerche.Socrates> Hi, Charles! Sorry for the trouble I brought to you. > /usr/bin/ld: Undefined symbols: > _fth_make_ratio_from_float > _gmp_asprintf > _mpf_clear > _mpf_init_set_d > _mpf_integer_p > collect2: ld returned 1 exit status This is now all fixed in current CVS. I should have to test at least once a week all different lib possibilities. Normally FTH should compile without GMP as well as without Readline. I renamed also xmalloc and friends to fth_malloc etc. inf-snd.el has a variable inf-snd-working-directory which defaults to your home directory. This variable sets the buffer-local default-directory on start up time. If you have started an inf-snd-buffer you can check it's value with C-hv. Thank you very much for your work, it was of great help! Mike From cycle.code.media at gmail.com Fri Mar 9 20:41:28 2007 From: cycle.code.media at gmail.com (James Baker) Date: Sat, 10 Mar 2007 15:41:28 +1100 Subject: [CM] sbcl / cm / win32 Message-ID: <428d2dc0703092041u46817164sfd06d8b868c00b20@mail.gmail.com> rick, was just mucking around with sbcl (1.0.2) under windows and thought id try and get cm to load but ive hit a brickwall ; CM install directory: "D:\code\lib\cm-cvs\cm\" ; Loading "bin/sbcl_1.0.2_windows-i686/pkg.fasl" ; Generating "src/iter.lisp" debugger invoked on a SB-FORMAT:FORMAT-ERROR: error in FORMAT: unknown format directive (character: Return) ~%;;; generated by scheme->cltl from ~A.~A ~ on ~A~%~% ^ Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [RETRY ] Retry performing # on #. 1: [ACCEPT] Continue, treating # on # as having been successful. 2: [ABORT ] Exit debugger, returning to top level. (SB-FORMAT::INTERPRET-DIRECTIVE-LIST # > "<~ on " #<~A> #<~%> #<~%>) ("loop" "scm" "10-Mar-2007 15:37:06") ("10-Mar-2007 15:37:06")) 0] any ideas? cheers, james From scholz-micha at gmx.de Fri Mar 9 20:46:48 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Sat, 10 Mar 2007 05:46:48 +0100 Subject: [CM] Where are fth_new_eval and fth_printing_p? In-Reply-To: (Charles Turner's message of "Fri\, 09 Mar 2007 21\:38\:03 -0500") References: Message-ID: <86bqj1r9hj.fsf@Lerche.Socrates> Hi, Charles! > My build of Snd-fth fails with this: > > /usr/bin/ld: Undefined symbols: > _fth_new_eval > _fth_printing_p > collect2: ld returned 1 exit status > Can I just take the new xen.c and substitute it in the release > distribution, or do I need to commit to switching over to the Snd CVS? In your version you can comment out the five global variables below xen_repl, and the functions fth_snd_print and fth_emacs_eval. The initilize function looks now like: void xen_initialize(void) { fth_init(); fth_exit_hook = fth_snd_exit; } All the best, Mike From csr21 at cantab.net Fri Mar 9 23:32:13 2007 From: csr21 at cantab.net (Christophe Rhodes) Date: Sat, 10 Mar 2007 07:32:13 +0000 Subject: [CM] sbcl / cm / win32 In-Reply-To: <428d2dc0703092041u46817164sfd06d8b868c00b20@mail.gmail.com> (James Baker's message of "Sat, 10 Mar 2007 15:41:28 +1100") References: <428d2dc0703092041u46817164sfd06d8b868c00b20@mail.gmail.com> Message-ID: <87fy8d5zb6.fsf@cantab.net> "James Baker" writes: > rick, > > was just mucking around with sbcl (1.0.2) under windows and thought id > try and get cm to load but ive hit a brickwall > > ; CM install directory: "D:\code\lib\cm-cvs\cm\" > ; Loading "bin/sbcl_1.0.2_windows-i686/pkg.fasl" > ; Generating "src/iter.lisp" > debugger invoked on a SB-FORMAT:FORMAT-ERROR: > error in FORMAT: unknown format directive (character: Return) > ~%;;; generated by scheme->cltl from ~A.~A ~ > on ~A~%~% > ^ > > any ideas? The support in SBCL for windows for DOS line endings (CRLF) is incomplete, and this error message is a symptom: the FORMAT call sees a directive ~, which SBCL treats as undefined. If you were to convert the CM sources that you have to Unix line endings (that is, using just LF instead of CRLF as the newline sequence) then this error would probably disappear. Cheers, Christophe From b0ef at esben-stien.name Sat Mar 10 04:37:05 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Sat, 10 Mar 2007 13:37:05 +0100 Subject: [CM] cairo in snd?? In-Reply-To: <20070309182805.M95861@ccrma.Stanford.EDU> (Bill Schottstaedt's message of "Fri, 9 Mar 2007 10:30:47 -0800") References: <20070309182805.M95861@ccrma.Stanford.EDU> Message-ID: <873b4dgtqm.fsf@esben-stien.name> "Bill Schottstaedt" writes: > I've got a cairo backend running in the CVS Snd That's really excellent;) - looking forward to the eye candy;) -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From landspeedrecord at gmail.com Sat Mar 10 09:46:05 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Sat, 10 Mar 2007 12:46:05 -0500 Subject: [CM] .IMG files on PC Message-ID: Hello, I am trying to burn the planet CCRMA discs from a PC. Neither Nero nor Alcohol recognize the format. Alcohol wants to know whether the disc is "data track mode 1" or "data track mode 2 form 1" and also what the block size is, etc... Any ideas? I did google it but I got a giant mass of unhelpful gobblety-gook about Mac discs and video game discs. There was one post to this forum that mentioned how to do it in Nero but it most have been an older version of nero because it didn't work for me. Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From landspeedrecord at gmail.com Sat Mar 10 09:55:45 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Sat, 10 Mar 2007 12:55:45 -0500 Subject: [CM] Burning .IMG files on a PC Message-ID: Hello, I am trying to burn the planet CCRMA discs from a PC. Neither Nero nor Alcohol recognize the format. Alcohol wants to know whether the disc is "data track mode 1" or "data track mode 2 form 1" and also what the block size is, etc... Any ideas? I did google it but I got a giant mass of unhelpful gobblety-gook about Mac discs and video game discs. There was one post to this forum that mentioned how to do it in Nero but it most have been an older version of nero because it didn't work for me. Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From b0ef at esben-stien.name Sat Mar 10 14:09:39 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Sat, 10 Mar 2007 23:09:39 +0100 Subject: [CM] Vibrating Membrane Synthesis with the Wave Equation (CLM) Message-ID: <87d53gg38c.fsf@esben-stien.name> Anyone know of any examples of physical modeling of a drum using the wave equation?. I'm not after additive techniques or the karplus strong algorithm. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From juanig at ccrma.Stanford.EDU Sat Mar 10 07:44:05 2007 From: juanig at ccrma.Stanford.EDU (Juan I Reyes) Date: Sat, 10 Mar 2007 07:44:05 -0800 Subject: [CM] ats which lisp In-Reply-To: <1173406631.24677.45.camel@cmn3.stanford.edu> References: <1173377263.12799.98.camel@strawberry> <131f0ea00703081130t90c68bcs8ddc0916b10282fd@mail.gmail.com> <1173406631.24677.45.camel@cmn3.stanford.edu> Message-ID: <1173541445.3284.15.camel@chryseis> Thanks a lot Nando, Juan and Kjetil, I have not been able to response more promptly because apparently a fishing boat cut (broke or whatever) the Internet cable under the Caribean sea and it seems this is now the connection to Northern South America now. This had led to some conspiracy theories now involving Venezuelan politics. Let's see if I can get this message through! --* Juan From nando at ccrma.Stanford.EDU Sat Mar 10 16:38:31 2007 From: nando at ccrma.Stanford.EDU (Fernando Lopez-Lezcano) Date: Sat, 10 Mar 2007 16:38:31 -0800 Subject: [CM] Burning .IMG files on a PC In-Reply-To: References: Message-ID: <1173573511.24038.11.camel@cmn3.stanford.edu> On Sat, 2007-03-10 at 12:55 -0500, Landspeedrecord wrote: > Hello, > > I am trying to burn the planet CCRMA discs from a PC. Neither Nero > nor Alcohol recognize the format. Alcohol wants to know whether the > disc is "data track mode 1" or "data track mode 2 form 1" and also > what the block size is, etc... Any ideas? I did google it but I got > a giant mass of unhelpful gobblety-gook about Mac discs and video game > discs. There was one post to this forum that mentioned how to do it > in Nero but it most have been an older version of nero because it > didn't work for me. Any Planet CCRMA cdrom images you might have are really really old and obsolete... I don't use any of the windows burners but you should have an option to burn an "iso image" or something similarly named. What I released in the past was in iso image format, that is, the file is a binary image of the disk to be burned (it is not a track or anything else, just a complete disk). -- Fernando From b0ef at esben-stien.name Sat Mar 10 18:55:14 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Sun, 11 Mar 2007 03:55:14 +0100 Subject: [CM] GUILE -> Abnormal Exit (snd-rt) Message-ID: <87abyk8p65.fsf@esben-stien.name> Trying to run some GUI code, I'm getting: -> destructor Some deprecated features have been used. Set the environment variable GUILE_WARN_DEPRECATED to "detailed" and rerun the program to get more information. Set it to "no" to suppress this message. Process scheme exited abnormally with code 1 Here's the code: (define i (a_new_gnu_order 0 0.1 45 0.3)) (definstrument (a_new_gnu_order start-time duration frequency amplitude #:key (partial0 1.0)(partial-amplitude0 0.8) (partial1 1.593)(partial-amplitude1 0.6) (partial2 2.135)(partial-amplitude2 0.6) (partial3 2.295)(partial-amplitude3 0.35) (partial4 2.917)(partial-amplitude4 0.3) (partial5 3.598)(partial-amplitude5 0.2) (amplitude-envelope '(0 0 .04 1 .4 1 1 0)) ;;(amplitude-envelope '(0 0.5 1 0 1 0))) #:allow-other-keys) (let* ((start (floor (* start-time (mus-srate)))) (len (floor (* duration (mus-srate)))) ;wtf? (foundit 1) (face 100.0) ;;base oscillator (sine0 (make-oscil :frequency frequency)) (sine1 (make-oscil :frequency (* partial0 frequency))) (sine2 (make-oscil :frequency (* partial1 frequency))) (sine3 (make-oscil :frequency (* partial2 frequency))) (sine4 (make-oscil :frequency (* partial3 frequency))) (sine5 (make-oscil :frequency (* partial4 frequency))) (sine6 (make-oscil :frequency (* partial5 frequency))) ;;insert modulating oscillator (mod (make-oscil :frequency 50)) (indenv '(0 2 100 1)) ;snare (indenv '(0 100 50 0)) (devf (make-env :envelope indenv :scaler (in-hz 75) :start start :end len)) (amplitude-envelope (make-env :envelope amplitude-envelope :scaler amplitude :start start :end len)) (output (make-vct len)) ;delete these two old lines from havanna ; (osc (make-oscil)) ;(vol 4/6) ) ;; ; (instrument ( 0 2 (lambda () (receive-midi (lambda (control data1 data2) (set! control (logand #xf0 control)) ;;(printf "gakk! %x %x %x\\n" control data1 data2) (if (= control #x90) (begin (set! foundit 1))))) (out (* (env amplitude-envelope) (+ (* partial-amplitude0 (oscil sine1 (* (env devf) (oscil mod)))) (* partial-amplitude1 (oscil sine2 (* (env devf) (oscil mod)))) (* partial-amplitude2 (oscil sine3)) (* partial-amplitude3 (oscil sine4)) (* partial-amplitude4 (oscil sine5)) (* partial-amplitude5 (oscil sine6)) ) ) ) ) ) ;) (exit (lambda () (-> instrument stop) (-> d hide))) (d ( "Finally!" exit "Close" exit "Stop" (<- instrument stop) "Start" (<- instrument play))) ( d "Amplitude" 0 (-> instrument face) 1.0 (lambda (val) (set! (-> instrument face) val)) 1000) (-> d show))) Any pointers as to what I'm doing wrong?. When I uncomment the "instrument" line, I'm getting an error that "instrument" is undefined, but it seems to work fine for the examples in rt-examples.scm. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From carl.boingie at verizon.net Sat Mar 10 19:11:19 2007 From: carl.boingie at verizon.net (Carl Edwards) Date: Sat, 10 Mar 2007 22:11:19 -0500 Subject: [CM] Vibrating Membrane Synthesis with the Wave Equation (CLM) In-Reply-To: <87d53gg38c.fsf@esben-stien.name> References: <87d53gg38c.fsf@esben-stien.name> Message-ID: <304D60F1-6941-4F55-BA71-7A0796A90CE4@verizon.net> Maybe take a look at: "synthesizing sounds from rigid body simulations" and other papers by James F. O'Brien (and company). In a similar vein, look into Dinesh K. Pai's work. Hope it helps, Carl Edwards On Mar 10, 2007, at 5:09 PM, Esben Stien wrote: > Anyone know of any examples of physical modeling of a drum using the > wave equation?. > > I'm not after additive techniques or the karplus strong algorithm. > > -- > Esben Stien is b0ef at e s a > http://www. s t n m > irc://irc. b - i . e/%23contact > sip:b0ef@ e e > jid:b0ef@ n n > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist From vze26m98 at optonline.net Sun Mar 11 06:21:58 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Sun, 11 Mar 2007 09:21:58 -0400 Subject: [CM] Pointers into snd-help source? Message-ID: Hi all- I'm really happy I can use FTH as my scripting language in Snd, but one thing I miss from the Guile version is the ability to type: (snd-help 'update-transform-graph) and get a help string for that word in the listener. I'd like to switch my Snd-FTH to give me these strings in spite of the fact that the language will be the wrong one. Can someone give me a general pointer to where (in snd-help.c?) these strings are "switched off" in FTH? I could hack the rest... Also, from a quick look at the source, I can see why providing these for FTH (or Ruby) is non-trivial. Have there been any discussions/thoughts about how to approach providing the "H_" strings defined in the code now that Snd is multi-lingual? Best and thanks, Charles From k.s.matheussen at notam02.no Sun Mar 11 06:23:36 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Sun, 11 Mar 2007 14:23:36 +0100 (CET) Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: <87abyk8p65.fsf@esben-stien.name> References: <87abyk8p65.fsf@esben-stien.name> Message-ID: On Sun, 11 Mar 2007, Esben Stien wrote: > Trying to run some GUI code, I'm getting: > > -> destructor > > Some deprecated features have been used. Set the environment > variable GUILE_WARN_DEPRECATED to "detailed" and rerun the > program to get more information. Set it to "no" to suppress > this message. > > Process scheme exited abnormally with code 1 > > Here's the code: > ... > (let* ((start (floor (* start-time (mus-srate)))) > (len (floor (* duration (mus-srate)))) > ;wtf? ... > ;; > ; (instrument > ( 0 2 ... > (exit (lambda () > (-> instrument stop) > (-> d hide))) > Whats happening here is that "exit" is not a variable in the let* block, but a command being executed (thats why snd is exiting). > > Any pointers as to what I'm doing wrong?. When I uncomment the > "instrument" line, I'm getting an error that "instrument" is > undefined, but it seems to work fine for the examples in > rt-examples.scm. > Yes, you should not uncomment the "instrument" line, because that is the name of the variable holding the instance, which you need later. The reason for the error you get seems like an indentation error. The last variable in the instrument is "d". Everything after that are commands to be executed. And it seems like you are missing a paranthesis after the declaration of "d". You also need letrec* instead of let*, because you are referencing "d" in "exit", which is declared later. A version with those changes is below. I don't get any sound though, but maybe its not supposed to make any sound yet? (definstrument (a_new_gnu_order start-time duration frequency amplitude #:key (partial0 1.0)(partial-amplitude0 0.8) (partial1 1.593)(partial-amplitude1 0.6) (partial2 2.135)(partial-amplitude2 0.6) (partial3 2.295)(partial-amplitude3 0.35) (partial4 2.917)(partial-amplitude4 0.3) (partial5 3.598)(partial-amplitude5 0.2) (amplitude-envelope-list '(0 0 .04 1 .4 1 1 0)) ;;(amplitude-envelope '(0 0.5 1 0 1 0))) #:allow-other-keys) (letrec* ((start (floor (* start-time (mus-srate)))) (len (floor (* duration (mus-srate)))) ;wtf? (foundit 1) (face 100.0) ;;base oscillator (sine0 (make-oscil :frequency frequency)) (sine1 (make-oscil :frequency (* partial0 frequency))) (sine2 (make-oscil :frequency (* partial1 frequency))) (sine3 (make-oscil :frequency (* partial2 frequency))) (sine4 (make-oscil :frequency (* partial3 frequency))) (sine5 (make-oscil :frequency (* partial4 frequency))) (sine6 (make-oscil :frequency (* partial5 frequency))) ;;insert modulating oscillator (mod (make-oscil :frequency 50)) (indenv '(0 2 100 1)) ;;snare (indenv '(0 100 50 0)) (devf (make-env :envelope indenv :scaler (in-hz 75) :start start :end len)) (amplitude-envelope (make-env :envelope amplitude-envelope-list :scaler amplitude :start start :end len)) (output (make-vct len)) ;;delete these two old lines from havanna ;;(osc (make-oscil)) ;;(vol 4/6) (face 0.5) (instrument ( (lambda () (receive-midi (lambda (control data1 data2) (set! control (logand #xf0 control)) ;;(printf "gakk! %x %x %x\\n" control data1 data2) (if (= control #x90) (begin (set! foundit 1))))) (out (* face (env amplitude-envelope) (+ (* partial-amplitude0 (oscil sine1 (* (env devf) (oscil mod)))) (* partial-amplitude1 (oscil sine2 (* (env devf) (oscil mod)))) (* partial-amplitude2 (oscil sine3)) (* partial-amplitude3 (oscil sine4)) (* partial-amplitude4 (oscil sine5)) (* partial-amplitude5 (oscil sine6)) ) ) ) ) ) ) (exit (lambda () (-> instrument stop) (-> d hide))) (d ( "Finally!" exit "Close" exit "Stop" (<- instrument stop) "Start" (<- instrument play)))) ( d "Amplitude" 0 (-> instrument face) 1.0 (lambda (val) (set! (-> instrument face) val)) 1000) (-> d show))) From k.s.matheussen at notam02.no Sun Mar 11 07:47:04 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Sun, 11 Mar 2007 15:47:04 +0100 (CET) Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: References: <87abyk8p65.fsf@esben-stien.name> Message-ID: > A version with those changes is below. I don't get any sound though, but > maybe its not supposed to make any sound yet? > Sorry, I get a sound, its just so low frequent that I didn't notice it. From b0ef at esben-stien.name Sun Mar 11 17:00:29 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 12 Mar 2007 01:00:29 +0100 Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: (Kjetil S. Matheussen's message of "Sun, 11 Mar 2007 14:23:36 +0100 (CET)") References: <87abyk8p65.fsf@esben-stien.name> Message-ID: <87veh72uw2.fsf@esben-stien.name> "Kjetil S. Matheussen" writes: > A version with those changes is below Thank you very much;). I'm wondering, though. Is there any way to retrigger the synth from the GUI?. The "Start" and "Stop" is only pausing the graph, but the code I have is supposed to be a drum and it's finished quite quickly. What I'm trying to do, is tweak the variables of the drum, while triggering it, preferable over MIDI in the end, but initially from the GUI. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Sun Mar 11 17:02:50 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 12 Mar 2007 01:02:50 +0100 Subject: [CM] Vibrating Membrane Synthesis with the Wave Equation (CLM) In-Reply-To: <304D60F1-6941-4F55-BA71-7A0796A90CE4@verizon.net> (Carl Edwards's message of "Sat, 10 Mar 2007 22:11:19 -0500") References: <87d53gg38c.fsf@esben-stien.name> <304D60F1-6941-4F55-BA71-7A0796A90CE4@verizon.net> Message-ID: <87r6rv2us5.fsf@esben-stien.name> Carl Edwards writes: > James F. O'Brien [..] Dinesh K. Pai Thank; I'm always keen on learning more about the physics and mathematics of this, something which I'm studying, but I thought maybe there was some code to look at. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From vze26m98 at optonline.net Sun Mar 11 16:23:58 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Sun, 11 Mar 2007 19:23:58 -0400 Subject: [CM] Building Snd-FTH on Debian unstable... In-Reply-To: Message-ID: Hi- I had a chance to build Snd-FTH on a Dell L700CX running Debian unstable, although not with it's most recent kernel: Linux ballard 2.6.14-2-386 #1 Wed Dec 28 17:55:02 UTC 2005 i686 GNU/Linux gcc (GCC) 4.1.2 20061020 (prerelease) (Debian 4.1.1-17) The build went pretty much without incident except for the following minor points: On the FTH side, from CVS: mkinstalldirs failed a couple of times, but this was where it was trying to create /usr/local/share/fth when I didn't even have /usr/local/share. make check failed with the following: cturner at ballard:/usr/local/src/fth$ make check #(cd . && aclocal -I m4) #(cd . && autoconf && autoheader) #(cd . && autoheader && echo timestamp > stamp-h.in) for f in ./ficl ./lib ./src; do (cd ${f} && make all); done make[1]: Entering directory `/usr/local/src/fth/ficl' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/src/fth/ficl' make[1]: Entering directory `/usr/local/src/fth/lib' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/src/fth/lib' make[1]: Entering directory `/usr/local/src/fth/src' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/src/fth/src' (cd tests && make check) make[1]: Entering directory `/usr/local/src/fth/tests' #{ \ echo '# Signature of the current package.'; \ echo 'm4_define([AT_PACKAGE_NAME], [FTH])'; \ echo 'm4_define([AT_PACKAGE_TARNAME], [fth])'; \ echo 'm4_define([AT_PACKAGE_VERSION], [1.0.8])'; \ echo 'm4_define([AT_PACKAGE_STRING], [FTH 1.0.8])'; \ echo 'm4_define([AT_PACKAGE_BUGREPORT], [mi-scholz at users.sourceforge.net])'; \ } >./package.m4 /bin/sh: -c: line 7: syntax error near unexpected token `}' /bin/sh: -c: line 7: `} >./package.m4' make[1]: *** [package.m4] Error 2 make[1]: Leaving directory `/usr/local/src/fth/tests' make: *** [check] Error 2 On the Snd side, from the 8.9 release tarball: I configured with ./configure --with-gtk --with-jack --with-forth, but Snd bailed in the link step because there was no -lfth on the command line: cturner at ballard:/usr/local/src/snd-8$ make -n (cd po && make) make[1]: Entering directory `/usr/local/src/snd-8/po' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/usr/local/src/snd-8/po' gcc -Wl,-export-dynamic -O2 -I. -g -O2 headers.o audio.o io.o sound.o clm.o xen.o vct.o sndlib2xen.o clm2xen.o snd-io.o snd-utils.o snd-listener.o snd-error.o snd-completion.o snd-menu.o snd-axis.o snd-data.o snd-fft.o snd-marks.o snd-file.o snd-edits.o snd-chn.o snd-dac.o snd-region.o snd-select.o snd-find.o snd-snd.o snd-help.o snd-main.o snd-print.o snd-trans.o snd-mix.o snd.o snd-env.o snd-xen.o snd-ladspa.o snd-rec.o snd-kbd.o snd-sig.o snd-draw.o snd-run.o snd-gutils.o snd-ghelp.o snd-gfind.o snd-gmenu.o snd-gdraw.o snd-glistener.o snd-gchn.o snd-gsnd.o snd-gregion.o snd-gdrop.o snd-gmain.o snd-gmix.o snd-grec.o snd-genv.o snd-gxutils.o snd-gxbitmaps.o snd-gxcolormaps.o snd-gfft.o snd-gprint.o snd-gfile.o snd-gxen.o snd-gprefs.o -o snd -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lfontconfig -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXfixes -lpango-1.0 -lcairo -lX11 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 -ljack -lsamplerate -lm -lm I put the following in my makefile: GUILE_LIBS=-lfth I guess there's no FTH_LIBS... ;-) Of course I had to fiddle with xen.c to use the Forth functions in the CVS to make the undefined refs to fth_printing_p and fth_new_eval go away... Things look good after some limited testing. Thanks again! Charles From scholz-micha at gmx.de Sun Mar 11 18:48:24 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Mon, 12 Mar 2007 02:48:24 +0100 Subject: [CM] Pointers into snd-help source? In-Reply-To: (Charles Turner's message of "Sun\, 11 Mar 2007 09\:21\:58 -0400") References: Message-ID: <861wjvi653.fsf@Lerche.Socrates> Hi, Charles! > (snd-help 'update-transform-graph) It is corrected now in current fth-cvs. It was a bug in fth_documentation_ref|set. You can use FTH's help word: help update-transform-graph help is a parsing word so it's not necessary to produce an XT first. snd-help is both a parsing word and a normal word: "update-transform-graph" #t snd-help snd-help update-transform-graph > Also, from a quick look at the source, I can see why providing these for > FTH (or Ruby) is non-trivial. Have there been any discussions/thoughts > about how to approach providing the "H_" strings defined in the code now > that Snd is multi-lingual? All help strings are accessible from snd-forth and Bill has provided some examples for all three languages! If you get the latest fth-cvs you will see them too. I have replaced fth-1.0.8 on SF with corrected tarball. But these changes are not in it, sorry. I use this channel for answering your private mail too because optonline's sendmail says "User unknown" to your address. > 1) I use Fink, and there are two place where ./configure says that "the > preprocessor and compiler disagree about the validity of a header file." > This whizzes by so quickly I don't have a clear memory of which files > they are. I'll try to track this down for you and provide more info. I have two or three candidates in /usr/include and I ignore these warnings. If you compile in an Emacs shell you can scroll to read the messages. > 2) The "make install" process quits because my computer doesn't like > your "install info" command arguments. As a result, I think none of the > .fs, .fr, etc files get installed, and I had to manually copy them to > their directories. Also manually installed the FTH info pages. doc/Makefile uses `install-info --info-dir=dir --info-file=file' What option is wrong or what options knows your install-info? In the meantime, remove the last line at target install in doc/Makefile or better in doc/Makefile.in before ./configure or ./config.status. > 3) So I think the emacs sub-process for FTH doesn't work? Is it possible > to get it to work from the code in Snd 8.9 release, or is there a lot of > work to do? It's of course a really nice feature, but not essential. This depends not on Snd. I use this mode regularly and it works. You must set inf-snd-forth-program-name (note the forth in the name) to your Snd program name. Here is a part of my initialization in .emacs.el: (set-default 'auto-mode-alist (append '(("\\.\\(fs\\|fth\\|fsm\\|fr\\)$" . snd-forth-mode) ("\\.snd_prefs_forth$" . snd-forth-mode)) auto-mode-alist)) (autoload 'run-snd-forth "inf-snd" "Start inferior Snd-Forth process" t) (autoload 'snd-forth-mode "inf-snd" "Load snd-forth-mode, derived from `forth-mode'" t) (setq inf-snd-forth-program-name "snd-forth-xm") The rest is optional, I think. (setq inf-snd-working-directory "~/.snd.d/") (setq inf-snd-index-path "/usr/gnu/cvs/snd/") (setq inf-snd-prompt "snd> ") (add-hook 'inf-snd-forth-mode-hook (lambda () (setq inf-snd-comint-line-end "\n\n"))) (add-hook 'snd-forth-mode-hook (lambda () (define-key (current-local-map) "\C-co" 'snd-send-buffer) (define-key (current-local-map) "\C-cr" 'snd-send-region) (define-key (current-local-map) "\C-ce" 'snd-send-definition))) > 4) Would there be a reason why compiling xg.c takes an order of > magnitude longer with FTH than with Guile? This compile step has always > been long, but for some reason with FTH, it's now a couple hours on my > iBook (1ghz G4). Hours? Here it compiles not much longer than with Ruby or Guile. I confess I have no idea what's to do here. All the best, Mike From scholz-micha at gmx.de Sun Mar 11 20:57:08 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Mon, 12 Mar 2007 04:57:08 +0100 Subject: [CM] Building Snd-FTH on Debian unstable... In-Reply-To: (Charles Turner's message of "Sun\, 11 Mar 2007 19\:23\:58 -0400") References: Message-ID: <863b4bf71n.fsf@Lerche.Socrates> > make check failed with the following: > > make[1]: Entering directory `/usr/local/src/fth/tests' > #{ \ > echo '# Signature of the current package.'; > \ > echo 'm4_define([AT_PACKAGE_NAME], [FTH])'; > \ > echo 'm4_define([AT_PACKAGE_TARNAME], [fth])'; > \ > echo 'm4_define([AT_PACKAGE_VERSION], [1.0.8])'; > \ > echo 'm4_define([AT_PACKAGE_STRING], [FTH 1.0.8])'; > \ > echo 'm4_define([AT_PACKAGE_BUGREPORT], > [mi-scholz at users.sourceforge.net])'; \ > } >./package.m4 I think this is a GNU Make issue. The comment sign in the first line says it is only usable if --enable-maintainer-mode was given, otherwise the entire line should be commented out. Normally make sees only one line but not GNU Make? > I configured with ./configure --with-gtk --with-jack --with-forth, but > Snd bailed in the link step because there was no -lfth on the command > line: You need a working fth in your $PATH, otherwise the configuration won't work. If you have fth in your $PATH what does it say for the following command lines: fth -e .prefix # e.g. /usr/local fth -e .cflags # e.g. -I/usr/local/include/fth fth -e .libs # e.g. -L/usr/local/lib -lfth -lm fth -e .version # e.g. 1.0.8 > I put the following in my makefile: > > GUILE_LIBS=-lfth > > I guess there's no FTH_LIBS... ;-) I think Guile was first. You can read GUILE_* as XEN_* names. Mike From bil at ccrma.Stanford.EDU Mon Mar 12 05:00:16 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Mon, 12 Mar 2007 04:00:16 -0800 Subject: [CM] Pointers into snd-help source? In-Reply-To: <861wjvi653.fsf@Lerche.Socrates> References: <861wjvi653.fsf@Lerche.Socrates> Message-ID: <20070312115855.M5175@ccrma.Stanford.EDU> >> GUILE_LIBS=-lfth >> I guess there's no FTH_LIBS... > I think Guile was first. You can read GUILE_* as XEN_* names. I'll change the names to XEN_CFLAGS and XEN_LIBS. >> Have there been any discussions/thoughts >> about how to approach providing the "H_" strings defined in the code now >> that Snd is multi-lingual? yes, and some things are handled correctly -- constant names, example code snippets, etc: Scheme: :(snd-help "make-fft-window") "(make-fft-window type size :optional (beta 0.0) (alpha 0.0)): -> fft data window (a vct). type is one of the sndlib fft window identifiers such as kaiser-window, beta is the window family parameter, if any: (make-fft-window hamming-window 256)" Ruby: >snd_help("make_fft_window") make_fft_window(type, size, :optional, (beta 0.0), (alpha 0.0)): -> fft data window (a vct). type is one of the sndlib fft window identifiers such as kaiser_window, beta is the window family parameter, if any: make_fft_window(Hamming_window, 256) Forth: >"make-fft-window" snd-help (make-fft-window type size :optional (beta 0.0) (alpha 0.0)): -> fft data window (a vct). type is one of the sndlib fft window identifiers such as kaiser-window, beta is the window family param\ eter, if any: hamming-window 256 make-fft-window But, as you can see, there are still infelicities. One real improvement would be to get gtk/motif/opengl documentation into the xg/xm/gl.c help strings. And, as always, we need more examples. >> 4) Would there be a reason why compiling xg.c takes an order of >> magnitude longer with FTH than with Guile? This is probably a matter of system memory -- xg.c has thousands of functions and whatnot, so if you happen to hit your memory limit while running the compiler, you'll be brought to a standstill as it swaps. I don't notice any real difference on a machine with 4 GBytes RAM: Guile: 0:43.05 Gauche: 1:09.41 Ruby: 0:52.58 Forth: 0:42.39 From k.s.matheussen at notam02.no Mon Mar 12 06:25:44 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Mon, 12 Mar 2007 14:25:44 +0100 (CET) Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: <87veh72uw2.fsf@esben-stien.name> References: <87abyk8p65.fsf@esben-stien.name> <87veh72uw2.fsf@esben-stien.name> Message-ID: On Mon, 12 Mar 2007, Esben Stien wrote: > "Kjetil S. Matheussen" writes: > >> A version with those changes is below > > Thank you very much;). > > I'm wondering, though. Is there any way to retrigger the synth from > the GUI?. Yes, there are several ways. There are three examples in rt-examples.scm, and you can also look at the source for san-dysth, http://www.notam02.no/~kjetism/sandysth/ > The "Start" and "Stop" is only pausing the graph, but the > code I have is supposed to be a drum and it's finished quite quickly. > The quickest way would perhaps be to reset the positions of the envelopes: (mus-reset! amplitude-envelope) (mus-reset! env-devf) Note that you should do this within the block, because I don't know if mus-reset! is thread safe. (?) > What I'm trying to do, is tweak the variables of the drum, while > triggering it, preferable over MIDI in the end, but initially from the > GUI. > If mus-reset! is thread safe, you can call (mus-reset! amplitude-envelope) and (mus-reset! env-devf) in the start callback function. If not, you can either just create a new instance, or send a message somehow. From vze26m98 at optonline.net Mon Mar 12 15:25:28 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Mon, 12 Mar 2007 18:25:28 -0400 Subject: [CM] Building Snd-FTH on Debian unstable... In-Reply-To: <863b4bf71n.fsf@Lerche.Socrates> Message-ID: Michael Scholz wrote on 3/11/07 at 11:57 PM >> I configured with ./configure --with-gtk --with-jack --with-forth, >> but Snd bailed in the link step because there was no -lfth on the >> command line: > >You need a working fth in your $PATH, otherwise the configuration >won't work. I think I was a little fast and loose with the description of my problem, or maybe I don't understand what you're saying. In building Snd as Snd-FTH I ran configure, then make. During the final link step, the linkers reported hundreds of unresolved references from functions starting with the "fth_" prefix. To fix this, I went to the Snd makefile and added the argument "-lfth" because I asssumed that Snd would need to link to this library to find the above unresolved references. The argument -lfth appeared to be missing from the final link command as created by configure. The re-build ("make") proceeded silently, indicating to me the references had been resolved. I ran snd-fth and got a message that it couldn't find libfth.0.so. I ran ldconfig against /usr/local/lib and re-ran snd-fth and everything was OK then. I'm pretty sure this is what happened, the whole build was a lot more focussed than my initial OS X builds. :-) Best, Charles From vze26m98 at optonline.net Mon Mar 12 15:46:33 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Mon, 12 Mar 2007 18:46:33 -0400 Subject: [CM] Pointers into snd-help source? In-Reply-To: <861wjvi653.fsf@Lerche.Socrates> Message-ID: Michael Scholz wrote on 3/11/07 at 9:48 PM >All help strings are accessible from snd-forth and Bill has provided >some examples for all three languages! If you get the latest fth-cvs >you will see them too. Ah, thanks! I am using CVS now for FTH and so this will be an easy update... >> This whizzes by so quickly I don't have a clear memory of which files >> they are. I'll try to track this down for you and provide more info. > >I have two or three candidates in /usr/include and I ignore these >warnings. If you compile in an Emacs shell you can scroll to read the >messages. I have much to learn about emacs. I'll try this later in the week and report back on which files are causing configure to flag the preprocessor. >doc/Makefile uses `install-info --info-dir=dir --info-file=file' > >What option is wrong or what options knows your install-info? This one too I'll check later in the week... >>3) So I think the emacs sub-process for FTH doesn't work? > >This depends not on Snd. I use this mode regularly and it works. Hmm... Perhaps I'm doing something wrong or don't understand. In my view, I got errors because of unresolved references to fth_printing_p and fth_new_eval. As per your suggestion, I commented out (among other things) the function fth_emacs_eval beacuse it references fth_new_eval. I can start a FTH subprocess in emacs, but when I try to execute FTH words, I get stuff like the following: >frames # # So it's looking, from my understanding, for a function that I've commented out, albeit for good reason. Best, Charles From vze26m98 at optonline.net Mon Mar 12 15:54:53 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Mon, 12 Mar 2007 18:54:53 -0400 Subject: [CM] Pointers into snd-help source? In-Reply-To: <20070312115855.M5175@ccrma.Stanford.EDU> Message-ID: Bill Schottstaedt wrote on 3/12/07 at 8:00 AM >>> Have there been any discussions/thoughts about how to approach >>> providing the "H_" strings defined in the code now that Snd is >>> multi-lingual? > >yes, and some things are handled correctly -- constant names, example >code snippets, etc: It sounds like all this will be available to me with my next CVS update of FTH! Cool! >get gtk/motif/opengl documentation into the xg/xm/gl.c help strings. >And, as always, we need more examples. Hmm... I'll take a look. I certainly hope to be sharing some code snippets in the coming months... >>> 4) Would there be a reason why compiling xg.c takes an order of >>> magnitude longer with FTH than with Guile? > >This is probably a matter of system memory Yes, particularly with the MacIntosh. I currently have 768mb. If memory weren't so expensive, I'd just get some, rather than consider the acquisition of a better Linux computer than my Dell. Thanks again! Charles From scholz-micha at gmx.de Mon Mar 12 16:06:27 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Tue, 13 Mar 2007 00:06:27 +0100 Subject: [CM] Pointers into snd-help source? In-Reply-To: (Charles Turner's message of "Mon\, 12 Mar 2007 18\:46\:33 -0400") References: Message-ID: <86fy8aawp8.fsf@Lerche.Socrates> > I can start a FTH subprocess in emacs, but when I try to execute FTH > words, I get stuff like the following: > >>frames > > # > # Hi, Charles! Please replace the function inf-snd-comint-snd-send in inf-snd.el with the one below. Snd 8.8 has the old global variables in xen.c and the old inf-snd.el file. If you have commented out the part in xen.c mentioned earlier, this function should work. Sorry for the confusion. Mike (defun inf-snd-comint-snd-send (proc line) "Special function for sending input LINE to PROC. Variable `comint-input-sender' is set to this function. Running Snd-Ruby it is necessary to load snd/examp.rb in your ~/.snd file which contains run_emacs_eval_hook(line). inf-snd.el uses this function to evaluate one line or multi-line input (Ruby only)." (if (= (length line) 0) (if (eq 'scheme inf-snd-kind) (setq line "#f") (setq line "nil"))) (comint-send-string proc (if (eq 'ruby inf-snd-kind) (format "run_emacs_eval_hook(%%(%s))\n" line) (concat line inf-snd-comint-line-end)))) From vze26m98 at optonline.net Mon Mar 12 19:40:39 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Mon, 12 Mar 2007 22:40:39 -0400 Subject: [CM] Pointers into snd-help source? In-Reply-To: <86fy8aawp8.fsf@Lerche.Socrates> Message-ID: Michael Scholz wrote on 3/12/07 at 7:06 PM >Please replace the function inf-snd-comint-snd-send in inf-snd.el with >the one below. Snd 8.8 has the old global variables in xen.c and the >old inf-snd.el file. If you have commented out the part in xen.c >mentioned earlier, this function should work. Sorry for the >confusion. Hi Mike- I actually downloaded the most recent inf-snd.el from CVS, and Snd-FTH now works fine as a subprocess. I guess I should have realized that if there were changes to xen.c in CVS, there could also be matching changes in inf-snd.el. Thanks for the tip! I think I should switch to Snd CVS real soon and eliminate these kinds of questions... Best, Charles From landspeedrecord at gmail.com Tue Mar 13 07:11:19 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Tue, 13 Mar 2007 10:11:19 -0400 Subject: [CM] Burning .IMG files on a PC In-Reply-To: <1173573511.24038.11.camel@cmn3.stanford.edu> References: <1173573511.24038.11.camel@cmn3.stanford.edu> Message-ID: If Linux .IMGs I downloaded are old and obsolete, are there any newer ones? What should I download and use? The newest version of Red Hat or Fedora? Will the rpms for all the CCRMA stuff work if I use the newest Linux versions? I assumed that new versions might be somehow problematic which is why the CCRMA site had the images to download in the first place. Sorry for my confusion... I am new to Linux. Thanks Charley On 3/10/07, Fernando Lopez-Lezcano wrote: > > On Sat, 2007-03-10 at 12:55 -0500, Landspeedrecord wrote: > > Hello, > > > > I am trying to burn the planet CCRMA discs from a PC. Neither Nero > > nor Alcohol recognize the format. Alcohol wants to know whether the > > disc is "data track mode 1" or "data track mode 2 form 1" and also > > what the block size is, etc... Any ideas? I did google it but I got > > a giant mass of unhelpful gobblety-gook about Mac discs and video game > > discs. There was one post to this forum that mentioned how to do it > > in Nero but it most have been an older version of nero because it > > didn't work for me. > > Any Planet CCRMA cdrom images you might have are really really old and > obsolete... > > I don't use any of the windows burners but you should have an option to > burn an "iso image" or something similarly named. What I released in the > past was in iso image format, that is, the file is a binary image of the > disk to be burned (it is not a track or anything else, just a complete > disk). > > -- Fernando > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vze26m98 at optonline.net Tue Mar 13 09:48:34 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Tue, 13 Mar 2007 12:48:34 -0400 Subject: [CM] [Snd] Weird inf-snd-comint-line-end behavior... Message-ID: Hi all- For Snd-FTH, I've updated the release version of Snd-8 with the CVS files for xen.c and inf-snd.el. I modified the variable inf-snd-comint-line-end to be 2 newlines: "\n\n" Now this works just fine on my Dell running Debian Linux, but for some reason, it's not happy on my G4 iBook. I get: >open-file-dialog GtkWidget_ # <- Here I hit the "return" key again nil # I went back and restored inf-snd-comint-line-end to its 1 newline default ("\n"), and everything works "as expected" (i.e. no prompt unless I hit "return") and works the same as Debian Linux using the default variable value found in inf-snd.el. Any thoughts on how I can dope out what's wrong? Best and thanks! Charles From taube at uiuc.edu Tue Mar 13 11:28:11 2007 From: taube at uiuc.edu (Rick Taube) Date: Tue, 13 Mar 2007 13:28:11 -0500 Subject: [CM] "setchannelmask" Removed (CM) In-Reply-To: <874povx8xn.fsf@esben-stien.name> References: <874povx8xn.fsf@esben-stien.name> Message-ID: apologies for the very late reply. at some point that function went missing from portmidi's tarball, i assumed that was intentional but it turns out that it was omitted by accident. so the newest portmidi sources has the code -- ill have to fix the portmidi lisp side to reflect this. in the meantime you can simple comment out the error call so the function is a no-op On Mar 8, 2007, at 11:49 PM, Esben Stien wrote: > Trying to use MIDI with CM, I get: > > "setchannelmask has been removed from libportmidi" > > I'm on GNU/Linux using SBCL > > Is this something known?. > > -- > Esben Stien is b0ef at e s a > http://www. s t n m > irc://irc. b - i . e/%23contact > sip:b0ef@ e e > jid:b0ef@ n n > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist From taube at uiuc.edu Tue Mar 13 11:29:32 2007 From: taube at uiuc.edu (Rick Taube) Date: Tue, 13 Mar 2007 13:29:32 -0500 Subject: [CM] JACK MIDI (CM) In-Reply-To: <87zm6nvua8.fsf@esben-stien.name> References: <87zm6nvua8.fsf@esben-stien.name> Message-ID: I have very little time now to do this. i would be happy to add support if someone could generate the actual cffi binding. On Mar 8, 2007, at 11:51 PM, Esben Stien wrote: > Any plans to add JACK MIDI support to CM? > > -- > Esben Stien is b0ef at e s a > http://www. s t n m > irc://irc. b - i . e/%23contact > sip:b0ef@ e e > jid:b0ef@ n n > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist From taube at uiuc.edu Tue Mar 13 11:34:56 2007 From: taube at uiuc.edu (Rick Taube) Date: Tue, 13 Mar 2007 13:34:56 -0500 Subject: [CM] Set MIDI Output Device (CM) In-Reply-To: <87tzwux5ga.fsf@esben-stien.name> References: <87tzwux5ga.fsf@esben-stien.name> Message-ID: <48006BB2-B5E4-4B4C-BF36-054EFA5919F2@uiuc.edu> to connect to devices using portmidi first call (pm:getDeviceInfo) to get the list of valid input/output devices. then pass the appropriate ids to the :input and :output keywords in portmidi-open. for example to open portmidi with input from 3 and output to 5 you would do: (defparameter *pm* (portmidi-open :input 3 :output 5)) note that portmidi's device list is static, that is if you add more devices after you've opened portmidi these devices will not be reflected in the list returned by (pm:getdeviceinfo) On Mar 9, 2007, at 1:05 AM, Esben Stien wrote: > Trying to use MIDI with portmidi with CM. > > It does seem to setup the device and I can see it as an ALSA MIDI > device. > > The command: > > (pm:GetDefaultOutputDeviceID) > 0 > > ..returns 0 as the default output device and this is, I guess, where > it sends the midi event when I do: > > (new midi) > > How can I set the output MIDI port to device 9?. I've tried: > > (setq *portmidi-default-output* 9) > > , but (pm:GetDefaultOutputDeviceID) still returns 0. > > -- > Esben Stien is b0ef at e s a > http://www. s t n m > irc://irc. b - i . e/%23contact > sip:b0ef@ e e > jid:b0ef@ n n > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist From nando at ccrma.Stanford.EDU Tue Mar 13 11:46:47 2007 From: nando at ccrma.Stanford.EDU (Fernando Lopez-Lezcano) Date: Tue, 13 Mar 2007 11:46:47 -0700 Subject: [CM] Burning .IMG files on a PC In-Reply-To: References: <1173573511.24038.11.camel@cmn3.stanford.edu> Message-ID: <1173811607.12641.19.camel@cmn3.stanford.edu> On Tue, 2007-03-13 at 10:11 -0400, Landspeedrecord wrote: > If Linux .IMGs I downloaded are old and obsolete, are there any newer > ones? What should I download and use? The newest version of Red Hat > or Fedora? I would recommend either Fedora Core 5 or 6. I don't have images as I used to do (not enough time to do everything). If you have good internet connectivity from the computer in question it should be fine to install from the net (you will need the basic Fedora Core dvd or cds installed first, of course). > Will the rpms for all the CCRMA stuff work if I use the newest Linux > versions? I assumed that new versions might be somehow problematic > which is why the CCRMA site had the images to download in the first > place. > > Sorry for my confusion... I am new to Linux. No problem. If you have more question probably the Planet CCRMA list is a better forum for them... -- Fernando > On 3/10/07, Fernando Lopez-Lezcano wrote: > On Sat, 2007-03-10 at 12:55 -0500, Landspeedrecord wrote: > > Hello, > > > > I am trying to burn the planet CCRMA discs from a > PC. Neither Nero > > nor Alcohol recognize the format. Alcohol wants to know > whether the > > disc is "data track mode 1" or "data track mode 2 form 1" > and also > > what the block size is, etc... Any ideas? I did google it > but I got > > a giant mass of unhelpful gobblety-gook about Mac discs and > video game > > discs. There was one post to this forum that mentioned how > to do it > > in Nero but it most have been an older version of nero > because it > > didn't work for me. > > Any Planet CCRMA cdrom images you might have are really really > old and > obsolete... > > I don't use any of the windows burners but you should have an > option to > burn an "iso image" or something similarly named. What I > released in the > past was in iso image format, that is, the file is a binary > image of the > disk to be burned (it is not a track or anything else, just a > complete > disk). From vze26m98 at optonline.net Tue Mar 13 19:51:13 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Tue, 13 Mar 2007 22:51:13 -0400 Subject: [CM] [Snd] Weird inf-snd-comint-line-end behavior... Message-ID: Charles Turner wrote on 3/13/07 at 12:48 PM >Now this works just fine on my Dell running Debian Linux Actually, I think I have the same trouble there... I'll look at it more carefully on Thursday when I've got some time. Best, Charles From vze26m98 at optonline.net Wed Mar 14 18:49:50 2007 From: vze26m98 at optonline.net (vze26m98) Date: Wed, 14 Mar 2007 21:49:50 -0400 Subject: [CM] [FTH] Bus error with FTH --forth-repl... Message-ID: Hi Mike- Running FTH standalone on OS X, I'm getting a bus error when I type the commandline "fth --forth-repl". OS X Crashreporter says: Exception: EXC_BAD_ACCESS (0x0001) Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000028 Thread 0 Crashed: 0 fth 0x00003184 main + 1316 (fth.c:176) 1 fth 0x000026ac _start + 760 2 fth 0x000023b0 start + 48 Line 176 of file fth.c is: #define FTH_FICL_REPL_P() FTH_FICL_VAR()->true_repl_p I'm wondering if all those fth_ficl vars need to be implicitly defined as functions? Best, Charles From vze26m98 at optonline.net Wed Mar 14 18:55:36 2007 From: vze26m98 at optonline.net (vze26m98) Date: Wed, 14 Mar 2007 21:55:36 -0400 Subject: [CM] [FTH] Bus error with FTH --forth-repl... In-Reply-To: Message-ID: vze26m98 wrote on 3/14/07 at 9:49 PM >Line 176 of file fth.c is: > >#define FTH_FICL_REPL_P() FTH_FICL_VAR()->true_repl_p Oops! Sorry. Line 176 is this: FTH_FICL_REPL_P() = false; I posted the definition in fth.h Best, Charles From scholz-micha at gmx.de Thu Mar 15 10:48:58 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Thu, 15 Mar 2007 18:48:58 +0100 Subject: [CM] [FTH] Bus error with FTH --forth-repl... In-Reply-To: (vze26m's message of "Wed\, 14 Mar 2007 21\:49\:50 -0400") References: Message-ID: <86ejnql7n9.fsf@Lerche.Socrates> > Running FTH standalone on OS X, I'm getting a bus error when I type the > commandline "fth --forth-repl". > > Exception: EXC_BAD_ACCESS (0x0001) > Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000028 Sorry, obviously I never use this argument. CVS has now the corrected version. For a normal repl (like Ruby or Scheme repls with printing the current stack values, i.e. the result of the last eval) calling `fth' is enough. Argument --forth-repl means, the stack remains untouched after evaling your command line much like gforth's repl. Thank you very much for reporting the bug! Mike From vze26m98 at optonline.net Thu Mar 15 13:47:36 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Thu, 15 Mar 2007 16:47:36 -0400 Subject: [CM] [FTH] Bus error with FTH --forth-repl... In-Reply-To: <86ejnql7n9.fsf@Lerche.Socrates> Message-ID: Michael Scholz wrote on 3/15/07 at 1:48 PM >For a normal repl (like Ruby or Scheme repls with printing the current >stack values, i.e. the result of the last eval) calling `fth' is >enough. Argument --forth-repl means, the stack remains untouched >after evaling your command line much like gforth's repl. Yes, it's very nice the default configuration, but all of the other Forths that I use don't work this way, so it's pretty disconcerting for me... I'm switched over to using the FTH CVS, so the fix on this end will be easy >Thank you very much for reporting the bug! Thanks for fixing it so quickly! I hope soon I might be able to fix some of these things myself rather than making lots of work for you! All the best, Charles From vze26m98 at optonline.net Thu Mar 15 15:35:52 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Thu, 15 Mar 2007 18:35:52 -0400 Subject: [CM] Pointers into snd-help source? In-Reply-To: <861wjvi653.fsf@Lerche.Socrates> Message-ID: Michael Scholz wrote on 3/11/07 at 9:48 PM >> 1) I use Fink, and there are two place where ./configure says that >> "the preprocessor and compiler disagree about the validity of a >> header file." This whizzes by so quickly I don't have a clear memory >> of which files they are. I'll try to track this down for you and >> provide more info. > >I have two or three candidates in /usr/include and I ignore these >warnings. If you compile in an Emacs shell you can scroll to read the >messages. Hi Michael- I said I'd pass these along when I ran ./configure on OS X next: checking for float.h... yes checking libintl.h usability... yes checking libintl.h presence... no configure: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor! configure: WARNING: libintl.h: proceeding with the compiler's result checking for libintl.h... yes checking limits.h usability... yes checking limits.h presence... yes checking whether rl_attempted_completion_function is declared... yes checking gmp.h usability... yes checking gmp.h presence... no configure: WARNING: gmp.h: accepted by the compiler, rejected by the preprocessor! configure: WARNING: gmp.h: proceeding with the compiler's result checking for gmp.h... yes checking for __gmpz_init in -lgmp... yes checking for __gmp_randinit_set... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for inline... inline Best, Charles From vze26m98 at optonline.net Thu Mar 15 15:57:51 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Thu, 15 Mar 2007 18:57:51 -0400 Subject: [CM] Pointers into snd-help source? In-Reply-To: <861wjvi653.fsf@Lerche.Socrates> Message-ID: Michael Scholz wrote on 3/11/07 at 9:48 PM >> 2) The "make install" process quits because my computer doesn't like >> your "install info" command arguments. As a result, I think none of >> the .fs, .fr, etc files get installed, and I had to manually copy >> them to their directories. Also manually installed the FTH info >> pages. > >doc/Makefile uses `install-info --info-dir=dir --info-file=file' > >What option is wrong or what options knows your install-info? In the >meantime, remove the last line at target install in doc/Makefile or >better in doc/Makefile.in before ./configure or ./config.status. Hi Michael- Here's the output of my FTH "make install" where install-info quits and kills the rest of the make: makeinfo ${FTH_MAKEINFO_OPTIONS} fth.texi info_file=`basename ./fth.info`; \ if test ! -f ${info_file}; then info_file=./fth.info; fi; \ list=`echo ${info_file}*`; \ for f in ${list}; do \ ff=`basename ${f}`; \ /usr/bin/install -c -m 0644 ${f} /usr/local/share/info/${ff}; \ done ; \ install-info --info-dir=/usr/local/share/info --info-file=${info_file} Debian install-info 1.10.21. Copyright (C) 1994,1995 Ian Jackson. This is free software; see the GNU General Public Licence version 2 or later for copying conditions. There is NO warranty. usage: install-info [--version] [--help] [--debug] [--maxwidth=nnn] [--section regexp title] [--infodir=xxx] [--align=nnn] [--calign=nnn] [--quiet] [--menuentry=xxx] [--info-dir=xxx] [--keep-old] [--description=xxx] [--test] [--remove | --remove-exactly ] [--dir-file] [--] filename make[1]: *** [install] Error 1 make: *** [install] Error 2 Looks like the variable ${info_file} isn't being set to the correct value? Best, Charles From scholz-micha at gmx.de Thu Mar 15 17:19:57 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Fri, 16 Mar 2007 01:19:57 +0100 Subject: [CM] Pointers into snd-help source? In-Reply-To: (Charles Turner's message of "Thu\, 15 Mar 2007 18\:35\:52 -0400") References: Message-ID: <86ps7ajaz6.fsf@Lerche.Socrates> > I said I'd pass these along when I ran ./configure on OS X next: > > checking for float.h... yes > checking libintl.h usability... yes > checking libintl.h presence... no > configure: WARNING: libintl.h: accepted by the compiler, rejected by the > preprocessor! > configure: WARNING: libintl.h: proceeding with the compiler's result > checking for libintl.h... yes > checking limits.h usability... yes > checking limits.h presence... yes While I assume I have a solution for the case above---I set the test for locale.h before libintl.h---I can't find a dependency for gmp.h beside stddef.h but this is tested before. Please find the location in config.log for "checking gmp.h usability" or so and send the result. > > checking whether rl_attempted_completion_function is declared... yes > checking gmp.h usability... yes > checking gmp.h presence... no > configure: WARNING: gmp.h: accepted by the compiler, rejected by the > preprocessor! > configure: WARNING: gmp.h: proceeding with the compiler's result > checking for gmp.h... yes > checking for __gmpz_init in -lgmp... yes > checking for __gmp_randinit_set... yes > checking whether struct tm is in sys/time.h or time.h... time.h > checking for inline... inline Mike From scholz-micha at gmx.de Thu Mar 15 17:29:31 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Fri, 16 Mar 2007 01:29:31 +0100 Subject: [CM] Pointers into snd-help source? In-Reply-To: (Charles Turner's message of "Thu\, 15 Mar 2007 18\:57\:51 -0400") References: Message-ID: <86abyejaj8.fsf@Lerche.Socrates> > makeinfo ${FTH_MAKEINFO_OPTIONS} fth.texi > info_file=`basename ./fth.info`; \ > if test ! -f ${info_file}; then info_file=./fth.info; fi; \ > list=`echo ${info_file}*`; \ > for f in ${list}; do \ > ff=`basename ${f}`; \ > /usr/bin/install -c -m 0644 ${f} /usr/local/share/info/${ff}; \ > done ; \ > install-info --info-dir=/usr/local/share/info --info-file=${info_file} > Debian install-info 1.10.21. Copyright (C) 1994,1995 > Ian Jackson. This is free software; see the GNU General Public Licence > version 2 or later for copying conditions. There is NO warranty. > > usage: install-info [--version] [--help] [--debug] [--maxwidth=nnn] > [--section regexp title] [--infodir=xxx] [--align=nnn] > [--calign=nnn] [--quiet] [--menuentry=xxx] [--info-dir=xxx] > [--keep-old] [--description=xxx] [--test] > [--remove | --remove-exactly ] [--dir-file] > [--] > filename > make[1]: *** [install] Error 1 > make: *** [install] Error 2 Option --info-file is was not known at the time of your install-info. No problem, I remove this option. The changes are as usual in CVS now. Mike From vze26m98 at optonline.net Fri Mar 16 03:09:32 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 16 Mar 2007 06:09:32 -0400 Subject: [CM] Pointers into snd-help source? In-Reply-To: <86ps7ajaz6.fsf@Lerche.Socrates> Message-ID: H Mike- Here you go. both libintl.h and gmp.h are in my Fink /sw/include directory. Best, Charles Michael Scholz wrote on 3/15/07 at 8:19 PM >While I assume I have a solution for the case above---I set the test >for locale.h before libintl.h configure:4893: checking libintl.h usability configure:4910: gcc -c -g3 -O2 -I/sw/include -I/sw/include conftest.c >&5 configure:4916: $? = 0 configure:4930: result: yes configure:4934: checking libintl.h presence configure:4949: gcc -E conftest.c conftest.c:33:21: error: libintl.h: No such file or directory configure:4955: $? = 1 configure: failed program was: | /* confdefs.h. */ | #define PACKAGE_NAME "FTH" | #define PACKAGE_TARNAME "fth" | #define PACKAGE_VERSION "1.0.8" | #define PACKAGE_STRING "FTH 1.0.8" | #define PACKAGE_BUGREPORT "mi-scholz at users.sourceforge.net" | #define fth 1 | #define FTH_TARGET "powerpc-apple-darwin8.8.0" | #define FTH_TARGET_CPU "powerpc" | #define FTH_TARGET_VENDOR "apple" | #define FTH_TARGET_OS "darwin8.8.0" | #define FTH_CONFIGURE_ARGS " '--with-gmp-prefix=/sw' '--with-readline-prefix=/sw' '--disable-nls' 'CFLAGS=-g3 -O2'" | #define HAVE_DLFCN_H 1 | #define HAVE_ERRNO_H 1 | #define HAVE_FCNTL_H 1 | #define HAVE_FLOAT_H 1 | /* end confdefs.h. */ | #include configure:4969: result: no configure:4975: WARNING: libintl.h: accepted by the compiler, rejected by the preprocessor! configure:4977: WARNING: libintl.h: proceeding with the compiler's result configure:5002: checking for libintl.h configure:5010: result: yes configure:4893: checking limits.h usability configure:4910: gcc -c -g3 -O2 -I/sw/include -I/sw/include conftest.c >&5 configure:4916: $? = 0 >Please find the location in config.log for "checking gmp.h usability" >or so and send the result. configure:10687: checking gmp.h usability configure:10704: gcc -c -g3 -O2 -I/sw/include -I/sw/include conftest.c >&5 configure:10710: $? = 0 configure:10724: result: yes configure:10728: checking gmp.h presence configure:10743: gcc -E conftest.c conftest.c:79:17: error: gmp.h: No such file or directory configure:10749: $? = 1 configure: failed program was: | /* confdefs.h. */ | #define PACKAGE_NAME "FTH" | #define PACKAGE_TARNAME "fth" | #define PACKAGE_VERSION "1.0.8" | #define PACKAGE_STRING "FTH 1.0.8" | #define PACKAGE_BUGREPORT "mi-scholz at users.sourceforge.net" | #define fth 1 | #define HAVE_DECL_RL_BASIC_WORD_BREAK_CHARACTERS 1 | #define HAVE_DECL_RL_ERASE_EMPTY_LINE 1 | #define HAVE_DECL_RL_COMPLETER_WORD_BREAK_CHARACTERS 1 | #define HAVE_DECL_RL_ATTEMPTED_COMPLETION_FUNCTION 1 | /* end confdefs.h. */ | #include configure:10763: result: no configure:10769: WARNING: gmp.h: accepted by the compiler, rejected by the preprocessor! configure:10771: WARNING: gmp.h: proceeding with the compiler's result configure:10796: checking for gmp.h configure:10804: result: yes configure:10818: checking for __gmpz_init in -lgmp configure:10853: gcc -o conftest -g3 -O2 -I/sw/include -I/sw/include -L/sw/lib -L/sw/lib conftest.c -lgmp -lreadline configure:10859: $? = 0 configure:10877: result: yes configure:10892: checking for __gmp_randinit_set configure:10948: gcc -o conftest -g3 -O2 -I/sw/include -I/sw/include -L/sw/lib -L/sw/lib conftest.c -lgmp -lreadline configure:10954: $? = 0 configure:10972: result: yes configure:11204: checking whether struct tm is in sys/time.h or time.h configure:11234: gcc -c -g3 -O2 -I/sw/include -I/sw/include conftest.c >&5 From vze26m98 at optonline.net Fri Mar 16 06:01:52 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 16 Mar 2007 09:01:52 -0400 Subject: [CM] [Snd] Weird inf-snd-comint-line-end behavior... In-Reply-To: Message-ID: Charles Turner wrote on 3/13/07 at 12:48 PM >For Snd-FTH, I've updated the release version of Snd-8 with the CVS >files for xen.c and inf-snd.el. I modified the variable >inf-snd-comint-line-end to be 2 newlines: "\n\n" > >I get: > >>open-file-dialog >GtkWidget_ ># > <- Here I hit the "return" key again >nil ># > >I went back and restored inf-snd-comint-line-end to its 1 newline >default ("\n"), and everything works "as expected" (i.e. no prompt >unless I hit "return") and works the same as Debian Linux using the >default variable value found in inf-snd.el. Mike- Is this one for you? Trying to learn a bit about the elisp debugger and got this when I set debug-on-entry to inf-snd-comint-snd-send. The repl input was "7 1 +". Debugger entered--entering a function: * processp(#) * comint-send-string(# #("7 1 +\n\n" 0 5 (fontified t) 5 7 nil)) * inf-snd-comint-snd-send(# #("7 1 +" 0 5 (fontified t))) comint-send-input() call-interactively(comint-send-input) I don't know enough about any of this, but shouldn't comint-send-string have arguments like: # #("\n\n" 0 2 (fontified t)) I believe the result ("8") has already been printed to the emacs snd-forth buffer. Best and thanks! Charles From vze26m98 at optonline.net Fri Mar 16 07:59:14 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 16 Mar 2007 10:59:14 -0400 Subject: [CM] Re: [Snd] Trouble with JackOSX? In-Reply-To: Message-ID: Hi Kjetil- I've switched over to cvs-snd on my iBook G4. I had to make some additional changes to audio.c to get snd to build correctly with JackOSX. Also found a small typo in one of the #ifdefs ("JAVE_JACK"). I'll send the file along momentarily... Best, and thanks for the first fix! Charles From scholz-micha at gmx.de Fri Mar 16 09:08:36 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Fri, 16 Mar 2007 17:08:36 +0100 Subject: [CM] Pointers into snd-help source? In-Reply-To: (Charles Turner's message of "Fri\, 16 Mar 2007 06\:09\:32 -0400") References: Message-ID: <86ejnprx17.fsf@Lerche.Socrates> > configure:4893: checking libintl.h usability > configure:4910: gcc -c -g3 -O2 -I/sw/include -I/sw/include conftest.c >>&5 > configure:4916: $? = 0 > configure:4930: result: yes > configure:4934: checking libintl.h presence > configure:4949: gcc -E conftest.c Your preprocessor needs this hint too. Do something like ./configure ... CPPFLAGS=-I/sw/include Mike From scholz-micha at gmx.de Fri Mar 16 09:20:47 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Fri, 16 Mar 2007 17:20:47 +0100 Subject: [CM] [Snd] Weird inf-snd-comint-line-end behavior... In-Reply-To: (Charles Turner's message of "Fri\, 16 Mar 2007 09\:01\:52 -0400") References: Message-ID: <861wjprwgw.fsf@Lerche.Socrates> > Debugger entered--entering a function: > * processp(#) > * comint-send-string(# > #("7 1 +\n\n" 0 5 (fontified t) 5 7 nil)) > * inf-snd-comint-snd-send(# > #("7 1 +" 0 5 (fontified t))) > comint-send-input() > call-interactively(comint-send-input) > > I don't know enough about any of this, but shouldn't comint-send-string > have arguments like: > > # #("\n\n" 0 2 (fontified t)) No, the "\n\n" will be added to your input string "7 1 +" and that goes to comint-send-string. The double cr exist to force a prompt. If that doesn't work, use the normal single cr. If you found a solution for your installation to force a prompt, let me know! Mike From bil at ccrma.Stanford.EDU Fri Mar 16 11:58:10 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Fri, 16 Mar 2007 11:58:10 -0700 Subject: [CM] recorder changes? Message-ID: <20070316185213.M53528@ccrma.Stanford.EDU> I'd like to drastically reduce the recorder stuff in Snd to just a display of incoming signals, and an on/off button; the recorder would then simply write as a file whatever it receives from the audio hardware -- no volume controls, no data conversion, no channel swapping, etc. Users could then do whatever editing they wanted after grabbing the data. The current mixer controls would either be flushed or maybe moved to a separate dialog. Surely everyone will greet this with a happy dance? From b0ef at esben-stien.name Mon Mar 19 07:23:46 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 19 Mar 2007 15:23:46 +0100 Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: (Kjetil S. Matheussen's message of "Mon, 12 Mar 2007 14:25:44 +0100 (CET)") References: <87abyk8p65.fsf@esben-stien.name> <87veh72uw2.fsf@esben-stien.name> Message-ID: <87fy8171n1.fsf@esben-stien.name> "Kjetil S. Matheussen" writes: > look at the source for san-dysth Thank you. I'm trying to dig through;). It's a great synth, though;). > reset the positions of the envelopes: (mus-reset! > amplitude-envelope) (mus-reset! env-devf) Guess I need to evaluate something before this. I'm getting: rt-compiler.scm/rt-insert-types: Unknown function " mus-reset! ": (mus-reset! \amplitude_envelope__9) snd-error! -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From k.s.matheussen at notam02.no Mon Mar 19 06:18:23 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Mon, 19 Mar 2007 14:18:23 +0100 (CET) Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: <87fy8171n1.fsf@esben-stien.name> References: <87abyk8p65.fsf@esben-stien.name> <87veh72uw2.fsf@esben-stien.name> <87fy8171n1.fsf@esben-stien.name> Message-ID: On Mon, 19 Mar 2007, Esben Stien wrote: > "Kjetil S. Matheussen" writes: > >> look at the source for san-dysth > > Thank you. I'm trying to dig through;). It's a great synth, though;). > By the way. A very quick way to get a soft synth up and running is to use the source for san-dysth, and replace the "synthesize" function with your own sound generator. For example, change "synthesize" into: (define (synthesize) (* (read-glide-var volume) (oscil osc (hz->radians freq)))) Plus add some code to set the "freq" variable and reset the phase of "osc" in the "not-playing-func" function, and it will work, including attack, decay, reverb, autopanning, etc. From andersvi at extern.uio.no Mon Mar 19 12:25:29 2007 From: andersvi at extern.uio.no (andersvi at extern.uio.no) Date: Mon, 19 Mar 2007 20:25:29 +0100 Subject: [CM] markov-analyze allowing :period keyword Message-ID: Heres a diff allowing 'markov-analyze to accept a :period keyword to let resulting pattern-object have arbitrary period-length. (Its useful in some cases of 'markov-analyze where the output is included in various 'join, 'copier or similar) -anders Index: src/data.scm =================================================================== RCS file: /cvsroot/commonmusic/cm/src/data.scm,v retrieving revision 1.15 diff -u -r1.15 data.scm --- src/data.scm 4 Sep 2006 00:55:59 -0000 1.15 +++ src/data.scm 19 Mar 2007 19:21:25 -0000 @@ -1056,6 +1056,7 @@ (pattern? #t) ; #f or pattern sort? (print-decimals 3) + (period nil) key) (let ((len (length seq)) (labels '()) ; the set of all outcomes @@ -1194,7 +1195,7 @@ (pprint `(new markov of ', pat))) (if pattern? ;; patterns not defined yet, cant use new or - (make (find-class* 'markov) :of pat) + (make (find-class* 'markov) :of pat :for period) (values)))))) (define (histogram numbers lo hi slots) From bsack23 at gmail.com Tue Mar 20 14:58:42 2007 From: bsack23 at gmail.com (Bill Sack) Date: Tue, 20 Mar 2007 17:58:42 -0400 Subject: [CM] CMN - straight flag problem in sbcl? Message-ID: <2eb2318a0703201458q4f4f9903w673bd75698de00d9@mail.gmail.com> hello cm people, i'm a long-time cmn user and just started using it with sbcl 1.0.1 - is it possible that the patch Anders suggested back in 2002 for displaying slanted, straight flags doesn't work with sbcl? i ask because i looked at the code in cmn2.lisp: ;; this version from AV 7-Oct-02 (rlineto score *straight-flag-dx* (if up-stem (- *straight-flag-dy*) *straight-flag-dy*)) (rlineto score 0.0 *beam-width*) (lineto score bx0 (+ y *beam-width*)) ; (lineto score (+ bx0 .3) y) ; (lineto score (+ bx0 .3) (+ y .1)) ; (lineto score bx0 (+ y .1)) (lineto score bx0 y) (fill-in score)) #+(or gcl sbcl) (do ((i 0 (1+ i)) (y by0 (+ y incr))) ((>= i nflags)) etc. ... contains that conditional stuff about gcl and sbcl anyway, this little example: (in-package :cmn) (setf *straight-flag-dy* .2) (cmn (curvy-flags nil)(output-file "flag-test.eps") (c5 e) (rest e) (c4 e) (rest e)) shows flags that do not slant, but rather are displaced on the stem by a small amount. i'll comment out the sbcl stuff on my local copy and recompile just to see what happens. all best, bill sack -------------- next part -------------- An HTML attachment was scrubbed... URL: From andersvi at extern.uio.no Wed Mar 21 02:30:25 2007 From: andersvi at extern.uio.no (andersvi at extern.uio.no) Date: Wed, 21 Mar 2007 10:30:25 +0100 Subject: [CM] CMN - straight flag problem in sbcl? In-Reply-To: <2eb2318a0703201458q4f4f9903w673bd75698de00d9@mail.gmail.com> (Bill Sack's message of "Tue\, 20 Mar 2007 17\:58\:42 -0400") References: <2eb2318a0703201458q4f4f9903w673bd75698de00d9@mail.gmail.com> Message-ID: >>>>> "BS" == Bill Sack writes: BS> hello cm people, i'm a long-time cmn user and just started BS> using it with sbcl 1.0.1 - is it possible that the patch BS> Anders suggested back in 2002 for displaying slanted, straight BS> flags doesn't work with sbcl? i ask because i looked at the BS> code in cmn2.lisp: The problem is sbcl's loop which, possibly following the standards?, doesnt accept a negative step-value. (loop for a from 1 to 0 by -0.1 collect a) => throws an error, whereas (loop for a downfrom 1 to 0 by 0.1 collect a) => (1 0.9 0.79999995 0.6999999 ...) heres a version which uses #'do instead: -------------- next part -------------- A non-text attachment was scrubbed... Name: draw-flags.cl Type: application/octet-stream Size: 2596 bytes Desc: not available URL: -------------- next part -------------- btw, what does the loop- standard say about this? From csr21 at cantab.net Wed Mar 21 02:43:40 2007 From: csr21 at cantab.net (Christophe Rhodes) Date: Wed, 21 Mar 2007 09:43:40 +0000 Subject: [CM] CMN - straight flag problem in sbcl? In-Reply-To: (andersvi@extern.uio.no's message of "Wed, 21 Mar 2007 10:30:25 +0100") References: <2eb2318a0703201458q4f4f9903w673bd75698de00d9@mail.gmail.com> Message-ID: <87lkhrszhv.fsf@cantab.net> andersvi at extern.uio.no writes: > btw, what does the loop- standard say about this? In the relevant section of the HyperSpec, 6.1.2.1.1, it says: | by | The loop keyword by marks the increment or decrement supplied by | form3. The value of form3 can be any positive number. The | default value is 1. (There's other stuff on that same page about what to do if you want decremental stepping.) Cheers, Christophe From bil at ccrma.Stanford.EDU Wed Mar 21 08:22:38 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Wed, 21 Mar 2007 08:22:38 -0700 Subject: [CM] CMN - straight flag problem in sbcl? In-Reply-To: References: <2eb2318a0703201458q4f4f9903w673bd75698de00d9@mail.gmail.com> Message-ID: <46014DBE.4060305@ccrma> Thanks very much for the bug report and bugfix! I'll merge those changes into my versions later today. From andersvi at extern.uio.no Wed Mar 21 10:57:58 2007 From: andersvi at extern.uio.no (andersvi at extern.uio.no) Date: Wed, 21 Mar 2007 18:57:58 +0100 Subject: [CM] CMN - straight flag problem in sbcl? In-Reply-To: <46014DBE.4060305@ccrma> (Bill Schottstaedt's message of "Wed\, 21 Mar 2007 08\:22\:38 -0700") References: <2eb2318a0703201458q4f4f9903w673bd75698de00d9@mail.gmail.com> <46014DBE.4060305@ccrma> Message-ID: >>>>> "B" == Bill Schottstaedt writes: B> Thanks very much for the bug report and bugfix! I'll merge B> those changes into my versions later today. It seems that sbcl's loop actually follows the specs (possibly for optimization reasons?), requiring a positive value for the 'by loop-keyword, necessitating choice of syntax dependent on direction of stepping. Cant remember what gcl complained about, but now that the 'do-version of the code in #'draw-flags function does exactly the same as the 'loop-version there shouldnt be a need to dispatch on implementations anymore. From landspeedrecord at gmail.com Wed Mar 21 14:34:47 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Wed, 21 Mar 2007 17:34:47 -0400 Subject: [CM] Playing MIDI files in CYGWIN/XP Message-ID: Hi, I am running Common Music from inside of CLISP which is running in CYGWIN which is running on XP. (Anyone with a simpler way to run it in XP???) My problem is that the MIDI play functions don't work. OSS-PLAY-MIDI-FILE doesn't work because "playmidi" doesn't exist. (I don't know why) WIN-PLAY-MIDI-FILE just comes back as an undefined function. Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From bsack23 at gmail.com Wed Mar 21 19:36:24 2007 From: bsack23 at gmail.com (Bill Sack) Date: Wed, 21 Mar 2007 22:36:24 -0400 Subject: [CM] CMN - certain tuplets not displaying correctly w. (rq x/x) Message-ID: <2eb2318a0703211936p20960bebid7303e574467374d@mail.gmail.com> hi again, i discovered another cmn problem tonight - in this form of rq : (cmn (output-file "/tmp/test.eps") (staff treble (c5 (rq 1/6)) (c5 (rq 5/6)) (a4 (rq 2/7)) (a4 (rq 5/7)) ) ... the second, longer note of the tuplet is displayed as a quarternote in both cases instead of a sixteenth tied to a quarter. when the longer value is first, i.e. (rq 5/7) (rq 2/7) ... the correct values are displayed. bill sack -------------- next part -------------- An HTML attachment was scrubbed... URL: From bil at ccrma.Stanford.EDU Thu Mar 22 03:59:05 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Thu, 22 Mar 2007 03:59:05 -0700 Subject: [CM] Snd 8.9 Message-ID: <20070322105804.M80911@ccrma.Stanford.EDU> Snd 8.9 many more Forth and Ruby improvements from Mike. three more fft windows: bohman-window, bartlett-hann-window, flat-top-window kalman-filter-channel (dsp.scm) -- noise-reduction experiment clean.scm -- more noise reduction (clean-channel|sound) File:Close all menu if more than one sound open open-file-dialog-directory to set the initial Open File dialog directory changed default html reader from mozilla to firefox added bindings to xg.c for cairo and gtk print added a cairo graphics backend (on the --with-cairo configure switch) no "eye candy" yet, but everything works, I hope. checked: Gauche 0.8.9, pango 1.15.6, 1.16.0|1, gsl 1.9, fth 1.0.8, sbcl 1.0.3, glib 2.12.10|11 2.13.0, cairo 1.4.0, gtk+-2.10.10 Thanks!: Michael Edwards, Peter Anderson, Immanuel Litzroth, Mike Scholz, Jay LaBoeuf, Max Mathews, Luke Dahl, Joanne Carey, Charles Turner, Kjetil Matheussen, Anders Vinjar From bil at ccrma.Stanford.EDU Thu Mar 22 04:57:24 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Thu, 22 Mar 2007 04:57:24 -0700 Subject: [CM] CMN - certain tuplets not displaying correctly w. (rq x/x) In-Reply-To: <2eb2318a0703211936p20960bebid7303e574467374d@mail.gmail.com> References: <2eb2318a0703211936p20960bebid7303e574467374d@mail.gmail.com> Message-ID: <20070322115629.M49156@ccrma.Stanford.EDU> Thanks for the bug report -- I think this change in cmn4.lisp fixes that particular case: *** cmn4.lisp 2007-03-22 05:00:52.000000000 -0700 --- /home/bil/dist/cmn/cmn4.lisp 2007-01-21 04:20:45.000000000 -0800 *************** *** 451,469 **** (and (integerp dur) (< dur 5)) (and (= dur beat-dur-left) (< dur beat-length) (< (abs (- dur beat-dur-left)) .001)) ; added 12-Feb-02 for 2/5 beat filling (and (ratiop ur-dur) (not (member (numerator ur-dur) (list 5 9))))) ! ! (progn ; 23-Mar-07 Bill ! (if (ratiop ur-dur) ! (if (= ur-dur 5/6) ! (list 1/6 2/3) ! (if (= ur-dur 5/7) ! (list 1/7 4/7) ! (if (= ur-dur 6/7) ! (list 2/7 4/7) ! (list dur)))) ! (list dur)) ! ) this way madness lies... From taube at uiuc.edu Thu Mar 22 11:22:31 2007 From: taube at uiuc.edu (Rick Taube) Date: Thu, 22 Mar 2007 13:22:31 -0500 Subject: [CM] Playing MIDI files in CYGWIN/XP In-Reply-To: References: Message-ID: <1DC037FF-36C8-4E1D-8742-8793C0353E85@uiuc.edu> first, why not just download a clisp win32 binary? you can use it with XEmacs. i think this is one: http://downloads.sourceforge.net/clisp/clisp-2.41-win32-with-readline- and-gettext.zip?modtime=1161007384&big_mirror=1 > My problem is that the MIDI play functions don't work. OSS-PLAY- > MIDI-FILE doesn't work because "playmidi" doesn't exist. figure out what the pathname is to the windows "media player" exe is and set cm's *midi-player* variable to that. i think you can use unix / for the directory character in clisp. (defparameter *midi-player* "c:/program files/whatever.exe") this used to work without problem (i dont have a windows machine to test for you, sorry) you can put this *midi-player* definition in a ".cminit.lisp" file in your home directory (whatever windows thinks that is!) or change it in the system source file cm/src/midi2.scm. the next time you start cm it will regenerate the .lisp source from .scm, compile and load the file and your changes will be there. --rick From vze26m98 at optonline.net Fri Mar 23 09:28:20 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Fri, 23 Mar 2007 12:28:20 -0400 Subject: [CM] [Snd] Drawing waveforms? Message-ID: HI all- A bit of a loosey-goosey question, with perhaps some RTFM thrown in: How would any of you approach drawing waveforms with a mouse in Snd? I know that a few DAW$ offer such a thing, but their idea is "fixing glitches" rather than "freehand drawing" of small audio files. I've done some work with the evelope editor to produce some. I'm sure that if I was to dig into the GTK or Motif bindings I could create whatever I'd like. But I'm curious what comes to mind as pre-existing "building blocks" in Snd, if they exist. Many thanks! Charles From joshp at u.washington.edu Fri Mar 23 15:29:25 2007 From: joshp at u.washington.edu (Joshua Parmenter) Date: Fri, 23 Mar 2007 15:29:25 -0700 Subject: [CM] (keynum :through) and (note :through) bug? Message-ID: Hi all... This doesn't seem like the expected behavior. Is this right? And if it is, does anyone know a way to get the values I'm expecting? (defvar mymode) (setq mymode (new mode :degrees '(c df ef f gs a b c))) (note 67 :through mymode); => F ??? shouldn't it be GS? (note 67.5 :through mymode) ;=> AF ??? (keynum 67 :through mymode); => 65 ??? shouldn't it be 68? (keynum 67.4 :through mymode) ;=> 65 !!! (keynum 67.5 :through mymode) ;=> 68 !!! Thanks for any help. Josh ****************************************** Joshua Parmenter University of Washington Center for Digital Arts and Experimental Media School of Music Seattle, Washington 98195 http://www.realizedsound.net/josh/ http://www.dxarts.washington.edu -------------- next part -------------- An HTML attachment was scrubbed... URL: From b0ef at esben-stien.name Sun Mar 25 14:55:48 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Sun, 25 Mar 2007 23:55:48 +0200 Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: (Kjetil S. Matheussen's message of "Mon, 19 Mar 2007 14:18:23 +0100 (CET)") References: <87abyk8p65.fsf@esben-stien.name> <87veh72uw2.fsf@esben-stien.name> <87fy8171n1.fsf@esben-stien.name> Message-ID: <878xdloumz.fsf@esben-stien.name> "Kjetil S. Matheussen" writes: > replace the "synthesize" function with your own sound generator [..] > plus add some code to set the "freq" variable and reset the phase of > "osc" in the "not-playing-func" function I'm on thin ice here;), but after initially changing the synthesize function and creating the freq and oscil, I'm getting the following after I compiled the code and tried to evaluate (san-dysth). The error message abut too many arguments seems trivial to fix, but I can't figure out where this is happening, sorry;). The modified code is below. Error. What the? c-nevercalled-true? is never supposed to be called. Arguments: (#) rt-compiler/. Wrong type. " sr " with value " # " is not a . snd-error! wrong-type: () In current input: 2: 0* [san-dysth] ?: 1 (let-optional* lambda*:G538 () ...) ?: 2 (let* () (let* (# #) (let* # #))) ?: 3 (let-keywords* lambda*:G538 #f ...) ?: 4 (let* (# #) (let* # #)) ?: 5 (let* (# # # # ...) (let* () #)) ?: 6 (let* () (letrec (# # # #) (system #) (system #) ...)) ... ?: 7 (let* (# # # # ...) (set! filename #) (set! num-synths polyphony) ...) ?: 8* (set! synths (make-synths)) ?: 9 (set! synths (make-synths)) ?: 10* [make-synths] ?: 11 (let* ((ins #)) (for-each (lambda # #) (c-butlast ins)) ins) ?: 12* [map # (0 1 2 ...)] ?: 13* [# 0] ?: 14* (let* ((note-vol 0) (note 0) (pan_left 1) ...) instrument) ?: 15* ((caddr rt_genb50)) ?: 16 (let* () (let* (# # # #) (if #t #) (if #t #) ...)) ?: 17 (let* (# # # #) (if #t #) (if #t #) ...) ?: 18* (begin (rt_genb146 procarg (# (quote transform) sr ...))) ?: 19 [rt_genb146 ("A_POINTER" 151409144) ... ?: 20* (->2 # transform ...) ?: 21 [this transform # sr ...] ?: 22 [apply #transform #> (# sr #transform # sr # wrong-type] ; (san-dysth) wrong-type: () In current input: 2: 0* [san-dysth] ?: 1 (let-optional* lambda*:G538 () ...) ?: 2 (let* () (let* (# #) (let* # #))) ?: 3 (let-keywords* lambda*:G538 #f ...) ?: 4 (let* (# #) (let* # #)) ?: 5 (let* (# # # # ...) (let* () #)) ?: 6 (let* () (letrec (# # # #) (system #) (system #) ...)) ... ?: 7 (let* (# # # # ...) (set! filename #) (set! num-synths polyphony) ...) ?: 8* (set! synths (make-synths)) ?: 9 (set! synths (make-synths)) ?: 10* [make-synths] ?: 11 (let* ((ins #)) (for-each (lambda # #) (c-butlast ins)) ins) ?: 12* [map # (0 1 2 ...)] ?: 13* [# 0] ?: 14* (let* ((note-vol 0) (note 0) (pan_left 1) ...) instrument) ?: 15* ((caddr rt_genb50)) ?: 16 (let* () (let* (# # # #) (if #t #) (if #t #) ...)) ?: 17 (let* (# # # #) (if #t #) (if #t #) ...) ?: 18* (begin (rt_genb146 procarg (# (quote transform) sr ...))) ?: 19 [rt_genb146 ("A_POINTER" 151409144) ... ?: 20* (->2 # transform ...) ?: 21 [this transform # sr ...] ?: 22 [apply #transform #> (# sr #transform # sr # wrong-type] ; (san-dysth) wrong-type Below is the modified code. I've not done much, except changing the synthesize function and adding an oscil and the freq. (definstrument (san-dysth :key (middlenote 60) (polyphony 32) (check-overruns #t) (das-vol 0.344) (pitch 0.794) (octave 6) (period 920) (maximum-drunk-change (/ 8.226 10000)) (unrandom 0.0) (maximum-add-val (/ 1.545 100)) (a1 0.698) (a2 0) (a3 0) (b1 0.474) (b2 0.723) (b3 0.426) (attack 0.093) (attack-peak 3.699) (sustain 0.05) (release 0.05) (src-width 20) (regular #f) (reverb-val 0.922)) (define* (make-reverb-old) (let ((l (make-ladspa "cmt" "freeverb3"))) (let ((plugin l)) (ladspa-set! plugin 0 0.0 ) (ladspa-set! plugin 1 0.814999997615814 ) (ladspa-set! plugin 2 0.617999970912933 ) (ladspa-set! plugin 3 1.0 ) (ladspa-set! plugin 4 0.0 ) (ladspa-set! plugin 5 0.7 ) ) l)) (define* (make-reverb) (let ((l (make-ladspa "g2reverb.so" "G2reverb"))) (let ((plugin l)) (ladspa-set! plugin 0 52.4360008239746 ) (ladspa-set! plugin 1 2.45300006866455 ) (ladspa-set! plugin 2 0.225999996066093 ) (ladspa-set! plugin 3 0.566999971866608 ) (ladspa-set! plugin 4 -80.0 ) (ladspa-set! plugin 5 -33.5200004577637 ) (ladspa-set! plugin 6 -43.8779983520508 ) ) l)) (define (filename-without-path path) (let ((chars (reverse! (string->list path))) (result '())) (while (and (not (null? chars)) (not (char=? (car chars) #\/))) (set! result (cons (car chars) result)) (set! chars (cdr chars))) (list->string result))) (define presetpath (string-append (getenv "HOME") "/.san_dysth/presets/")) (system (string-append "mkdir -p " presetpath " >/dev/null 2>/dev/null")) (system (string-append "mkdir -p " presetpath "/backup >/dev/null 2>/dev/null")) (system (string-append "mkdir -p " presetpath "/tmp >/dev/null 2>/dev/null")) (system (string-append "mkdir -p " presetpath "/examples >/dev/null 2>/dev/null")) (if (defined? '*san-dysth-example-presets*) (system (string-append "cp -u " *san-dysth-example-presets* "/* " presetpath "/examples/ >/dev/null 2>/dev/null"))) (primitive-eval '(define synth-load-save-parameters '(polyphony attack attack-peak sustain release das-vol pitch octave period maximum-drunk-change unrandom maximum-add-val a1 a2 a3 b1 b2 b3 src-width reverb-val min-release))) (letrec* ( (filename (<-> presetpath "tmp/preset.scm")) (num-synths polyphony) (num-playing 0) (all-isplaying (make-vct 16)) (reverb-bus (make-bus 2)) (reverb (make-reverb)) (min-release 0.000001) (reverb-glide-vol (make-glide-var 1.0 0.001)) (autopan (make-var 1)) (notes (make-vct (1+ num-synths))) (volumes (make-vct (1+ num-synths))) (a4 (make-oscil :frequency 440)) (get-attack-inc (lambda (attack-peak attack) (/ (* attack-peak 256) (* (mus-srate) attack)))) (get-sustain-dec (lambda (attack-peak sustain) (/ (- attack-peak 1) (* (mus-srate) sustain)))) (get-release-mul (lambda (release) (expt min-release (/ 1 (* (mus-srate) release))))) (make-synths (lambda () (let ((ins (map (lambda (synth-num) (let* ( (note-vol 0) (note 0) (pan_left 1) (pan_right 1) (freq 200) (osc (make-oscil :frequency 200)) (sr (make-src :srate 0 :width src-width)) ;;(attack (make-env `(0 0 0.7 1.9 1.0 1.0) #:duration attack)) (attack-val 0) (attack-inc (get-attack-inc attack-peak attack)) (sustain-val attack-peak) (sustain-dec (get-sustain-dec attack-peak sustain)) (release-val 1.0) (release-mul (get-release-mul release)) ;;(release-dec (/ 256 (* (mus-srate) release))) (is-playing #f) (src-val 0) (is-attacking #t) (is-sustaining #f) (is-releasing #f) (val 0) (addval 0) (period period) (periodcounter period) (inc-addval #f) (maximum-add-val maximum-add-val) (maximum-drunk-change maximum-drunk-change) (last-time 0) (regular-periods regular) (volume (make-glide-var das-vol 0.01)) (rate (* 0.1 (expt 2 (+ octave pitch)))) (das-filter (make-filter 4 (vct 1 b1 b2 b3) (vct 1 (- a1) (- a2) (- a3)))) (das-delay (make-delay 500)) ;; (das-osc (make-oscil)) (instrument ( (lambda () (declare ( release-val release-mul) ( last-time synth-num note is-playing is-releasing is-attacking)) (define (scale x x1 x2 y1 y2) (+ y1 (/ (* (- x x1) (- y2 y1)) (- x2 x1)))) (define (get-pan-vals pan) (let ((scale ,(- 2 (* 2 (sqrt 2)))) (x (scale pan -1 1 0 1))) (vct (* (- 1 x) (+ (* scale (- 1 x)) (- 1 scale))) (* x (+ (* scale x) (- 1 scale)))))) (define (synthesize) (* (read-glide-var volume) (oscil osc (hz->radians freq)))) (if (not is-playing) (if (not (= (rt-get-time) last-time)) (let ((notes-note (the (vct-ref notes synth-num)))) (set! last-time (rt-get-time)) (if (> notes-note 0) (begin (set! is-playing #t) (set! note (vct-ref notes synth-num)) (let* ((mi 20) (ma 107) (val (max mi (min ma note))) (vals (get-pan-vals (scale val mi ma -1 1)))) (set! pan_left (* ,(sqrt 2) (vct-ref vals 0))) (set! pan_right (* ,(sqrt 2) (vct-ref vals 1)))) (set! is-attacking #t) (set! is-releasing #f) (set! is-sustaining #f) (mus-reset das-delay) ;;(mus-reset attack) ;;(mus-reset release) (set! attack-val 0.0) (set! sustain-val attack-peak) (set! release-val 1.0) (mus-reset sr) (set! src-val (let ((middlenote (midi-to-freq middlenote)) (srcval (midi-to-freq note))) (set! srcval (- srcval middlenote)) (set! srcval (/ srcval middlenote)) (1+ srcval))) (set! note-vol (vct-ref volumes synth-num)) (set! num-playing (1+ num-playing)) ;;(printf "aiai %x %x %x %f %f\\n" control data1 data2 src-val vol) ) (if (< notes-note 0) ;; Did not get time to play. (vct-set! notes synth-num 0))))) (begin (if (not is-releasing) (if (not (= (rt-get-time) last-time)) (begin (set! last-time (rt-get-time)) (if (< (vct-ref notes synth-num) 1) (begin ;;(printf "Starting to release %d/%d\\n" synth-num note) (set! is-releasing #t)))))) (let ((outval (* 0.2 note-vol (synthesize))) (my-out (lambda (a b) (declare ( a b)) (if (> (read-var autopan) 0) (begin (set! a (* a pan_left)) (set! b (* b pan_right)))) (out (vct a b))))) (declare ( outval)) (cond (is-attacking (set! outval (* outval (/ attack-val 256))) (my-out outval (delay das-delay outval)) (set! attack-val (+ attack-val attack-inc)) (if (>= attack-val (* attack-peak 256)) (begin (set! is-attacking #f) (set! is-sustaining #t)))) (is-sustaining (set! outval (* outval sustain-val)) (my-out outval (delay das-delay outval)) (set! sustain-val (- sustain-val sustain-dec)) (if (<= sustain-val 1.0) (set! is-sustaining #f))) (is-releasing (my-out (* release-val outval) (* release-val (delay das-delay outval))) (set! release-val (* release-val release-mul)) ;;(set! release-val (- release-val release-dec)) (if (<= release-val min-release) ;; check for (min-relase * reverb-val) as well? (begin (set! is-playing #f) (vct-set! notes synth-num 0) (set! num-playing (1- num-playing))))) (else (my-out outval (delay das-delay outval))))))))))) instrument)) (iota (1+ num-synths))))) (for-each (lambda (instr) (-> instr play #:position 'last)) (c-butlast ins)) ins))) (make-midi-input (lambda () ( #:position 'first (lambda () (receive-midi (lambda (control data1 data2) (set! control (logand #xf0 control)) (if (and (< num-playing num-synths) (= control #x90) (> data2 0)) (let loop ((synth-num 0)) (declare ( synth-num)) (if (= (vct-ref notes synth-num) 0) (begin ;;(printf "synth-num %d %d %f\\n" synth-num data1 (vct-ref notes synth-num)) (vct-set! volumes synth-num (/ data2 128.0)) (vct-set! notes synth-num data1)) (if (< synth-num (1- num-synths)) (loop (1+ synth-num))))) (if (or (= control #x80) (and (= control #x90) (= data2 0))) (let loop ((synth-num 0)) (if (= (vct-ref notes synth-num) data1) (vct-set! notes synth-num (- data1)) (if (< synth-num (1- num-synths)) (loop (1+ synth-num))))))))))))) (make-reverb-instrument (lambda () (set! reverb (make-reverb)) ( #:position 'last (lambda () (out (vct-scale! (ladspa-run reverb (read-bus *out-bus*)) (* reverb-val 40 (read-glide-var reverb-glide-vol)))))))) (synths (make-synths)) (midi-input (make-midi-input)) (reverb-instrument (make-reverb-instrument)) (440-instrument ( (lambda () (out (* 0.1 (oscil a4)))))) (440-playing #f) (a4-playing #f) (a4-stop (lambda () (if a4-playing (begin (-> (last synths) stop) (vct-set! notes num-synths -57) (set! a4-playing #f))))) (a4-start (lambda () (if (not a4-playing) (begin (-> (last synths) play #:position 'last) (vct-set! volumes num-synths 0.9) (vct-set! notes num-synths 57) (set! a4-playing #t))))) (440-stop (lambda () (if 440-playing (begin (-> 440-instrument stop) (set! 440-playing #f))))) (440-start (lambda () (if (not 440-playing) (begin (-> 440-instrument play) (set! 440-playing #t))))) (stop-all (lambda (restfunc) (for-each (lambda (instrument) (write-glide-var (-> instrument volume) 0.0)) (c-butlast synths)) (write-glide-var reverb-glide-vol 0.0) (in 10 (lambda () (for-each (lambda (instrument) (-> instrument stop)) (c-butlast synths)) (440-stop) (a4-stop) (set! notes (make-vct (1+ num-synths))) (-> reverb-instrument stop) (-> midi-input stop) (if restfunc (restfunc)))))) (start-all (lambda (stop?) (let ((doit (lambda () (set! synths (make-synths)) (write-glide-var reverb-glide-vol 1.0) (set! midi-input (make-midi-input)) (set! reverb-instrument (make-reverb-instrument))))) (if stop? (stop-all doit) (doit))))) (get-filename (lambda (func) (let ((dialog (GTK_FILE_SELECTION (gtk_file_selection_new "aiai")))) (gtk_file_selection_set_filename dialog presetpath) (c-g_signal_connect (.ok_button dialog) "clicked" (lambda (w d) (func (gtk_file_selection_get_filename dialog)) (gtk_widget_hide (GTK_WIDGET dialog)))) (c-g_signal_connect (.cancel_button dialog) "clicked" (lambda (w d) (gtk_widget_hide (GTK_WIDGET dialog)))) (gtk_widget_show (GTK_WIDGET dialog))))) (save-preset (begin (primitive-eval '(define-macro (make-varlist-macro) `(list ,@(map (lambda (var) `(list ',var ,var)) synth-load-save-parameters)))) (lambda (preset-filename) (let ((fd (open-file preset-filename "w"))) (pretty-print `(define synth-preset-temp ',(make-varlist-macro)) fd) (close fd))))) (load-preset (begin (primitive-eval '(define-macro (read-varlist-macro) `(begin ,@(map (lambda (var) `(let ((a (assoc ',var synth-preset-temp))) (if a (set! ,var (cadr a))))) synth-load-save-parameters)))) (lambda (preset-filename) (stop-all (lambda () (gtk_window_set_title (GTK_WINDOW (-> d dialog)) preset-filename) (for-each (lambda (slider) (-> slider delete!)) sliders) (load preset-filename) (set! a2 0)(set! a3 0) (read-varlist-macro) (set! sliders (make-sliders)) (start-all #f)))))) (save-backup (lambda (backup-filename) (system (<-> "cp -f \"" backup-filename "\" \"" presetpath "/backup/" (filename-without-path backup-filename) "-"(string-append (string #\`)) "date -Iseconds" (string-append (string #\`)) "\"" " >/dev/null 2>/dev/null")))) (preset-A (<-> presetpath "tmp/synth-preset-A")) (preset-B (<-> presetpath "tmp/synth-preset-B")) (load-here (lambda () (get-filename (lambda (preset-filename) (save-backup filename) (load-preset preset-filename) (save-preset preset-A) (save-preset preset-B) (gtk_window_set_title (GTK_WINDOW (-> d dialog)) preset-filename) (set! filename preset-filename))))) (save (lambda () (save-backup filename) (save-preset filename))) (save-as (lambda () (get-filename (lambda (preset-filename) (save-backup preset-filename) (save-preset preset-filename) (gtk_window_set_title (GTK_WINDOW (-> d dialog)) preset-filename) (set! filename preset-filename))))) (exit-synth (lambda () (stop-all #f) (-> d hide) (set! check-overruns #f) (exit) )) (d ( "SAN DYSTH" exit-synth "A" (lambda () (save-preset preset-B) (load-preset preset-A)) "B" (lambda () (save-preset preset-A) (load-preset preset-B)) "-->A/B" (lambda () (save-preset preset-A) (save-preset preset-B)) "Save As" save-as "Save" save "Load" load-here "Reverb GUI" (lambda () (make-ladspa-gui reverb)) "Close" exit-synth)) (for-all-instruments (lambda (func) (lambda (val) (for-each (lambda (instrument) (func instrument val)) synths)))) ( (lambda args (let ((ret (apply args))) (-> ret add-method 'delete! (<- ret remove)) ret))) (make-sliders (lambda () ; (map (lambda (args) ; (apply (lambda (name minval var maxval resolution func) ; ( d name 0 var 2.0 (for-all-instruments func) resolution)) ; `(("Amplitude" 0 ,das-vol 2.0 1000 ,(lambda (instrument val) ; (write-glide-var (-> instrument volume) (* (if (> unrandom 0) 0.01 1) das-vol)))) ; ("Pitch" ...))) (list ( d "Amplitude" 0 das-vol 2.0 (for-all-instruments (lambda (instrument val) (set! das-vol val) (write-glide-var (-> instrument volume) (* (if (> unrandom 0) 0.01 1) das-vol)))) 1000) ( d "Pitch" 0 pitch 1 (for-all-instruments (lambda (instrument val) (set! pitch val) (set! (-> instrument rate) (* 0.1 (expt 2 (+ octave pitch)))))) 1000) ( d "Octave" 0 octave 8 (for-all-instruments (lambda (instrument val) (set! octave val) (set! (-> instrument rate) (* 0.1 (expt 2 (+ octave pitch)))))) 1) ( d "src-width" 2 src-width 40 (lambda (val) (set! src-width val) (start-all #t)) 1) ( d "Period" 2 period 2000 (for-all-instruments (lambda (instrument val) (set! period val) (set! (-> instrument period) val))) 1) ( d "Max change" 0.1 (* 10000 maximum-drunk-change) 40 (for-all-instruments (lambda (instrument val) (set! maximum-drunk-change (/ val 10000)) (set! (-> instrument maximum-drunk-change) (sin (/ val 10000))))) 1000) ;; Unrandom can be very cool, but also very dangerous for ears and loudspeakers to play with. ;; ( d "Unrandom" 0.0 0 2.0 (for-all-instruments (lambda (instrument val) ;; (if (or (and (> val 0) ;; (= 0 (-> instrument unrandom))) ;; (and (= val 0) ;; (> (-> instrument unrandom) 0))) ;; (begin ;; (write-glide-var (-> instrument volume) (* (if (> val 0) 0.01 1) das-vol)) ;; (set! (-> instrument rate) (* (if (> val 990) 0.001 0.1) (expt 2 (+ octave pitch)))))) ;; (set! unrandom val) ;; (set! (-> instrument unrandom) val))) ;; 1000) ( d "Max add" 0.1 (* 100 maximum-add-val) 10 (for-all-instruments (lambda (instrument val) (set! maximum-add-val (/ val 100)) (set! (-> instrument maximum-add-val) (/ val 100)))) 1000) ( d "-a1" -1 a1 1.0 (lambda (val) (if (> (+ val a2 a3) 1) (begin (set! val (- 1 a2 a3)) (-> (list-ref sliders 7) set! val))) (set! a1 val) ;;(c-display (+ (abs a1) (abs a2) (abs a3))) (for-each (lambda (instrument) (vct-set! (mus-ycoeffs (-> instrument das-filter)) 1 (- val))) synths)) 1000) ( d "-a2" -1 a2 1.0 (lambda (val) (if (> (+ val a1 a3) 1) (begin (set! val (- 1 a1 a3)) (-> (list-ref sliders 8) set! val))) (set! a2 val) ;;(c-display (+ (abs a1) (abs a2) (abs a3))) (for-each (lambda (instrument) (vct-set! (mus-ycoeffs (-> instrument das-filter)) 2 (- val))) synths)) 1000) ( d "-a3" -1 a3 1.0 (lambda (val) (if (> (+ val a1 a2) 1) (begin (set! val (- 1 a1 a2)) (-> (list-ref sliders 9) set! val))) (set! a3 val) ;;(c-display (+ (abs a1) (abs a2) (abs a3))) (for-each (lambda (instrument) (vct-set! (mus-ycoeffs (-> instrument das-filter)) 3 (- val))) synths)) 1000) ( d "b1" -1 b1 1.0 (for-all-instruments (lambda (instrument val) (set! b1 val) (vct-set! (mus-xcoeffs (-> instrument das-filter)) 1 val))) 1000) ( d "b2" -1 b2 1.0 (for-all-instruments (lambda (instrument val) (set! b2 val) (vct-set! (mus-xcoeffs (-> instrument das-filter)) 2 val))) 1000) ( d "b3" -1 b3 1.0 (for-all-instruments (lambda (instrument val) (set! b3 val) (vct-set! (mus-xcoeffs (-> instrument das-filter)) 3 val))) 1000) ( d "attack" 0.005 attack 2.0 (for-all-instruments (lambda (instrument val) (set! attack val) (set! (-> instrument attack-inc) (get-attack-inc (-> instrument attack-peak) attack)))) 1000) ( d "attack-peak" 1.00 attack-peak 10.0 (for-all-instruments (lambda (instrument val) (set! attack-peak val) (set! (-> instrument attack-peak) val) (set! (-> instrument attack-inc) (get-attack-inc val attack)) (set! (-> instrument sustain-dec) (get-sustain-dec val sustain)))) 1000) ( d "sustain" 0.005 sustain 2.0 (for-all-instruments (lambda (instrument val) (set! sustain val) (set! (-> instrument sustain-dec) (get-sustain-dec (-> instrument attack-peak) val)))) 1000) ( d "release" 0.005 release 2.0 (for-all-instruments (lambda (instrument val) (set! release val) (set! (-> instrument release-mul) (get-release-mul val)))) 1000) ( d "On/Off" (lambda (val) (if val (start-all #t) (stop-all #f))) #t) ( d "Autopan" (lambda (val) (if val (write-var autopan 1) (write-var autopan 0))) #t) ( d "Regular" (for-all-instruments (lambda (instrument val) (set! regular val) (set! (-> instrument regular-periods) (if val 1 0)))) regular) ( d "Play A4" (lambda (val) ((if val a4-start a4-stop)))) ( d "Play 440Hz" (lambda (val) ((if val 440-start 440-stop)))) ( d "reverb" 0 reverb-val 2.0 (for-all-instruments (lambda (instrument val) (set! reverb-val val) (set! (-> reverb-instrument reverb-val) val))) ;;(set! (-> instrument reverb-val) val))) 1000)))) (sliders (make-sliders))) (save-preset preset-A) (save-preset preset-B) (-> d show) (letrec ((check-overrun (let ((lastval (last (rte-info)))) (lambda () (let ((newval (last (rte-info)))) (if (> newval lastval) (begin (c-display "Using too much CPU. Skipping. (" newval "skips since start (try lowering period+pitch/octave, src-width and/or polyphony))") (set! lastval newval)))) (if check-overruns (in 1000 check-overrun)))))) (check-overrun)) midi-input)) -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From k.s.matheussen at notam02.no Sun Mar 25 13:37:04 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Sun, 25 Mar 2007 22:37:04 +0200 (CEST) Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: <878xdloumz.fsf@esben-stien.name> References: <87abyk8p65.fsf@esben-stien.name> <87veh72uw2.fsf@esben-stien.name> <87fy8171n1.fsf@esben-stien.name> <878xdloumz.fsf@esben-stien.name> Message-ID: On Sun, 25 Mar 2007, Esben Stien wrote: > "Kjetil S. Matheussen" writes: > >> replace the "synthesize" function with your own sound generator [..] >> plus add some code to set the "freq" variable and reset the phase of >> "osc" in the "not-playing-func" function > > I'm on thin ice here;), but after initially changing the synthesize > function and creating the freq and oscil, I'm getting the following > after I compiled the code and tried to evaluate (san-dysth). The error > message abut too many arguments seems trivial to fix, but I can't > figure out where this is happening, sorry;). > > The modified code is below. > > Error. What the? c-nevercalled-true? is never supposed to be called. Arguments: (#) > rt-compiler/. Wrong type. " sr " with value " # 20, x: 0,000, incr: 0,000, sinc table len: 20000> " is not a . > snd-error! > The rt language uses static typing, and tries to figure out the types of variables automatically. For this code, the compiler wasn't able to figure out "sr"'s type. I'm not quite sure why, but I guess its because there is only a method call "(mus-reset sr)" on the variable in your code, and perpahs the processing routine must be called sometime for the type to be correctly set. Anyway, just remove that "(mus-reset sr)" call that made the trouble, since "sr" isn't used anymore. From b0ef at esben-stien.name Mon Mar 26 05:21:16 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 26 Mar 2007 14:21:16 +0200 Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: (Kjetil S. Matheussen's message of "Sun, 25 Mar 2007 22:37:04 +0200 (CEST)") References: <87abyk8p65.fsf@esben-stien.name> <87veh72uw2.fsf@esben-stien.name> <87fy8171n1.fsf@esben-stien.name> <878xdloumz.fsf@esben-stien.name> Message-ID: <873b3sp54z.fsf@esben-stien.name> "Kjetil S. Matheussen" writes: > the compiler wasn't able to figure out "sr"'s type. Very excellent;). Thanks. I didn't put "sr" there, btw; it was already in the code, so a little strange;). I have gotten very far now;). The reset of the envelope works and every time it receives MIDI it plays my weak attempt at a drum;). There is light at the end of the tunnel. I have some problems shutting down the GTK window, though. Every time I shut it down, it kills the jack thread. Either it calls the destructor or scheme exits abnormally. Here's the code so far: (definstrument (a_new_gnu_order start-time duration frequency amplitude #:key (middlenote 60) (polyphony 32) (check-overruns #t) (das-vol 0.344) (pitch 0.794) (octave 6) (period 920) (maximum-drunk-change (/ 8.226 10000)) (unrandom 0.0) (maximum-add-val (/ 1.545 100)) (a1 0.698) (a2 0) (a3 0) (b1 0.474) (b2 0.723) (b3 0.426) (attack 0.093) (attack-peak 3.699) (sustain 0.05) (release 0.05) (src-width 20) (regular #f) (reverb-val 0.922) (partial0 1.0)(partial-amplitude0 0.8) (partial1 1.593)(partial-amplitude1 0.6) (partial2 2.135)(partial-amplitude2 0.6) (partial3 2.295)(partial-amplitude3 0.35) (partial4 2.917)(partial-amplitude4 0.3) (partial5 3.598)(partial-amplitude5 0.2) (amplitude-envelope-list '(0 0 .04 1 .4 1 1 0)) ;;(amplitude-envelope '(0 0.5 1 0 1 0))) #:allow-other-keys) (define* (make-reverb-old) (let ((l (make-ladspa "cmt" "freeverb3"))) (let ((plugin l)) (ladspa-set! plugin 0 0.0 ) (ladspa-set! plugin 1 0.814999997615814 ) (ladspa-set! plugin 2 0.617999970912933 ) (ladspa-set! plugin 3 1.0 ) (ladspa-set! plugin 4 0.0 ) (ladspa-set! plugin 5 0.7 ) ) l)) (define* (make-reverb) (let ((l (make-ladspa "g2reverb.so" "G2reverb"))) (let ((plugin l)) (ladspa-set! plugin 0 52.4360008239746 ) (ladspa-set! plugin 1 2.45300006866455 ) (ladspa-set! plugin 2 0.225999996066093 ) (ladspa-set! plugin 3 0.566999971866608 ) (ladspa-set! plugin 4 -80.0 ) (ladspa-set! plugin 5 -33.5200004577637 ) (ladspa-set! plugin 6 -43.8779983520508 ) ) l)) (define (filename-without-path path) (let ((chars (reverse! (string->list path))) (result '())) (while (and (not (null? chars)) (not (char=? (car chars) #\/))) (set! result (cons (car chars) result)) (set! chars (cdr chars))) (list->string result))) (define presetpath (string-append (getenv "HOME") "/.san_dysth/presets/")) (system (string-append "mkdir -p " presetpath " >/dev/null 2>/dev/null")) (system (string-append "mkdir -p " presetpath "/backup >/dev/null 2>/dev/null")) (system (string-append "mkdir -p " presetpath "/tmp >/dev/null 2>/dev/null")) (system (string-append "mkdir -p " presetpath "/examples >/dev/null 2>/dev/null")) (if (defined? '*san-dysth-example-presets*) (system (string-append "cp -u " *san-dysth-example-presets* "/* " presetpath "/examples/ >/dev/null 2>/dev/null"))) (primitive-eval '(define synth-load-save-parameters '(polyphony attack attack-peak sustain release das-vol pitch octave period maximum-drunk-change unrandom maximum-add-val a1 a2 a3 b1 b2 b3 src-width reverb-val min-release))) (letrec* ( (start (floor (* start-time (mus-srate)))) (len (floor (* duration (mus-srate)))) ;wtf? (foundit 1) (face 100.0) ;;base oscillator (sine0 (make-oscil :frequency frequency)) (sine1 (make-oscil :frequency (* partial0 frequency))) (sine2 (make-oscil :frequency (* partial1 frequency))) (sine3 (make-oscil :frequency (* partial2 frequency))) (sine4 (make-oscil :frequency (* partial3 frequency))) (sine5 (make-oscil :frequency (* partial4 frequency))) (sine6 (make-oscil :frequency (* partial5 frequency))) ;;modulating oscillator (mod (make-oscil :frequency 50)) (indenv '(0 2 100 1)) ;;snare (indenv '(0 100 50 0)) (devf (make-env :envelope indenv :scaler (in-hz 75) :start start :end len)) (amplitude-envelope (make-env :envelope amplitude-envelope-list :scaler amplitude :start start :end len)) (output (make-vct len)) ;;(osc (make-oscil)) ;;(vol 4/6) (face 0.5) (filename (<-> presetpath "tmp/preset.scm")) (num-synths polyphony) (num-playing 0) (all-isplaying (make-vct 16)) (reverb-bus (make-bus 2)) (reverb (make-reverb)) (min-release 0.000001) (osc (make-oscil :frequency 200)) (freq 200) (reverb-glide-vol (make-glide-var 1.0 0.001)) (autopan (make-var 1)) (notes (make-vct (1+ num-synths))) (volumes (make-vct (1+ num-synths))) (a4 (make-oscil :frequency 440)) (get-attack-inc (lambda (attack-peak attack) (/ (* attack-peak 256) (* (mus-srate) attack)))) (get-sustain-dec (lambda (attack-peak sustain) (/ (- attack-peak 1) (* (mus-srate) sustain)))) (get-release-mul (lambda (release) (expt min-release (/ 1 (* (mus-srate) release))))) (make-synths (lambda () (let ((ins (map (lambda (synth-num) (let* ( (note-vol 0) (note 0) ; (freq 400) (pan_left 1) (pan_right 1) (sr (make-src :srate 0 :width src-width)) ;;(attack (make-env `(0 0 0.7 1.9 1.0 1.0) #:duration attack)) (attack-val 0) (attack-inc (get-attack-inc attack-peak attack)) (sustain-val attack-peak) (sustain-dec (get-sustain-dec attack-peak sustain)) (release-val 1.0) (release-mul (get-release-mul release)) ;;(release-dec (/ 256 (* (mus-srate) release))) (is-playing #f) (src-val 0) (is-attacking #t) (is-sustaining #f) (is-releasing #f) (val 0) (addval 0) (period period) (periodcounter period) (inc-addval #f) (maximum-add-val maximum-add-val) (maximum-drunk-change maximum-drunk-change) (last-time 0) (regular-periods regular) (volume (make-glide-var das-vol 0.01)) (rate (* 0.1 (expt 2 (+ octave pitch)))) (das-filter (make-filter 4 (vct 1 b1 b2 b3) (vct 1 (- a1) (- a2) (- a3)))) (das-delay (make-delay 500)) ;; (das-osc (make-oscil)) (instrument ( (lambda () (declare ( release-val release-mul) ( last-time synth-num note is-playing is-releasing is-attacking)) (define (scale x x1 x2 y1 y2) (+ y1 (/ (* (- x x1) (- y2 y1)) (- x2 x1)))) (define (get-pan-vals pan) (let ((scale ,(- 2 (* 2 (sqrt 2)))) (x (scale pan -1 1 0 1))) (vct (* (- 1 x) (+ (* scale (- 1 x)) (- 1 scale))) (* x (+ (* scale x) (- 1 scale)))))) ;b0ef (define (synthesize) ; (* (read-glide-var volume) ; (oscil osc (hz->radians freq)))) (* face (env amplitude-envelope) (+ (* partial-amplitude0 (oscil sine1 (* (env devf) (oscil mod)))) (* partial-amplitude1 (oscil sine2 (* (env devf) (oscil mod)))) (* partial-amplitude2 (oscil sine3)) (* partial-amplitude3 (oscil sine4)) (* partial-amplitude4 (oscil sine5)) (* partial-amplitude5 (oscil sine6)) ) )) (if (not is-playing) (if (not (= (rt-get-time) last-time)) (let ((notes-note (the (vct-ref notes synth-num)))) (set! last-time (rt-get-time)) (if (> notes-note 0) (begin (set! is-playing #t) (set! note (vct-ref notes synth-num)) (let* ((mi 20) (ma 107) (val (max mi (min ma note))) (vals (get-pan-vals (scale val mi ma -1 1)))) (set! pan_left (* ,(sqrt 2) (vct-ref vals 0))) (set! pan_right (* ,(sqrt 2) (vct-ref vals 1)))) (set! is-attacking #t) (set! is-releasing #f) (set! is-sustaining #f) (mus-reset das-delay) ;;(mus-reset attack) ;;(mus-reset release) (set! attack-val 0.0) (set! sustain-val attack-peak) (set! release-val 1.0) ;(mus-reset sr) ;mk, inserting here (mus-reset amplitude-envelope) (mus-reset devf) (set! src-val (let ((middlenote (midi-to-freq middlenote)) (srcval (midi-to-freq note))) (set! srcval (- srcval middlenote)) (set! srcval (/ srcval middlenote)) (1+ srcval))) (set! note-vol (vct-ref volumes synth-num)) (set! num-playing (1+ num-playing)) ;;(printf "aiai %x %x %x %f %f\\n" control data1 data2 src-val vol) ) (if (< notes-note 0) ;; Did not get time to play. (vct-set! notes synth-num 0))))) (begin (if (not is-releasing) (if (not (= (rt-get-time) last-time)) (begin (set! last-time (rt-get-time)) (if (< (vct-ref notes synth-num) 1) (begin ;;(printf "Starting to release %d/%d\\n" synth-num note) (set! is-releasing #t)))))) (let ((outval (* 0.2 note-vol (synthesize))) (my-out (lambda (a b) (declare ( a b)) (if (> (read-var autopan) 0) (begin (set! a (* a pan_left)) (set! b (* b pan_right)))) (out (vct a b))))) (declare ( outval)) (cond (is-attacking (set! outval (* outval (/ attack-val 256))) (my-out outval (delay das-delay outval)) (set! attack-val (+ attack-val attack-inc)) (if (>= attack-val (* attack-peak 256)) (begin (set! is-attacking #f) (set! is-sustaining #t)))) (is-sustaining (set! outval (* outval sustain-val)) (my-out outval (delay das-delay outval)) (set! sustain-val (- sustain-val sustain-dec)) (if (<= sustain-val 1.0) (set! is-sustaining #f))) (is-releasing (my-out (* release-val outval) (* release-val (delay das-delay outval))) (set! release-val (* release-val release-mul)) ;;(set! release-val (- release-val release-dec)) (if (<= release-val min-release) ;; check for (min-relase * reverb-val) as well? (begin (set! is-playing #f) (vct-set! notes synth-num 0) (set! num-playing (1- num-playing))))) (else (my-out outval (delay das-delay outval))))))))))) instrument)) (iota (1+ num-synths))))) (for-each (lambda (instr) (-> instr play #:position 'last)) (c-butlast ins)) ins))) (make-midi-input (lambda () ( #:position 'first (lambda () (receive-midi (lambda (control data1 data2) (set! control (logand #xf0 control)) (if (and (< num-playing num-synths) (= control #x90) (> data2 0)) (let loop ((synth-num 0)) (declare ( synth-num)) (if (= (vct-ref notes synth-num) 0) (begin ;;(printf "synth-num %d %d %f\\n" synth-num data1 (vct-ref notes synth-num)) (vct-set! volumes synth-num (/ data2 128.0)) (vct-set! notes synth-num data1)) (if (< synth-num (1- num-synths)) (loop (1+ synth-num))))) (if (or (= control #x80) (and (= control #x90) (= data2 0))) (let loop ((synth-num 0)) (if (= (vct-ref notes synth-num) data1) (vct-set! notes synth-num (- data1)) (if (< synth-num (1- num-synths)) (loop (1+ synth-num))))))))))))) (make-reverb-instrument (lambda () (set! reverb (make-reverb)) ( #:position 'last (lambda () (out (vct-scale! (ladspa-run reverb (read-bus *out-bus*)) (* reverb-val 40 (read-glide-var reverb-glide-vol)))))))) (synths (make-synths)) (midi-input (make-midi-input)) (reverb-instrument (make-reverb-instrument)) (440-instrument ( (lambda () (out (* 0.1 (oscil a4)))))) (440-playing #f) (a4-playing #f) (a4-stop (lambda () (if a4-playing (begin (-> (last synths) stop) (vct-set! notes num-synths -57) (set! a4-playing #f))))) (a4-start (lambda () (if (not a4-playing) (begin (-> (last synths) play #:position 'last) (vct-set! volumes num-synths 0.9) (vct-set! notes num-synths 57) (set! a4-playing #t))))) (440-stop (lambda () (if 440-playing (begin (-> 440-instrument stop) (set! 440-playing #f))))) (440-start (lambda () (if (not 440-playing) (begin (-> 440-instrument play) (set! 440-playing #t))))) (stop-all (lambda (restfunc) (for-each (lambda (instrument) (write-glide-var (-> instrument volume) 0.0)) (c-butlast synths)) (write-glide-var reverb-glide-vol 0.0) (in 10 (lambda () (for-each (lambda (instrument) (-> instrument stop)) (c-butlast synths)) (440-stop) (a4-stop) (set! notes (make-vct (1+ num-synths))) (-> reverb-instrument stop) (-> midi-input stop) (if restfunc (restfunc)))))) (start-all (lambda (stop?) (let ((doit (lambda () (set! synths (make-synths)) (write-glide-var reverb-glide-vol 1.0) (set! midi-input (make-midi-input)) (set! reverb-instrument (make-reverb-instrument))))) (if stop? (stop-all doit) (doit))))) (get-filename (lambda (func) (let ((dialog (GTK_FILE_SELECTION (gtk_file_selection_new "aiai")))) (gtk_file_selection_set_filename dialog presetpath) (c-g_signal_connect (.ok_button dialog) "clicked" (lambda (w d) (func (gtk_file_selection_get_filename dialog)) (gtk_widget_hide (GTK_WIDGET dialog)))) (c-g_signal_connect (.cancel_button dialog) "clicked" (lambda (w d) (gtk_widget_hide (GTK_WIDGET dialog)))) (gtk_widget_show (GTK_WIDGET dialog))))) (save-preset (begin (primitive-eval '(define-macro (make-varlist-macro) `(list ,@(map (lambda (var) `(list ',var ,var)) synth-load-save-parameters)))) (lambda (preset-filename) (let ((fd (open-file preset-filename "w"))) (pretty-print `(define synth-preset-temp ',(make-varlist-macro)) fd) (close fd))))) (load-preset (begin (primitive-eval '(define-macro (read-varlist-macro) `(begin ,@(map (lambda (var) `(let ((a (assoc ',var synth-preset-temp))) (if a (set! ,var (cadr a))))) synth-load-save-parameters)))) (lambda (preset-filename) (stop-all (lambda () (gtk_window_set_title (GTK_WINDOW (-> d dialog)) preset-filename) (for-each (lambda (slider) (-> slider delete!)) sliders) (load preset-filename) (set! a2 0)(set! a3 0) (read-varlist-macro) (set! sliders (make-sliders)) (start-all #f)))))) (save-backup (lambda (backup-filename) (system (<-> "cp -f \"" backup-filename "\" \"" presetpath "/backup/" (filename-without-path backup-filename) "-"(string-append (string #\`)) "date -Iseconds" (string-append (string #\`)) "\"" " >/dev/null 2>/dev/null")))) (preset-A (<-> presetpath "tmp/synth-preset-A")) (preset-B (<-> presetpath "tmp/synth-preset-B")) (load-here (lambda () (get-filename (lambda (preset-filename) (save-backup filename) (load-preset preset-filename) (save-preset preset-A) (save-preset preset-B) (gtk_window_set_title (GTK_WINDOW (-> d dialog)) preset-filename) (set! filename preset-filename))))) (save (lambda () (save-backup filename) (save-preset filename))) (save-as (lambda () (get-filename (lambda (preset-filename) (save-backup preset-filename) (save-preset preset-filename) (gtk_window_set_title (GTK_WINDOW (-> d dialog)) preset-filename) (set! filename preset-filename))))) (exit-synth (lambda () (stop-all #f) (-> d hide) (set! check-overruns #f) (exit) )) (d ( "SAN DYSTH" exit-synth "A" (lambda () (save-preset preset-B) (load-preset preset-A)) "B" (lambda () (save-preset preset-A) (load-preset preset-B)) "-->A/B" (lambda () (save-preset preset-A) (save-preset preset-B)) "Save As" save-as "Save" save "Load" load-here "Reverb GUI" (lambda () (make-ladspa-gui reverb)) "Close" exit-synth)) (for-all-instruments (lambda (func) (lambda (val) (for-each (lambda (instrument) (func instrument val)) synths)))) ( (lambda args (let ((ret (apply args))) (-> ret add-method 'delete! (<- ret remove)) ret))) (make-sliders (lambda () ; (map (lambda (args) ; (apply (lambda (name minval var maxval resolution func) ; ( d name 0 var 2.0 (for-all-instruments func) resolution)) ; `(("Amplitude" 0 ,das-vol 2.0 1000 ,(lambda (instrument val) ; (write-glide-var (-> instrument volume) (* (if (> unrandom 0) 0.01 1) das-vol)))) ; ("Pitch" ...))) (list ( d "Amplitude" 0 das-vol 2.0 (for-all-instruments (lambda (instrument val) (set! das-vol val) (write-glide-var (-> instrument volume) (* (if (> unrandom 0) 0.01 1) das-vol)))) 1000) ( d "Pitch" 0 pitch 1 (for-all-instruments (lambda (instrument val) (set! pitch val) (set! (-> instrument rate) (* 0.1 (expt 2 (+ octave pitch)))))) 1000) ( d "Octave" 0 octave 8 (for-all-instruments (lambda (instrument val) (set! octave val) (set! (-> instrument rate) (* 0.1 (expt 2 (+ octave pitch)))))) 1) ( d "src-width" 2 src-width 40 (lambda (val) (set! src-width val) (start-all #t)) 1) ( d "Period" 2 period 2000 (for-all-instruments (lambda (instrument val) (set! period val) (set! (-> instrument period) val))) 1) ( d "Max change" 0.1 (* 10000 maximum-drunk-change) 40 (for-all-instruments (lambda (instrument val) (set! maximum-drunk-change (/ val 10000)) (set! (-> instrument maximum-drunk-change) (sin (/ val 10000))))) 1000) ;; Unrandom can be very cool, but also very dangerous for ears and loudspeakers to play with. ;; ( d "Unrandom" 0.0 0 2.0 (for-all-instruments (lambda (instrument val) ;; (if (or (and (> val 0) ;; (= 0 (-> instrument unrandom))) ;; (and (= val 0) ;; (> (-> instrument unrandom) 0))) ;; (begin ;; (write-glide-var (-> instrument volume) (* (if (> val 0) 0.01 1) das-vol)) ;; (set! (-> instrument rate) (* (if (> val 990) 0.001 0.1) (expt 2 (+ octave pitch)))))) ;; (set! unrandom val) ;; (set! (-> instrument unrandom) val))) ;; 1000) ( d "Max add" 0.1 (* 100 maximum-add-val) 10 (for-all-instruments (lambda (instrument val) (set! maximum-add-val (/ val 100)) (set! (-> instrument maximum-add-val) (/ val 100)))) 1000) ( d "-a1" -1 a1 1.0 (lambda (val) (if (> (+ val a2 a3) 1) (begin (set! val (- 1 a2 a3)) (-> (list-ref sliders 7) set! val))) (set! a1 val) ;;(c-display (+ (abs a1) (abs a2) (abs a3))) (for-each (lambda (instrument) (vct-set! (mus-ycoeffs (-> instrument das-filter)) 1 (- val))) synths)) 1000) ( d "-a2" -1 a2 1.0 (lambda (val) (if (> (+ val a1 a3) 1) (begin (set! val (- 1 a1 a3)) (-> (list-ref sliders 8) set! val))) (set! a2 val) ;;(c-display (+ (abs a1) (abs a2) (abs a3))) (for-each (lambda (instrument) (vct-set! (mus-ycoeffs (-> instrument das-filter)) 2 (- val))) synths)) 1000) ( d "-a3" -1 a3 1.0 (lambda (val) (if (> (+ val a1 a2) 1) (begin (set! val (- 1 a1 a2)) (-> (list-ref sliders 9) set! val))) (set! a3 val) ;;(c-display (+ (abs a1) (abs a2) (abs a3))) (for-each (lambda (instrument) (vct-set! (mus-ycoeffs (-> instrument das-filter)) 3 (- val))) synths)) 1000) ( d "b1" -1 b1 1.0 (for-all-instruments (lambda (instrument val) (set! b1 val) (vct-set! (mus-xcoeffs (-> instrument das-filter)) 1 val))) 1000) ( d "b2" -1 b2 1.0 (for-all-instruments (lambda (instrument val) (set! b2 val) (vct-set! (mus-xcoeffs (-> instrument das-filter)) 2 val))) 1000) ( d "b3" -1 b3 1.0 (for-all-instruments (lambda (instrument val) (set! b3 val) (vct-set! (mus-xcoeffs (-> instrument das-filter)) 3 val))) 1000) ( d "attack" 0.005 attack 2.0 (for-all-instruments (lambda (instrument val) (set! attack val) (set! (-> instrument attack-inc) (get-attack-inc (-> instrument attack-peak) attack)))) 1000) ( d "attack-peak" 1.00 attack-peak 10.0 (for-all-instruments (lambda (instrument val) (set! attack-peak val) (set! (-> instrument attack-peak) val) (set! (-> instrument attack-inc) (get-attack-inc val attack)) (set! (-> instrument sustain-dec) (get-sustain-dec val sustain)))) 1000) ( d "sustain" 0.005 sustain 2.0 (for-all-instruments (lambda (instrument val) (set! sustain val) (set! (-> instrument sustain-dec) (get-sustain-dec (-> instrument attack-peak) val)))) 1000) ( d "release" 0.005 release 2.0 (for-all-instruments (lambda (instrument val) (set! release val) (set! (-> instrument release-mul) (get-release-mul val)))) 1000) ( d "On/Off" (lambda (val) (if val (start-all #t) (stop-all #f))) #t) ( d "Autopan" (lambda (val) (if val (write-var autopan 1) (write-var autopan 0))) #t) ( d "Regular" (for-all-instruments (lambda (instrument val) (set! regular val) (set! (-> instrument regular-periods) (if val 1 0)))) regular) ( d "Play A4" (lambda (val) ((if val a4-start a4-stop)))) ( d "Play 440Hz" (lambda (val) ((if val 440-start 440-stop)))) ( d "reverb" 0 reverb-val 2.0 (for-all-instruments (lambda (instrument val) (set! reverb-val val) (set! (-> reverb-instrument reverb-val) val))) ;;(set! (-> instrument reverb-val) val))) 1000)))) (sliders (make-sliders))) (save-preset preset-A) (save-preset preset-B) (-> d show) (letrec ((check-overrun (let ((lastval (last (rte-info)))) (lambda () (let ((newval (last (rte-info)))) (if (> newval lastval) (begin (c-display "Using too much CPU. Skipping. (" newval "skips since start (try lowering period+pitch/octave, src-width and/or polyphony))") (set! lastval newval)))) (if check-overruns (in 1000 check-overrun)))))) (check-overrun)) midi-input)) (a_new_gnu_order 0 0.1 45 0.3) -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From Johannes.Quint at web.de Mon Mar 26 03:44:15 2007 From: Johannes.Quint at web.de (Johannes Quint) Date: Mon, 26 Mar 2007 12:44:15 +0200 Subject: [CM] cm/clisp/xemacs Message-ID: trying to load cm under windows, i still have problems. with clisp 2.4.1 under xemacs, i've used the following startup code: (add-to-list 'load-path "/lisp/slime-2.0/") (defvar cm-directory "C:/lisp/cm") (defvar cm-startfile "cm.bat") (let* ((els (concat cm-directory "/etc/xemacs")) (bin (concat cm-directory "/bin/" cm-startfile)) (load-path (cons els load-path))) (load "listener") (load "cm") (setq inferior-lisp-program bin)) now, when i try 'M-x cm', i get: 'Searching for program: No such file or directory, cm' but - strange - i can do 'M-x lisp-mode' and i get a listener, automatically loading the cm-sources. this is probably a pathname-problem - any ideas how to solve it? j _________________________ Johannes Quint Rilkestr.55 D-53225 Bonn 0228 468256 johannes.quint at web.de www.johannes-quint.de -------------- next part -------------- An HTML attachment was scrubbed... URL: From b0ef at esben-stien.name Mon Mar 26 05:36:23 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 26 Mar 2007 14:36:23 +0200 Subject: [CM] Display Scheme Buffer (snd-rt) Message-ID: <871wjcp4fs.fsf@esben-stien.name> Is there any key bound to display the scheme buffer? I'm doing C-x 2 and C-x o and then change this buffer to the scheme buffer, but I guess there is a key bound to this?. I guess this must be a scheme major mode binding, but M-x help b doesn't list anything relevant. In sclang mode, there is C-c < and it's quite handy;). -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From k.s.matheussen at notam02.no Mon Mar 26 03:51:15 2007 From: k.s.matheussen at notam02.no (Kjetil S. Matheussen) Date: Mon, 26 Mar 2007 12:51:15 +0200 (CEST) Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: <873b3sp54z.fsf@esben-stien.name> References: <87abyk8p65.fsf@esben-stien.name> <87veh72uw2.fsf@esben-stien.name> <87fy8171n1.fsf@esben-stien.name> <878xdloumz.fsf@esben-stien.name> <873b3sp54z.fsf@esben-stien.name> Message-ID: On Mon, 26 Mar 2007, Esben Stien wrote: > "Kjetil S. Matheussen" writes: > >> the compiler wasn't able to figure out "sr"'s type. > > Very excellent;). Thanks. I didn't put "sr" there, btw; it was already > in the code, so a little strange;). > > I have gotten very far now;). The reset of the envelope works and > every time it receives MIDI it plays my weak attempt at a > drum;). There is light at the end of the tunnel. > I'm glad to hear. > I have some problems shutting down the GTK window, though. Every time > I shut it down, it kills the jack thread. Either it calls the > destructor or scheme exits abnormally. > Thats just because the exit-window function calls (exit). (san-dysth is a standalone program). So I don't think it exits abnormally... From taube at uiuc.edu Mon Mar 26 04:20:41 2007 From: taube at uiuc.edu (Rick Taube) Date: Mon, 26 Mar 2007 06:20:41 -0500 Subject: [CM] cm/clisp/xemacs In-Reply-To: References: Message-ID: <2CA212F8-A0DF-4D22-86A0-D615951F3926@uiuc.edu> > 'Searching for program: No such file or directory, cm' M-x cm uses a 'cm-program' variable. also im not sure if you should be using listener AND slime together. i would try this: (require 'slime) (slime-setup) (setq cm-program "C:/lisp/cm/bin/cm.bat") (load "C:/lisp/cm/etc/xemacs/cm.el") (enable-cm-commands) if you are using sal and want the scratch buffer to be sal rather than lisp add these. ;(load "C:/Lisp/sal/sal-mode.el") ;(setq cm-scratch-mode 'sal) not sure that the 'start-sal' command will work on dos as ive never tried it, it uses slime-start so there is hope i guess... From achim.bornhoeft at web.de Mon Mar 26 07:12:59 2007 From: achim.bornhoeft at web.de (Achim Bornhoeft) Date: Mon, 26 Mar 2007 16:12:59 +0200 Subject: [CM] display .ins files in textmode on the web Message-ID: <4607D4EB.8020601@web.de> After putting a clm instrument with the .ins or .lisp extension on the net the file is displayed in html mode in my web browser, say all LFs are gone and the font is the default font. What can I do to make these files look like plain text mode on the net. Thanks for help, Achim -- -- achim bornhoeft -- neckarhalde 38 -- d-72070 t?bingen -- tel/fax +49 (0)7071 942745 -- mobil +49 (0)179 6936930 -- From finnendahl at folkwang-hochschule.de Mon Mar 26 07:20:26 2007 From: finnendahl at folkwang-hochschule.de (Orm Finnendahl) Date: Mon, 26 Mar 2007 16:20:26 +0200 Subject: [CM] display .ins files in textmode on the web In-Reply-To: <4607D4EB.8020601@web.de> References: <4607D4EB.8020601@web.de> Message-ID: <20070326142026.GL7420@grisey> Am 26. M?rz 2007, 16:12 Uhr (+0200) schrieb Achim Bornhoeft: > After putting a clm instrument with the .ins or .lisp extension on the > net the file is displayed in html mode in my web browser, say all LFs > are gone and the font is the default font. > What can I do to make these files look like plain text mode on the net. > http://txt2html.sourceforge.net/ -- Orm From rm at seid-online.de Mon Mar 26 08:51:03 2007 From: rm at seid-online.de (Ralf Mattes) Date: Mon, 26 Mar 2007 17:51:03 +0200 Subject: [OT] [CM] display .ins files in textmode on the web In-Reply-To: <20070326142026.GL7420@grisey> References: <4607D4EB.8020601@web.de> <20070326142026.GL7420@grisey> Message-ID: <1174924263.7357.8.camel@localhost.localdomain> On Mon, 2007-03-26 at 16:20 +0200, Orm Finnendahl wrote: > Am 26. M?rz 2007, 16:12 Uhr (+0200) schrieb Achim Bornhoeft: > > After putting a clm instrument with the .ins or .lisp extension on the > > net the file is displayed in html mode in my web browser, say all LFs > > are gone and the font is the default font. > > What can I do to make these files look like plain text mode on the net. > > > > http://txt2html.sourceforge.net/ > Ne, ne, Orm, so geht's nicht ... The problem here is the MIME-type the webserver sends to the browser. There are several ways to fix this (all solutions assume an Apache server): * Change the default mime type: In your server configuration add/modify: DefaultType text/plain From now on the server will send 'text/plain' as the default mime type. NOTE: this might have dramatic consequences on the display of other web pages on the server depending on the configuration. * Add/modify you mime database -- RTFM * tell Apache about the mime type: Again, in your server configuration add: AddType text/plain .ins AddType text/plain .lisp Probably the best solution. Orm's solution would convert your code to a HTMLized version. HTH Ralf Mattes > -- > Orm > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist From landspeedrecord at gmail.com Mon Mar 26 08:53:27 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Mon, 26 Mar 2007 11:53:27 -0400 Subject: [CM] Xemacs/CM error Message-ID: So I switched from CYGWIN/clisp to plain on clisp on XP. Thanks to those who suggested I make the switch. I am now trying to get Xemacs/SLIME/Clisp/CM working. I followed the "running common music in Emacs" tutorial on the common music homepage and I am getting a weird error when I try to launch Common Music in Xemacs (by doing M-x cm). The error says: Peculiar Error (file-error "error starting" "Exec format error" . "c:\\lisp\\cm\\bin\\cm.sh"). Any ideas what might be going on? FWIW I am running several different lisps on my XP machine and I have no idea if Xemacs/SLIME is using Clisp or one of the other lisps. Any tips on how to determine this? Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From b0ef at esben-stien.name Mon Mar 26 10:48:14 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 26 Mar 2007 19:48:14 +0200 Subject: [CM] Access Symbolic Links (snd-8.7) Message-ID: <878xdjlwv5.fsf@esben-stien.name> Having some really weird problems accessing symbolic links; it's not possible. When I open snd and select open, the list with directories does not contain the symbolic links. I find them in the list of files, but when clicking on them, nothing happens. This is a fairly recent problem, but I haven't actually used the open button lately. I'm on GNU/Linux. Anyone seen this? -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From cycle.code.media at gmail.com Mon Mar 26 09:20:04 2007 From: cycle.code.media at gmail.com (James Baker) Date: Tue, 27 Mar 2007 02:20:04 +1000 Subject: [CM] Xemacs/CM error In-Reply-To: References: Message-ID: <428d2dc0703260920l5a8f8a40wfa2d521bed611278@mail.gmail.com> you need to set cm-program, otherwise emacs attempts to launch a shell script (something windows knows nothing about) add the following to your .emacs (make sure to alter the path to where cm is located on your system) (setq cm-program "c:/path/to/cm/bin/cm.bat") On 3/27/07, Landspeedrecord wrote: > So I switched from CYGWIN/clisp to plain on clisp on XP. Thanks to those > who suggested I make the switch. > > I am now trying to get Xemacs/SLIME/Clisp/CM working. I followed the > "running common music in Emacs" tutorial on the common music homepage and I > am getting a weird error when I try to launch Common Music in Xemacs (by > doing M-x cm). > > The error says: Peculiar Error (file-error "error starting" "Exec format > error" . "c:\\lisp\\cm\\bin\\cm.sh"). > > Any ideas what might be going on? > > FWIW I am running several different lisps on my XP machine and I have no > idea if Xemacs/SLIME is using Clisp or one of the other lisps. Any tips on > how to determine this? > > Thanks! > From b0ef at esben-stien.name Mon Mar 26 11:27:47 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 26 Mar 2007 20:27:47 +0200 Subject: [CM] Access Symbolic Links (snd-8.7) In-Reply-To: <878xdjlwv5.fsf@esben-stien.name> (Esben Stien's message of "Mon, 26 Mar 2007 19:48:14 +0200") References: <878xdjlwv5.fsf@esben-stien.name> Message-ID: <87y7ljg8rg.fsf@esben-stien.name> Esben Stien writes: > Having some really weird problems accessing symbolic links I compiled snd-8.9 and the problem is still there. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From taube at uiuc.edu Mon Mar 26 10:04:13 2007 From: taube at uiuc.edu (Rick Taube) Date: Mon, 26 Mar 2007 12:04:13 -0500 Subject: [CM] Xemacs/CM error In-Reply-To: <428d2dc0703260920l5a8f8a40wfa2d521bed611278@mail.gmail.com> References: <428d2dc0703260920l5a8f8a40wfa2d521bed611278@mail.gmail.com> Message-ID: <430489A1-BBD1-4869-8302-E96BA053B320@uiuc.edu> yes thanks. for more infor about slime see a note i sent to the list earlier today. i wish i could do something better for windows -- does their new Vista have a reasonable shell language or is it still the same dos nonsense under the hood? On Mar 26, 2007, at 11:20 AM, James Baker wrote: > you need to set cm-program, otherwise emacs attempts to launch a shell > script (something windows knows nothing about) > > add the following to your .emacs (make sure to alter the path to where > cm is located on your system) > > (setq cm-program "c:/path/to/cm/bin/cm.bat") > > On 3/27/07, Landspeedrecord wrote: >> So I switched from CYGWIN/clisp to plain on clisp on XP. Thanks >> to those >> who suggested I make the switch. >> >> I am now trying to get Xemacs/SLIME/Clisp/CM working. I followed the >> "running common music in Emacs" tutorial on the common music >> homepage and I >> am getting a weird error when I try to launch Common Music in >> Xemacs (by >> doing M-x cm). >> >> The error says: Peculiar Error (file-error "error starting" "Exec >> format >> error" . "c:\\lisp\\cm\\bin\\cm.sh"). >> >> Any ideas what might be going on? >> >> FWIW I am running several different lisps on my XP machine and I >> have no >> idea if Xemacs/SLIME is using Clisp or one of the other lisps. >> Any tips on >> how to determine this? >> >> Thanks! >> > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist From bil at ccrma.Stanford.EDU Mon Mar 26 10:35:18 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Mon, 26 Mar 2007 10:35:18 -0700 Subject: [CM] Access Symbolic Links (snd-8.7) In-Reply-To: <878xdjlwv5.fsf@esben-stien.name> References: <878xdjlwv5.fsf@esben-stien.name> Message-ID: <20070326173402.M23462@ccrma.Stanford.EDU> symbolic links both to directories and files work for me in Snd's file lists in linux. I can't reproduce this bug. From landspeedrecord at gmail.com Mon Mar 26 10:48:05 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Mon, 26 Mar 2007 13:48:05 -0400 Subject: [CM] Xemacs/CM error In-Reply-To: <430489A1-BBD1-4869-8302-E96BA053B320@uiuc.edu> References: <428d2dc0703260920l5a8f8a40wfa2d521bed611278@mail.gmail.com> <430489A1-BBD1-4869-8302-E96BA053B320@uiuc.edu> Message-ID: Thanks! That seemed to help - now I have a new problem: The error I get is: (load "c:\\slime2.0\\swank-loader.lisp" :verbose t) (swank:start-server "C:\\DOCUME~1\\LOCALS~1\\Temp\\slime.596" :external-format :iso-latin-1-unix) The system cannot find the path specified. Process inferior-lisp exited abnormally with code 1 Here is the code I am inserting into Xemacs init.el file (maybe this is the source of the problem?): (add-to-list 'load-path "\\slime2.0\\") (add-to-list 'load-path "\\cygwin\\lisp\\cm\\") (setq cm-program "c:/cygwin/lisp/cm/bin/cm.bat") (load "etc\\xemacs\\cm.el") (enable-cm-commands) On 3/26/07, Rick Taube wrote: > > yes thanks. for more infor about slime see a note i sent to the list > earlier today. > > i wish i could do something better for windows -- does their new > Vista have a reasonable shell language or is it still the same dos > nonsense under the hood? > > On Mar 26, 2007, at 11:20 AM, James Baker wrote: > > > you need to set cm-program, otherwise emacs attempts to launch a shell > > script (something windows knows nothing about) > > > > add the following to your .emacs (make sure to alter the path to where > > cm is located on your system) > > > > (setq cm-program "c:/path/to/cm/bin/cm.bat") > > > > On 3/27/07, Landspeedrecord wrote: > >> So I switched from CYGWIN/clisp to plain on clisp on XP. Thanks > >> to those > >> who suggested I make the switch. > >> > >> I am now trying to get Xemacs/SLIME/Clisp/CM working. I followed the > >> "running common music in Emacs" tutorial on the common music > >> homepage and I > >> am getting a weird error when I try to launch Common Music in > >> Xemacs (by > >> doing M-x cm). > >> > >> The error says: Peculiar Error (file-error "error starting" "Exec > >> format > >> error" . "c:\\lisp\\cm\\bin\\cm.sh"). > >> > >> Any ideas what might be going on? > >> > >> FWIW I am running several different lisps on my XP machine and I > >> have no > >> idea if Xemacs/SLIME is using Clisp or one of the other lisps. > >> Any tips on > >> how to determine this? > >> > >> Thanks! > >> > > > > _______________________________________________ > > Cmdist mailing list > > Cmdist at ccrma.stanford.edu > > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist > -------------- next part -------------- An HTML attachment was scrubbed... URL: From taube at uiuc.edu Mon Mar 26 10:48:09 2007 From: taube at uiuc.edu (Rick Taube) Date: Mon, 26 Mar 2007 12:48:09 -0500 Subject: [CM] Xemacs/CM error In-Reply-To: References: Message-ID: <2E776DBE-0C78-410B-8006-AE6C05FF23BE@uiuc.edu> if the lisp doest display its banner you can see what you ended up with by doing: (lisp-implementation-version) in the repl when it appears. but really it would be better to poke around in your .emacs code to see what you are doing :) look at the values of variables cm-program and/or inferior-lisp-program, slime-default-lisp, slime-lisp- implementations On Mar 26, 2007, at 10:53 AM, Landspeedrecord wrote: > > FWIW I am running several different lisps on my XP machine and I > have no idea if Xemacs/SLIME is using Clisp or one of the other > lisps. Any tips on how to determine this? From b0ef at esben-stien.name Mon Mar 26 12:43:06 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 26 Mar 2007 21:43:06 +0200 Subject: [CM] Undo Window Message-ID: <87tzw7g59x.fsf@esben-stien.name> It would be nice with an undo window, where each action is appended to a list and you can see each step you make. It makes it very easy to jump back a couple of actions. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From taube at uiuc.edu Mon Mar 26 11:04:37 2007 From: taube at uiuc.edu (Rick Taube) Date: Mon, 26 Mar 2007 13:04:37 -0500 Subject: [CM] Xemacs/CM error In-Reply-To: References: <428d2dc0703260920l5a8f8a40wfa2d521bed611278@mail.gmail.com> <430489A1-BBD1-4869-8302-E96BA053B320@uiuc.edu> Message-ID: i would take cm OUT of the loop untill you can start slime reliably using just a base clisp. once you are certain that clisp is starting then test your cm.bat file in the dos terminal to make sure its working: in their terminal cd to your cm/bin dir then type cm.bat to see if it finds your clisp and starts cm. if it does then go into your emacs file and add (setq cm-program "/ path/to/cm/bin/cm.bat") just looking at all these pathnames gives me a headache :) you might consider having one parent dir to hold all your lisp stuff... > load "c:\\slime2.0\\swank-loader.lisp" :verbose t) > (swank:start-server "C:\\DOCUME~1\\LOCALS~1\\Temp\\slime. > 596" :external-format :iso-latin-1-unix) > > The system cannot find the path specified. > > Process inferior-lisp exited abnormally with code 1 > > Here is the code I am inserting into Xemacs init.el file (maybe > this is the source of the problem?): > > (add-to-list 'load-path "\\slime2.0\\") > (add-to-list 'load-path "\\cygwin\\lisp\\cm\\") > (setq cm-program "c:/cygwin/lisp/cm/bin/cm.bat") > (load "etc\\xemacs\\cm.el") > (enable-cm-commands) From b0ef at esben-stien.name Mon Mar 26 13:15:30 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 26 Mar 2007 22:15:30 +0200 Subject: [CM] From Cursor to N'th Mark (Snd-8.9) Message-ID: <87ps6vg3rx.fsf@esben-stien.name> In the manual, it says: C-x c define selection from cursor to nth mark What is nth mark?. Do you mean next mark?. Is there any way to define a selection from the cursor to a named mark? -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Mon Mar 26 13:20:07 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Mon, 26 Mar 2007 22:20:07 +0200 Subject: [CM] GUILE -> Abnormal Exit (snd-rt) In-Reply-To: (Kjetil S. Matheussen's message of "Mon, 26 Mar 2007 12:51:15 +0200 (CEST)") References: <87abyk8p65.fsf@esben-stien.name> <87veh72uw2.fsf@esben-stien.name> <87fy8171n1.fsf@esben-stien.name> <878xdloumz.fsf@esben-stien.name> <873b3sp54z.fsf@esben-stien.name> Message-ID: <87lkhjg3k8.fsf@esben-stien.name> "Kjetil S. Matheussen" writes: > the exit-window function calls (exit). (san-dysth is a standalone > program). So I don't think it exits abnormally... I'm getting a substantial amount of errors;), but I'll try to clean up this to suit my code and report back;). Thanks. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From volger at lebenspuls.de Mon Mar 26 12:42:34 2007 From: volger at lebenspuls.de (Pieter Volger) Date: Mon, 26 Mar 2007 21:42:34 +0200 Subject: [CM] Xemacs/CM error Message-ID: <4608222A.9060100@lebenspuls.de> I use CLisp 2.38; I had problems with newer versions of CLISP. My Xemacs-option-file: (add-to-list 'load-path "C:/LISP/slime-2.0/") (add-to-list 'load-path "C:/LISP/cm/") (load "etc/xemacs/cm.el") (enable-cm-commands) In the cm.el file in cm/etc/xemacs I changed cm.sh to cm.bat. Now it works fine. I hope this helps. From bil at ccrma.Stanford.EDU Mon Mar 26 12:55:12 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Mon, 26 Mar 2007 12:55:12 -0700 Subject: [CM] Undo Window In-Reply-To: <87tzw7g59x.fsf@esben-stien.name> References: <87tzw7g59x.fsf@esben-stien.name> Message-ID: <20070326195407.M30947@ccrma.Stanford.EDU> > It would be nice with an undo window, where each action is appended to > a list and you can see each step you make. It makes it very easy to > jump back a couple of actions. Is this a reference to Snd? If so, perhaps what you want is the edit history list on the left side of each channel graph -- it is normally a closed pane, but you can drag it open. From landspeedrecord at gmail.com Mon Mar 26 12:56:50 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Mon, 26 Mar 2007 15:56:50 -0400 Subject: [CM] Xemacs/CM error In-Reply-To: References: <428d2dc0703260920l5a8f8a40wfa2d521bed611278@mail.gmail.com> <430489A1-BBD1-4869-8302-E96BA053B320@uiuc.edu> Message-ID: Thanks for the help Rick and James! Turns out that I had moved & renamed my Clisp folder and the batch file was looking for the old location. When I deleted the batch file and re-ran Common Music from plain old Clisp a new batch file was created and now when I run Common Music from Xemacs it launches fine. One question though... I am still getting an error about "gnu-plot". Is there a way to force clisp/commonmusic to just skip that part of the load? This is the error I get: ; Loading "bin\\clisp_2.41_windows-i686\\gnuplot.fas" *** - FIND-CLASS: GNUPLOT-FILE does not name a class The following restarts are available: SKIP :R1 skip 30 32 (DEFMETHOD CLOSE-IO :AFTER ...)-6 STOP :R2 stop loading file C:\cygwin\lisp\cm\bin\clisp_2.41_windows-i686\gnuplot.fas RETRY :R3 Retry performing # on #. ACCEPT :R4 Continue, treating # on # as having been successful. SKIP :R5 skip (USE-SYSTEM CM) Etc... On 3/26/07, Rick Taube wrote: > > > i would take cm OUT of the loop untill you can start slime reliably > using just a base clisp. once you are certain that clisp is starting > then > test your cm.bat file in the dos terminal to make sure its working: > in their terminal cd to your cm/bin dir then type cm.bat to see if it > finds your clisp and starts cm. > if it does then go into your emacs file and add (setq cm-program "/ > path/to/cm/bin/cm.bat") > > just looking at all these pathnames gives me a headache :) you might > consider having one parent dir to hold all your lisp stuff... > > > load "c:\\slime2.0\\swank-loader.lisp" :verbose t) > > (swank:start-server "C:\\DOCUME~1\\LOCALS~1\\Temp\\slime. > > 596" :external-format :iso-latin-1-unix) > > > > The system cannot find the path specified. > > > > Process inferior-lisp exited abnormally with code 1 > > > > Here is the code I am inserting into Xemacs init.el file (maybe > > this is the source of the problem?): > > > > (add-to-list 'load-path "\\slime2.0\\") > > (add-to-list 'load-path "\\cygwin\\lisp\\cm\\") > > (setq cm-program "c:/cygwin/lisp/cm/bin/cm.bat") > > (load "etc\\xemacs\\cm.el") > > (enable-cm-commands) > -------------- next part -------------- An HTML attachment was scrubbed... URL: From bil at ccrma.Stanford.EDU Mon Mar 26 12:59:57 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Mon, 26 Mar 2007 12:59:57 -0700 Subject: [CM] From Cursor to N'th Mark (Snd-8.9) In-Reply-To: <87ps6vg3rx.fsf@esben-stien.name> References: <87ps6vg3rx.fsf@esben-stien.name> Message-ID: <20070326195813.M44644@ccrma.Stanford.EDU> > What is nth mark?. Do you mean next mark?. This refers to the numeric argument (emacs-style) -- C-u 32 C-x c would start at the cursor and count ahead 32 marks, ending the selection in that vicinity. I can't remember why I defined such a useless keybinding! From bil at ccrma.Stanford.EDU Mon Mar 26 13:15:40 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Mon, 26 Mar 2007 13:15:40 -0700 Subject: [CM] From Cursor to N'th Mark (Snd-8.9) In-Reply-To: <87ps6vg3rx.fsf@esben-stien.name> References: <87ps6vg3rx.fsf@esben-stien.name> Message-ID: <20070326201423.M76888@ccrma.Stanford.EDU> > Is there any way to define a selection from the cursor to a named > mark? (bind-key #\m 0 (lambda () (prompt-in-minibuffer "mark name:" (lambda (response) ; this expects a string (use double quotes) (define (define-selection beg end) (let* ((s (selected-sound)) (c (selected-channel s))) (set! (selection-member? s c) #t) (set! (selection-position s c) beg) (set! (selection-frames s c) (1+ (- end beg))))) (let ((m (find-mark response))) (if (mark? m) (define-selection (cursor) (mark-sample m)) (report-in-minibuffer "no such mark"))))))) (if the minibuffer gets clogged up, use C-g to clear it -- I need to make this prettier). From b0ef at esben-stien.name Mon Mar 26 15:24:18 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Tue, 27 Mar 2007 00:24:18 +0200 Subject: [CM] Undo Window In-Reply-To: <20070326195407.M30947@ccrma.Stanford.EDU> (Bill Schottstaedt's message of "Mon, 26 Mar 2007 12:55:12 -0700") References: <87tzw7g59x.fsf@esben-stien.name> <20070326195407.M30947@ccrma.Stanford.EDU> Message-ID: <877it3fxt9.fsf@esben-stien.name> "Bill Schottstaedt" writes: > Is this a reference to Snd? Forgot the reference;), but yes, Snd. > perhaps what you want is the edit history list on the left side of > each channel graph I totally missed this;). Thank you. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Mon Mar 26 15:29:21 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Tue, 27 Mar 2007 00:29:21 +0200 Subject: [CM] From Cursor to N'th Mark (Snd-8.9) In-Reply-To: <20070326201423.M76888@ccrma.Stanford.EDU> (Bill Schottstaedt's message of "Mon, 26 Mar 2007 13:15:40 -0700") References: <87ps6vg3rx.fsf@esben-stien.name> <20070326201423.M76888@ccrma.Stanford.EDU> Message-ID: <873b3rfxku.fsf@esben-stien.name> "Bill Schottstaedt" writes: > (bind-key #\m 0 > .. Really great, but it doesn't work backwards, sorry;). -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From taube at uiuc.edu Mon Mar 26 14:53:11 2007 From: taube at uiuc.edu (Rick Taube) Date: Mon, 26 Mar 2007 16:53:11 -0500 Subject: [CM] Xemacs/CM error In-Reply-To: References: <428d2dc0703260920l5a8f8a40wfa2d521bed611278@mail.gmail.com> <430489A1-BBD1-4869-8302-E96BA053B320@uiuc.edu> Message-ID: <10E8650A-7DDA-4AAF-88D7-199F79A72156@uiuc.edu> yes of course, but it would be better to see why it isnt loading correctly, this shouldnt be happening. did you install cm using cvs? if so do a 'cvs update' inside the cm dir to update the runtime and see if that fixes it. if not then please send me a trace of the load sequence. On Mar 26, 2007, at 2:56 PM, Landspeedrecord wrote: > Thanks for the help Rick and James! Turns out that I had moved & > renamed my Clisp folder and the batch file was looking for the old > location. When I deleted the batch file and re-ran Common Music > from plain old Clisp a new batch file was created and now when I > run Common Music from Xemacs it launches fine. > > One question though... I am still getting an error about "gnu- > plot". Is there a way to force clisp/commonmusic to just skip that > part of the load? > \ From taube at uiuc.edu Mon Mar 26 15:14:07 2007 From: taube at uiuc.edu (Rick Taube) Date: Mon, 26 Mar 2007 17:14:07 -0500 Subject: [CM] Xemacs/CM error In-Reply-To: <4608222A.9060100@lebenspuls.de> References: <4608222A.9060100@lebenspuls.de> Message-ID: <57A4E4E1-E42D-45DE-8A94-9148566963ED@uiuc.edu> odd, I just tried clisp 2.41 (on macos) and cm builds fine and runs its tests so this must be some issue with the windows builds of clisp. On Mar 26, 2007, at 2:42 PM, Pieter Volger wrote: > I use CLisp 2.38; I had problems with newer versions of CLISP. From bil at ccrma.Stanford.EDU Mon Mar 26 15:27:55 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Mon, 26 Mar 2007 15:27:55 -0700 Subject: [CM] is this the greatest idea ever? Message-ID: <20070326222618.M66234@ccrma.Stanford.EDU> I knew if I typed long enough I'd hit upon something that would boggle the universe: the cairo version of Snd has a happy-face progress bar!! It's red and frowning at thhe start and turns yellow and smiling at the end. I can die happy. From taube at uiuc.edu Mon Mar 26 17:35:15 2007 From: taube at uiuc.edu (Rick Taube) Date: Mon, 26 Mar 2007 19:35:15 -0500 Subject: [CM] is this the greatest idea ever? In-Reply-To: <20070326222618.M66234@ccrma.Stanford.EDU> References: <20070326222618.M66234@ccrma.Stanford.EDU> Message-ID: yes indeed youve really pushed the graphics world forward bil! better run to the patent office or stanford will claim all the millions. On Mar 26, 2007, at 5:27 PM, Bill Schottstaedt wrote: > It's red and frowning at thhe start and turns > yellow and smiling at the end. I can die happy. From b0ef at esben-stien.name Tue Mar 27 11:10:35 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Tue, 27 Mar 2007 20:10:35 +0200 Subject: [CM] X Marks the Spot Message-ID: <87ircmd0bo.fsf@esben-stien.name> Lets say I make two marks, called mark1 and mark2. Now I want to make two other marks: mark0 and mark3. mark0=mark1-(mark2-mark1) mark3=mark2+(mark2-mark1) I'm trying to look at the marks.scm code, but I'm really stuck;). Are there more code examples of using marks?. Any pointers how to proceed?. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From bil at ccrma.Stanford.EDU Tue Mar 27 10:23:05 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Tue, 27 Mar 2007 10:23:05 -0700 Subject: [CM] X Marks the Spot In-Reply-To: <87ircmd0bo.fsf@esben-stien.name> References: <87ircmd0bo.fsf@esben-stien.name> Message-ID: <20070327172133.M80708@ccrma.Stanford.EDU> add-mark makes a new mark and the mark's current position is mark-sample. There are lots of examples in marks.scm. From b0ef at esben-stien.name Tue Mar 27 15:11:53 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Wed, 28 Mar 2007 00:11:53 +0200 Subject: [CM] X Marks the Spot In-Reply-To: <20070327172133.M80708@ccrma.Stanford.EDU> (Bill Schottstaedt's message of "Tue, 27 Mar 2007 10:23:05 -0700") References: <87ircmd0bo.fsf@esben-stien.name> <20070327172133.M80708@ccrma.Stanford.EDU> Message-ID: <87abxyibfa.fsf@esben-stien.name> "Bill Schottstaedt" writes: > There are lots of examples in marks.scm. Yeah, trying;). I do: (define m1 (add-mark 10000 0 0 "two")) (set! (mark-sample m1) 356200) (define m2 (add-mark 427100 0 0 "three")) (define m3 (add-mark (+ m2 (- m2 m1)) 0 0 "three")) , but somehow this new m3 ends up at the beginning of the buffer. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From landspeedrecord at gmail.com Tue Mar 27 13:41:42 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Tue, 27 Mar 2007 16:41:42 -0400 Subject: [CM] Xemacs/CM error In-Reply-To: <57A4E4E1-E42D-45DE-8A94-9148566963ED@uiuc.edu> References: <4608222A.9060100@lebenspuls.de> <57A4E4E1-E42D-45DE-8A94-9148566963ED@uiuc.edu> Message-ID: Evidently GNUPLOT needs to be seperately installed on a MS PC. Any other other XP users encounter this error? Here is a quote from Rob Thorpe on comp.lang.lisp: "GNUPLOT is a separate program for graph-plotting it has been ported to Windows but would have to be installed separately." There are binaries available for Windows/XP but unfortunately no installer. The readme makes some vague references about setting up an environment variable but doesn't explain how to do it. So I guess my question is "Can Common Music use the GNUPLOT binaries? If so, how do I get common music to see the gnuplot binaries? If not, how do I get Common Music to skip over GNUPLOT completely so I don't get errors every time I load Common Music?" Here is the error I get as Common Music is loading up and tries to load GNUPLOT: ; Loading "bin\\clisp_2.41_windows-i686\\io.fas" ; Loading "bin\\clisp_2.41_windows-i686\\scheduler.fas" ; Loading "bin\\clisp_2.41_windows-i686\\gnuplot.fas" *** - FIND-CLASS: GNUPLOT-FILE does not name a class The following restarts are available: SKIP :R1 skip 30 32 (DEFMETHOD CLOSE-IO :AFTER ...)-6 STOP :R2 stop loading file C:\cygwin\lisp\cm\bin\clisp_2.41_windows-i686\gnuplot.fas RETRY :R3 Retry performing # on #. ACCEPT :R4 Continue, treating # on # as having been successful. SKIP :R5 skip (USE-SYSTEM CM) STOP :R6 stop loading file C:\cygwin\lisp\cm\src\cm.lisp ABORT :R7 ABORT ABORT :R8 ABORT ABORT :R9 ABORT ABORT :R10 ABORT ABORT :R11 ABORT On 3/26/07, Rick Taube wrote: > > odd, I just tried clisp 2.41 (on macos) and cm builds fine and runs > its tests so this must be some issue with the windows builds of clisp. > > On Mar 26, 2007, at 2:42 PM, Pieter Volger wrote: > > > I use CLisp 2.38; I had problems with newer versions of CLISP. > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist > -------------- next part -------------- An HTML attachment was scrubbed... URL: From vze26m98 at optonline.net Tue Mar 27 14:26:33 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Tue, 27 Mar 2007 17:26:33 -0400 Subject: [CM] mouse-drag-hook in FTH? Message-ID: Hi all- From bil at ccrma.Stanford.EDU Tue Mar 27 14:26:59 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Tue, 27 Mar 2007 14:26:59 -0700 Subject: [CM] X Marks the Spot In-Reply-To: <87abxyibfa.fsf@esben-stien.name> References: <87ircmd0bo.fsf@esben-stien.name> <20070327172133.M80708@ccrma.Stanford.EDU> <87abxyibfa.fsf@esben-stien.name> Message-ID: <20070327212526.M37920@ccrma.Stanford.EDU> "m1" and "m2" are the mark identifiers -- small integers -- you want something like (+ (mark-sample m2) (- (mark-sample m2) (mark-sample m1)) and so on. From bil at ccrma.Stanford.EDU Tue Mar 27 14:38:43 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Tue, 27 Mar 2007 14:38:43 -0700 Subject: [CM] mouse-drag-hook in FTH? In-Reply-To: References: Message-ID: <20070327213534.M16125@ccrma.Stanford.EDU> mouse-drag-hook is called only if you drag the mouse in the "lisp graph" -- a confusing name now that it isn't specific to scheme -- that's the 3rd graph on the right (if you're doing your own displays or envelope handlers). You can get the same effect if you have either xg or xm loaded by adding your own callback function for that on the graph widget (I'm actually guessing here, but it seems unproblematic). From b0ef at esben-stien.name Tue Mar 27 16:31:49 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Wed, 28 Mar 2007 01:31:49 +0200 Subject: [CM] X Marks the Spot In-Reply-To: <87abxyibfa.fsf@esben-stien.name> (Esben Stien's message of "Wed, 28 Mar 2007 00:11:53 +0200") References: <87ircmd0bo.fsf@esben-stien.name> <20070327172133.M80708@ccrma.Stanford.EDU> <87abxyibfa.fsf@esben-stien.name> Message-ID: <874po6i7q2.fsf@esben-stien.name> Esben Stien writes: > Yeah, trying;). Right, got it;). (define m10 (add-mark (+ (mark-sample m5) (- (mark-sample m5) (mark-sample m2))) 0 0 "holy-smoke")) -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Tue Mar 27 16:34:38 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Wed, 28 Mar 2007 01:34:38 +0200 Subject: [CM] X Marks the Spot In-Reply-To: <20070327212526.M37920@ccrma.Stanford.EDU> (Bill Schottstaedt's message of "Tue, 27 Mar 2007 14:26:59 -0700") References: <87ircmd0bo.fsf@esben-stien.name> <20070327172133.M80708@ccrma.Stanford.EDU> <87abxyibfa.fsf@esben-stien.name> <20070327212526.M37920@ccrma.Stanford.EDU> Message-ID: <87zm5ygt0x.fsf@esben-stien.name> "Bill Schottstaedt" writes: > you want something like (+ (mark-sample m2) (- (mark-sample m2) > (mark-sample m1)) Damn, you beat me to it;). Thanks;) -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From b0ef at esben-stien.name Tue Mar 27 16:40:49 2007 From: b0ef at esben-stien.name (Esben Stien) Date: Wed, 28 Mar 2007 01:40:49 +0200 Subject: [CM] Loop Between Marks (Snd-8.10) Message-ID: <87vegmgsqm.fsf@esben-stien.name> Trying to use play.scm and the loop-between-marks function, but it just returns 0 or segfaults. >(load "/home/b0ef/.pkg/snd-CVS-20070327/cvs-snd/play.scm") # >(loop-between-marks m6 m5 2048) 0 >(loop-between-marks m6 m3 2048) Caught seg fault (will try to continue): It does not continue, though. I have to restart Snd. The m3 and m5 marks comes after the m6 mark, so I'm not trying to loop backwards;). I guess it's supposed to loop when I evaluate this function?. -- Esben Stien is b0ef at e s a http://www. s t n m irc://irc. b - i . e/%23contact sip:b0ef@ e e jid:b0ef@ n n From taube at uiuc.edu Tue Mar 27 14:52:35 2007 From: taube at uiuc.edu (Rick Taube) Date: Tue, 27 Mar 2007 16:52:35 -0500 Subject: [CM] Xemacs/CM error In-Reply-To: References: <4608222A.9060100@lebenspuls.de> <57A4E4E1-E42D-45DE-8A94-9148566963ED@uiuc.edu> Message-ID: > Here is the error I get as Common Music is loading up and tries to > load GNUPLOT: > ; Loading "bin\\clisp_2.41_windows-i686\\io.fas" > ; Loading "bin\\clisp_2.41_windows-i686\\scheduler.fas" > ; Loading "bin\\clisp_2.41_windows-i686\\gnuplot.fas" > *** - FIND-CLASS: GNUPLOT-FILE does not name a class the symbol 'gnuplot-file' does not appear in gnuplot.lisp at all so i have no idea what this error is being caused by. i would throw out your current .fas files -- just delete the cm/bin/ clisp_2.41_windows-i686 directory with everything in it -- and also delete the src/gnuplot.lisp file so it will be regenerated when cm starts next. then send me that trace if it bombs again. From scholz-micha at gmx.de Tue Mar 27 16:09:15 2007 From: scholz-micha at gmx.de (Michael Scholz) Date: Wed, 28 Mar 2007 01:09:15 +0200 Subject: [CM] mouse-drag-hook in FTH? In-Reply-To: (Charles Turner's message of "Tue\, 27 Mar 2007 17\:26\:33 -0400") References: Message-ID: <86slbqb7xg.fsf@Lerche.Socrates> Hi, Charles! The local variable AXIS isn't part of mouse-drag-hook. You can change the example like this: mouse-drag-hook lambda: <{ snd chn button state x y -- }> $" x: %s y: %s" '( x y ) string-format snd #f report-in-minibuffer ; add-hook! Then `#t set-lisp-graph?' and you see in the minibuffer what you expect (I hope). X and Y are floats, I think. You can change the format string to $" x: %.4f y: %.4f" or what ever. Mike From vze26m98 at optonline.net Tue Mar 27 17:37:43 2007 From: vze26m98 at optonline.net (Charles Turner) Date: Tue, 27 Mar 2007 20:37:43 -0400 Subject: [CM] realloc() for VCTs? Message-ID: Greetings- Sorry for the un-scheme-like reference to C, but is there such a thing? I'm doing this: $" test.aifc" :channels 1 :size 1000 new-sound variable foo 0 0 make-graph-data foo ! foo @ lambda: <{ }> 0.5 ; vct-map! foo @ vct->channel But I'd like to do something more complex than vct-map!, and it's likely that I wouldn't know (or it'd be pointless to pre-compute) the exact size of the VCT I would need. So how would I "grow" the VCT, or is there a better way to approach this? I would likely always be reading and writing sequential samples... Best and thanks! Charles From bil at ccrma.Stanford.EDU Wed Mar 28 04:06:22 2007 From: bil at ccrma.Stanford.EDU (Bill Schottstaedt) Date: Wed, 28 Mar 2007 04:06:22 -0700 Subject: [CM] realloc() for VCTs? In-Reply-To: References: Message-ID: <20070328110226.M56306@ccrma.Stanford.EDU> > But I'd like to do something more complex than vct-map!, and it's likely > that I wouldn't know (or it'd be pointless to pre-compute) the exact > size of the VCT I would need. vct-map! is just a loop using vct-ref and vct-set! to fill the vct -- you can obviously use these yourself to do anything you want with the vct -- there are lots of examples in examp.fs, etc. If you don't know the size in advance, you can do block processing, or make a big vct and use a part of it, or allocate a new vct whenever you need to -- the GC is supposed to be your friend. For vct->channel there's the "dur" argument that sets how much of the vct is used. From taube at uiuc.edu Thu Mar 29 06:37:55 2007 From: taube at uiuc.edu (Rick Taube) Date: Thu, 29 Mar 2007 08:37:55 -0500 Subject: [CM] (keynum :through) and (note :through) bug? In-Reply-To: References: Message-ID: joshua -- apologies for the delay in this reply but i havent had much time to stare at code lately. the behavior you encountered isnt a bug but it also isnt much of a feature, its due to a 'floor' like search of the mode's legal steps. i could change that behavior but that would break existing behavior. perhaps i could add a :nearest keyword that would look for the nearest (rather than the lower) step (?) so you would write: (note 67 :nearest mymod) of course if its equidistant to a step above AND below then it still might not return the one you want, so ill have to think about how best to do this. On Mar 23, 2007, at 5:29 PM, Joshua Parmenter wrote: > Hi all... > > This doesn't seem like the expected behavior. Is this right? And if > it is, does anyone know a way to get the values I'm expecting? > > (defvar mymode) > (setq mymode (new mode :degrees '(c df ef f gs a b c))) > (note 67 :through mymode); => F ??? shouldn't it be GS? > (note 67.5 :through mymode) ;=> AF ??? > (keynum 67 :through mymode); => 65 ??? shouldn't it be 68? > (keynum 67.4 :through mymode) ;=> 65 !!! > (keynum 67.5 :through mymode) ;=> 68 !!! > > Thanks for any help. > > Josh > > ****************************************** > Joshua Parmenter > University of Washington > Center for Digital Arts and Experimental Media > School of Music > Seattle, Washington 98195 > > http://www.realizedsound.net/josh/ > http://www.dxarts.washington.edu > > > From joshp at u.washington.edu Thu Mar 29 06:44:22 2007 From: joshp at u.washington.edu (Joshua Parmenter) Date: Thu, 29 Mar 2007 06:44:22 -0700 Subject: [CM] (keynum :through) and (note :through) bug? In-Reply-To: References: Message-ID: <267B5650-561E-49D2-A988-78F1092358BB@u.washington.edu> Hi Rick, Thanks for looking at it. :nearest would be nice, and as far as equidistant decisions, I imagine a short warning in the doc would be fine. I usually use the function with floats anyways, so I don't imagine that happening very often. It would probably also be good to change the docs on note and keynum, since 'closest' is used quite a bit. This implied to me a round somewhere in the function rather then floor... Thanks again for looking at it. And if you decide to add it to CVS, please let me know. Best, Josh On Mar 29, 2007, at 6:37 AM, Rick Taube wrote: > joshua -- apologies for the delay in this reply but i havent had > much time to stare at code lately. the behavior you encountered > isnt a bug but it also isnt much of a feature, its due to a 'floor' > like search of the mode's legal steps. i could change that behavior > but that would break existing behavior. > > perhaps i could add a :nearest keyword that would look for the > nearest (rather than the lower) step (?) so you would write: > > (note 67 :nearest mymod) > > of course if its equidistant to a step above AND below then it > still might not return the one you want, so ill have to think about > how best to do this. > > On Mar 23, 2007, at 5:29 PM, Joshua Parmenter wrote: > >> Hi all... >> >> This doesn't seem like the expected behavior. Is this right? And >> if it is, does anyone know a way to get the values I'm expecting? >> >> (defvar mymode) >> (setq mymode (new mode :degrees '(c df ef f gs a b c))) >> (note 67 :through mymode); => F ??? shouldn't it be GS? >> (note 67.5 :through mymode) ;=> AF ??? >> (keynum 67 :through mymode); => 65 ??? shouldn't it be 68? >> (keynum 67.4 :through mymode) ;=> 65 !!! >> (keynum 67.5 :through mymode) ;=> 68 !!! >> >> Thanks for any help. >> >> Josh >> >> ****************************************** >> Joshua Parmenter >> University of Washington >> Center for Digital Arts and Experimental Media >> School of Music >> Seattle, Washington 98195 >> >> http://www.realizedsound.net/josh/ >> http://www.dxarts.washington.edu >> >> >> > ****************************************** Joshua Parmenter University of Washington Center for Digital Arts and Experimental Media School of Music Seattle, Washington 98195 http://www.realizedsound.net/josh/ http://www.dxarts.washington.edu From taube at uiuc.edu Thu Mar 29 07:07:03 2007 From: taube at uiuc.edu (Rick Taube) Date: Thu, 29 Mar 2007 09:07:03 -0500 Subject: [CM] (keynum :through) and (note :through) bug? In-Reply-To: <267B5650-561E-49D2-A988-78F1092358BB@u.washington.edu> References: <267B5650-561E-49D2-A988-78F1092358BB@u.washington.edu> Message-ID: yes you are correct as i look at the docs they imply the behavior you expected! so im not sure which is the bug: the doc or the code. arrgh! On Mar 29, 2007, at 8:44 AM, Joshua Parmenter wrote: > Hi Rick, > > Thanks for looking at it. :nearest would be nice, and as far as > equidistant decisions, I imagine a short warning in the doc would > be fine. I usually use the function with floats anyways, so I don't > imagine that happening very often. It would probably also be good > to change the docs on note and keynum, since 'closest' is used > quite a bit. This implied to me a round somewhere in the function > rather then floor... > > Thanks again for looking at it. And if you decide to add it to CVS, > please let me know. > > Best, > > Josh > > On Mar 29, 2007, at 6:37 AM, Rick Taube wrote: > >> joshua -- apologies for the delay in this reply but i havent had >> much time to stare at code lately. the behavior you encountered >> isnt a bug but it also isnt much of a feature, its due to a >> 'floor' like search of the mode's legal steps. i could change that >> behavior but that would break existing behavior. >> >> perhaps i could add a :nearest keyword that would look for the >> nearest (rather than the lower) step (?) so you would write: >> >> (note 67 :nearest mymod) >> >> of course if its equidistant to a step above AND below then it >> still might not return the one you want, so ill have to think >> about how best to do this. >> >> On Mar 23, 2007, at 5:29 PM, Joshua Parmenter wrote: >> >>> Hi all... >>> >>> This doesn't seem like the expected behavior. Is this right? And >>> if it is, does anyone know a way to get the values I'm expecting? >>> >>> (defvar mymode) >>> (setq mymode (new mode :degrees '(c df ef f gs a b c))) >>> (note 67 :through mymode); => F ??? shouldn't it be GS? >>> (note 67.5 :through mymode) ;=> AF ??? >>> (keynum 67 :through mymode); => 65 ??? shouldn't it be 68? >>> (keynum 67.4 :through mymode) ;=> 65 !!! >>> (keynum 67.5 :through mymode) ;=> 68 !!! >>> >>> Thanks for any help. >>> >>> Josh >>> >>> ****************************************** >>> Joshua Parmenter >>> University of Washington >>> Center for Digital Arts and Experimental Media >>> School of Music >>> Seattle, Washington 98195 >>> >>> http://www.realizedsound.net/josh/ >>> http://www.dxarts.washington.edu >>> >>> >>> >> > > ****************************************** > Joshua Parmenter > University of Washington > Center for Digital Arts and Experimental Media > School of Music > Seattle, Washington 98195 > > http://www.realizedsound.net/josh/ > http://www.dxarts.washington.edu > > > > _______________________________________________ > Cmdist mailing list > Cmdist at ccrma.stanford.edu > http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist From landspeedrecord at gmail.com Thu Mar 29 17:39:15 2007 From: landspeedrecord at gmail.com (Landspeedrecord) Date: Thu, 29 Mar 2007 20:39:15 -0400 Subject: [CM] Xemacs/CM error In-Reply-To: References: <4608222A.9060100@lebenspuls.de> <57A4E4E1-E42D-45DE-8A94-9148566963ED@uiuc.edu> Message-ID: Well I found out what the problem with GNUPLOAT was... and pretty much all the other problems I have had since I first started... I was using cm-2.4.2. Once I downloaded 2.10 everything works fine (for the most part). I followed this link on the Stanford Common Music "Installing Common Music" page: ftp://ftp-ccrma.stanford.edu/pub/Lisp/cm/sources/ and I naturally downloaded the source that says "cm-latetest.tar.gz". Which is cm 2.4.2 unfortunately for me. Hopefully someone will remove the link entirely and only leave the one pointing to the Sourceforge page or update the tarballs on the Stanford page. This has been a very frustrating experience and I would hate for anyone else to make the same mistake I did. Here is the text on the install page so you can see why I did what I did and why it led me to wind up using an out of date version of Common Music: Installing from FTP Download the latest CM source archive (cm-latest.tar.gz) from either: 1) Sourceforge Common Music Project 2) ftp://ftp-ccrma.stanford.edu/pub/Lisp/cm/sources Restore the archive in an appropriate directory on your machine: Anyway... Thanks to all who have helped me troubleshoot my problems... I have some new ones now which I will post about in a seperate email. On 3/27/07, Rick Taube wrote: > > Here is the error I get as Common Music is loading up and tries to > > load GNUPLOT: > > ; Loading "bin\\clisp_2.41_windows-i686\\io.fas" > > ; Loading "bin\\clisp_2.41_windows-i686\\scheduler.fas" > > ; Loading "bin\\clisp_2.41_windows-i686\\gnuplot.fas" > > *** - FIND-CLASS: GNUPLOT-FILE does not name a class > > the symbol 'gnuplot-file' does not appear in gnuplot.lisp at all so i > have no idea what this error is being caused by. > i would throw out your current .fas files -- just delete the cm/bin/ > clisp_2.41_windows-i686 directory with everything in it -- and also > delete the src/gnuplot.lisp file so it will be regenerated when cm > starts next. then send me that trace if it bombs again. > > > From taube at uiuc.edu Fri Mar 30 07:02:38 2007 From: taube at uiuc.edu (Rick Taube) Date: Fri, 30 Mar 2007 09:02:38 -0500 Subject: [CM] RTS improvements for SBCL/Linux Message-ID: <97FA9819-C4DC-49D2-AB01-5C872FF9A5BB@uiuc.edu> thanks to david psenicka cm's real time scheduler now runs more reliably in SBCL/Linux . the main change is that the rts thread is now created by sbcl via a callback from c. rts now coexists amicably with (other) sbcl threads and multiple sbcl threads can now sprout to rts at the same time. its also now possible to use rr and fifo scheduling policy without segfaulting. david also twiddled the config/ make process for linux so it should build ootb more reliably. rts timing in sbcl is pretty good -- not quite as good as on openmcl/ darwin but certainly very usable! here is a pdf of a 12000 note stress test running a musical process every 50 ms, just a few +-15ms spikes. http://pinhead.music.uiuc.edu/~hkt/rtstest/sbcl-rr.pdf From herbstmondwind at web.de Sat Mar 31 10:57:11 2007 From: herbstmondwind at web.de (daniel mayer) Date: Sat, 31 Mar 2007 19:57:11 +0200 Subject: [CM] CM + SC rts Message-ID: <32368932.1175363833103.JavaMail.fmail@fmcert01.dlan.cinetic.de> Hi, the CM-SC bridge is very fine! Big Thanks to Rick and Todd! Would it be possible to combine CM control of MIDI output and SC realtime (or near realtime)? An example with two processes independently running: OSX, Midishare connected with Quicktime GM or whatever, Running SuperCollider, local server booted SC synthdefs from CM example file "sc-synths.sc" in cm/etc/examples loaded Starting CM application 2.10.0 (in-package :cm) (use-system :rts) (use-system :osc) (use-system :midishare) (midishare-open) (define *sc* (sc-open)) (rts *sc*) (defobject simple (scsynth) ((freq :initform 440) (dur :initform 1) (amp :initform .2) (pan :initform 0)) (:parameters freq dur amp pan time)) (define (midi-simple num dur lb-key ub-key amp) (process repeat num output (new midi :time (now) :duration dur :keynum (between lb-key ub-key) :amplitude amp) wait dur)) (define (sc-simple num dur lb-freq ub-freq amp) (process repeat num output (new simple :time (now) :dur dur :freq (between lb-freq ub-freq) :amp amp :pan (pick 0 1 -1)) wait dur)) ;;; NRTS + RTS: (progn (events (midi-simple 80 0.2 30 50 0.5) "midi-port.ms") (sprout (sc-simple 80 0.2 500 1500 0.1))) To exchange information between the two actions: Is there a possibility to define them in one process? Is double RTS (MIDI + SC stream) possible or necessary for this? SC in NRT mode means writing an OSC file (and then writing an audio file), but is there a possibility of double NRTS: streaming MIDI + OSC output with a little latency? Would also be fine, thanks for any hint. Best Daniel Mayer _______________________________________________________________ SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 1762 bytes Desc: S/MIME Cryptographic Signature URL: From taube at uiuc.edu Sat Mar 31 14:38:31 2007 From: taube at uiuc.edu (Rick Taube) Date: Sat, 31 Mar 2007 16:38:31 -0500 Subject: [CM] CM + SC rts In-Reply-To: <32368932.1175363833103.JavaMail.fmail@fmcert01.dlan.cinetic.de> References: <32368932.1175363833103.JavaMail.fmail@fmcert01.dlan.cinetic.de> Message-ID: > > Would it be possible to combine CM control of MIDI output and SC > realtime (or near realtime)? > > (progn > (events (midi-simple 80 0.2 30 50 0.5) "midi-port.ms") > (sprout (sc-simple 80 0.2 500 1500 0.1))) > > To exchange information between the two actions: > Is there a possibility to define them in one process? yes, but dont mix (events) with (rts). Assuming you have the connection streams in variables, ie: (setq *sc* (sc-open)) (setq *qt* (midishare-open)) then you can have one process write to whatever rt streams you have open using output's 'to' option: (defun multi-fun () (process ... OUTPUT (new midi ...) TO *qt* OUTPUT (new sc-simple ...) TO *sc* ...)) that is, process dont care about what streams are open, oly output does. also, if you are using more than one stream its pribably best to open rts with NO default streeam and then handle the streams yourself using code like above (rts NIL) > Is double RTS (MIDI + SC stream) possible or necessary for this? > SC in NRT mode means writing an OSC file (and then writing an audio > file), > but is there a possibility of double NRTS: > streaming MIDI + OSC output with a little latency? > Would also be fine, thanks for any hint. sorry not sure what you are asking here, but you should be able to open up multiple realtime streams (sc, portmidi, midihare etc) and then have one process write to one or all of them. From registrationalias at verizon.net Sat Mar 31 15:59:16 2007 From: registrationalias at verizon.net (registrationalias) Date: Sat, 31 Mar 2007 18:59:16 -0400 Subject: [CM] Default MIDI player in Common Music Message-ID: <001a01c773e8$35b5c3e0$0200a8c0@7u0dbkzl1q1a3nt> Hello, just wondering how to switch the default MIDI player in Common Music... -------------- next part -------------- An HTML attachment was scrubbed... URL: From taube at uiuc.edu Sat Mar 31 16:45:34 2007 From: taube at uiuc.edu (Rick Taube) Date: Sat, 31 Mar 2007 18:45:34 -0500 Subject: [CM] Default MIDI player in Common Music In-Reply-To: <001a01c773e8$35b5c3e0$0200a8c0@7u0dbkzl1q1a3nt> References: <001a01c773e8$35b5c3e0$0200a8c0@7u0dbkzl1q1a3nt> Message-ID: <5628C68A-021F-4D49-952A-8E2C11A9C044@uiuc.edu> in recent versions of cm the *midi-player* variable holds the (string) command cm will use to play a .mid file. so you can reset this in the repl: (setf *midi-player* "/path/to/my/midiplayer") or add it to a personal ~/.cminit.lisp file for autoloading at startup. On Mar 31, 2007, at 5:59 PM, registrationalias wrote: > Hello, just wondering how to switch the default MIDI player in > Common Music... > From herbstmondwind at web.de Sat Mar 31 17:07:44 2007 From: herbstmondwind at web.de (herbstmondwind at web.de) Date: Sun, 01 Apr 2007 02:07:44 +0200 Subject: [CM] CM + SC rts Message-ID: <1605832.1175386065429.JavaMail.fmail@fmcert02.dlan.cinetic.de> > -----Urspr?ngliche Nachricht----- > Von: Rick Taube > Gesendet: 31.03.07 23:38:49 > An: daniel mayer > CC: cmdist at ccrma.Stanford.EDU > Betreff: Re: [CM] CM + SC rts > > > > Would it be possible to combine CM control of MIDI output and SC > > realtime (or near realtime)? > > > > (progn > > (events (midi-simple 80 0.2 30 50 0.5) "midi-port.ms") > > (sprout (sc-simple 80 0.2 500 1500 0.1))) > > > > To exchange information between the two actions: > > Is there a possibility to define them in one process? > > yes, but dont mix (events) with (rts). > Assuming you have the connection streams in variables, ie: > > (setq *sc* (sc-open)) > (setq *qt* (midishare-open)) > > then you can have one process write to whatever rt streams you have > open using output's 'to' option: > > (defun multi-fun () > (process ... > OUTPUT (new midi ...) TO *qt* > OUTPUT (new sc-simple ...) TO *sc* > ...)) > > that is, process dont care about what streams are open, oly output does. > > also, if you are using more than one stream its pribably best to open > rts with NO default streeam and then handle the streams yourself > using code like above > > (rts NIL) > > That's the point! I just didn't see how to mean both streams with rts ... > > Is double RTS (MIDI + SC stream) possible or necessary for this? > > SC in NRT mode means writing an OSC file (and then writing an audio > > file), > > but is there a possibility of double NRTS: > > streaming MIDI + OSC output with a little latency? > > Would also be fine, thanks for any hint. > > sorry not sure what you are asking here, but you should be able to > open up multiple realtime streams (sc, portmidi, midihare etc) and > then have one process write to one or all of them. > In the docs it's said that rather low level midi objects should be used in real time mode, so i thought that - in order to define all in one process with midi objects - i would have to use (events) and therefore wouldn't have simultanous output, as then OSC output would be written to a file. But if all works in realtime mode, it doesn't matter anyway. Thanks, Daniel _______________________________________________________________ SMS schreiben mit WEB.DE FreeMail - einfach, schnell und kostenguenstig. Jetzt gleich testen! http://f.web.de/?mc=021192 -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 1762 bytes Desc: S/MIME Cryptographic Signature URL: