Snd 11.3:
The old functional form of show-listener no longer works:
change (show-listener) to (set! (show-listener) #t).
in CLM, mus-file-probe et al changed to get bools working across the FFI,
(that is, mus-file-probe now returns either T or NIL, not 1 or 0),
and
Snd 11.2
added portaudio (version 19) support.
s7: hash-table-for-each.
added tools/sam.c: a Samson box emulator!
some of the more useful extensions were moved to C:
make-current-window-display (draw.*) as with-inset-graph.
focus-follows-mouse as with-pointer-focus.
peak-env support,
i've been able to play popi.clm
that makes me smile... I wrote the popeye fugue as a joke
in 1972 when a friend claimed it was impossible.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
setting --includedir to /sw/include in configure was silently ignored
you probably meant --with-motif-prefix=/sw, as in README.Snd. The configure
script needs to find both the headers and the motif library.
Major opcode of failed request: 45 (X_OpenFont)
I guess it can't find a font.
Are you using Gtk or Motif? Could you send whatever
./snd --version
prints? By no response, you mean that nothing happens in the
text widget -- no new prompt, no cursor movement?
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
But ... AMS seems to broken.
is this the modular synthesizer in planetccrma? If so, you've
got the wrong mailing list.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
In the s-7 documentation, it says that a hash-table is a vector of
alists and can be iterated over by vector-ref.
oops -- thanks for pointing this out. Now I can't decide whether to
re-enable vector-ref of a hash-table or provide hash-table-for-each --
any strong opinions?
Speed-wise, how does referencing a hash table compare with using (assoc x y)
as I am above. Is it also just hashed values?
For a small case, there's not much difference, but eventually the
hash table wins because it can find the desired element without
searching through a long list.
If
I have removed support for Guile from Snd, sndlib, libxm.
The short reason: irreconcilable differences? I put a longer
rationalization in grfsnd.html in the guile section. I'm
still finding forgotten corners, so this process may take a
few days to settle.
I added hash-table-for-each to s7.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
The warning you mention would not be a problem -- are there any
error messages in the printout? If it's not a hassle, please send
me the messages.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
Snd 11.1
many more ruby/forth improvements thanks to Mike.
*trace-hook* in s7. Also defmacro* and define-macro*. make-list.
force and delay are now included in s7 only if WITH_FORCE is defined.
The slib implementation is used. The promise? function has been removed.
I used make-promise
SNDLIB: Unable to set SCHED_RR realtime priority for the player thread.
This is from the Jack portion of audio.c. My guess is that after
this error, the output ports aren't opened, so you get the other
error, but Kjetil is the expert.
While im at it, how can i run snd in gdb, and get
xg.c is probably not what you want to change. I looked at
http://directfb.org/wiki/index.php/Projects:GTK_on_DirectFB
and it looks like you need only fix some includes and the
loader/compiler flags in the makefile. If I can find time
(probably not today), I'll look into it.
I tracked it down to samples whose value is 1.0
Probably the DAC is using a data format in which 1.0 becomes -1.0,
giving a click. In with-sound, values of 1.0 are normally reset to
0.9 (if clipping is on) to avoid these clicks.
___
Cmdist
I guess we can avoid using clm-print
clm-print goes through cmus.c mus_error2clm (it seems like
it ought to be using mus_print, but maybe this is an historical
artifact), and that has some weird code surrounded by the
confidence-inspiring name SBCL_PPC_ERROR_KLUDGE.
I can't remember anything
I have tried (pushnew :big-endian *features*)
That should have fixed it -- did you make sure run.lisp was
recompiled afterwards? I'd start with a clean clm,
(pushnew :big-endian *features*)
then
(load all.lisp)
Could you send me the contents of the *features* list in this version
of sbcl?
error: end of input encountered while in a string: ... (load c:\
paint.scm)...
Perhaps you meant two backslashes? c:\\paint.scm. As it is
above, it looks like a quoted space or something -- I can imagine
trouble in this vicinity. (In Scheme, to get a backslash into a
string constant, you
Snd 11.0 (with much help from Mike Scholz):
regions, players, mixes, and marks are objects now, not ints
integer-region, region-integer, integer-mix and mix-integer,
integer-mark and mark-integer to convert old code
mix, mix-region, and mix-selection return a list of mixes
marks
The Snd tarball and CVS sources are in a state of flux.
I am making a series of backwards-incompatible changes,
so the new version is called Snd 11, but it won't be
finished for a few weeks.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
My old motif library no longer worked after upgrading to 10.6,
so in case anyone else has this problem, here's one path:
make sure you have XCode (you need to install it specially from the 10.6 disk).
I also had to get more RAM since the installer won't run if you have only
512 MBytes.
get
Snd 10.9
Kjetil improved the rt stuff.
added env.scm to sndlib (for jcvoi.scm).
optimization now defaults to 6.
show-backtrace removed.
s7: *error-info* for better error reporting.
vector-for-each, vector-map, string-for-each
generic map, for-each (for-each of vct for example)
added
[I] am wondering if the load-from-path 'jcrev is a copy paste problem?
I think it is -- will fix.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
snd_conffile.scm uses regions to copy/cut/paste selections.
Is there an alternative to regions for doing that?
Others also tell me that they use regions, so I'll leave them in.
I'm pleased all that work wasn't wasted!
(PS. Can't access http://ccrma.stanford.edu/software/snd/snd/snd.html
Does CLM run on the Mac OSX 10.5.7 ( Leopard)? If it does what flavor
of LISP is recommended for the OSX platform?
yes, it runs (I'm running 10.5.8 right now). I like both sbcl and clisp.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
ar: -ljack: No such file or directory
I think this is a bug in the sndlib makefile. The documentation
says ar ignores -l args, but now it seems to complain about them.
You can get the thing to build libsndlib.a by deleting the -l args
to the ar command. I'll fix the makefile -- thanks for the
Snd 10.8
Rick fixed the windows build process for sndlib; added sndlib.sln.
Kjetil and Mike made numerous improvements.
in s7, sound-data, frame, mixer objects are set-applicable (like vectors and
vcts).
Also strings, lists, and hash-tables are set-applicable. This has the somewhat
I added all the non-Snd-specific instrument files to the sndlib tarball:
analog-filter.scm|rb, animals.scm, bird.scm|rb|fsm, clm.fs,
clm-ins.scm|rb|fs,
dlocsig.scm|rb, fade.scm, freeverb.scm|rb, generators.scm, grani.scm,
jcrev.scm, jcvoi.scm,
maraca.scm|rb, maxf.scm|rb, moog.scm,
it looks like find-if is used in generators.scm
and it's defined there -- perhaps you have an old version of generators.scm?
I'm thinking of predefining a bunch of these CL-isms -- it's a bother
to have to worry about something as basic as find-if.
Should I include all the non-Snd-specific instrument files in the sndlib
tarball?
It seems unfortunate that you have to track two different packages.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
I've googled around and looked through clTl2 but I can't find a way
in Lisp (scheme) to get the current function name (from an embedded
macro, for example). Is there some (non-)standard way to do this?
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
(function-name #'*)
but that assumes you have the function object -- Kjetil's code
does what I want, but I was thinking surely some lisp has this --
I'll use their name.
(The context is a break macro for s7 which puts a continuation
at the current spot, then jumps to the REPL with the current
that reference takes me back a long ways! excl::arglist!! I'll have to
look up function-lambda-expression -- there's always another corner
of lisp that I've never heard of.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
How's this strike you: #__func__, #__arglist__, #__file__, #__line__,
all filled in at read time -- I think this thing almost has to be a
reader macro to work right.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
I think this thing almost has to be a reader macro to work right.
for file and line, perhaps, but, as an experiment, I've implemented it
as __func__ (a variable, defined only within a named closure; its
value is the symbol for the function being defined).
(define (hiho arg) (list arg
For some reason, this code strikes me as funny:
(let ((j (lambda () 0))
(k 0))
(do ((i (j) (j))
(j (lambda () 1) (lambda () (+ i 1
((= i 3) k)
(set! k (+ k i
would you believe 6? Maybe I need a vacation.
___
Segmentation fault
Is that how a program laughs?
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
That piano example seems to work both in linux and wine.
Can you get a stack trace, or some idea of where it is when it crashes?
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
floor argument 93.649190420188-93.649190420188i is a complex
Thanks for the bug report! With Rick's help, I got the windows cm
running in wine, and I think this bug is due to the lack of complex
number support in s7 + Visual C++ (we might be able to get around
that) coupled with a slightly
Here http://ccrma.stanford.edu/software/snd/snd/sndclm.html it is
said that one has to start Snd. But Snd I don't see in the whole
sndlib directory
oh come on... You're looking at the Snd documentation! What do you expect
it to say? sndlib has a CLM implementation; it can be
I guess sndlib's code base or filenames have changed
no, nothing has changed. It appears to be looking for stuff
like .\vct.c -- does that mean vct.c in the current directory?
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
or rather RootNamespace is sndlib so it's looking in the
snflib directory?
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
Oh, I didn't notice it was looking for snd.h!
c:\software\sndlib\audio.c(63) : fatal error C1083: Cannot open include
file: 'snd.h': No such file or
directory
I think this problem is that in linux and osx mus-config.h is created by the
configure script, and I have an update script that
Do you mean CM 3.2.4? CLM is in version 4 now, and has never used
that style of numbering.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
from now on im going to point to the june '09 archive
of cmdist!
They're also in README.sndlib.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
What do I need to do
Get a lisp, say sbcl or clisp, and all of the XCode stuff, then
untar clm in some directory, go to that directory,
sbcl
(load all.lisp)
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
Still hacking away...
(time (with-sound () (fm-violin 0 20 440 .1)))
sbcl:0.197
Snd+s7: 0.218
(time (with-sound (:reverb jc-reverb) (fm-violin 0 20 440 .1)))
sbcl: 0.433
Snd+s7: 0.425
(time (with-sound () (do ((i 0 (+ i 1))) ((= i 1)) (fm-violin (* i .001)
.01
440 .001
also in that regard, I've made some progress in speeding up the run macro:
fm-violin: 1071 694
expandn:1198 770
fullmix: 257 225
piano: 6964 3126
animals: 15034 11129
These are callgrind numbers (divided by a million, or maybe a billion).
Still many things to optimize...
Thanks! That's a cute icon, but I'm kind of partial to the current icon.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
would it be possible to have a way to convert a
(define-instrument ...) into .C source code string?
If you look at the benchmarks in README.clm, you can see that
the translation to C only speeds up with-sound by (at best) a
factor of 2 or 3; in some cases, there's nothing to choose
between
I changed piano.scm to use defgenerator, so it's now about 25
times faster.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
I just added it to sndlib-ws.scm, but haven't tried to use it.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
yes, clm can handle sound files and generate CD quality output.
To see if it's what you want, just play around with it. I believe
it is possible to generate both long and short notes.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
but the piano seems really slow
The optimizer is unhappy about the vector of closures -- if string1-stiffness
were a vector of clm generators instead, it would probably run at normal
speed. You can ask the run macro to tell you why it gives up by setting
the optimization-hook:
(add-hook!
How about the version that comes in the Ubuntu repository (snd 7.18)?
If it's like other such repositories, some ubuntu developer has to take
responsibility for it. I have no connection with ubuntu.
I've tried version 10-5 but the graphical interface didn't show up, either
with motif and
How about savannah?.
Hmmm. I don't need mailing lists, web sites, bug tracking, mirrors
And (it will sound very strange for me to say this but) I trust the Gnu
people even less than Google. I've never liked the freedom chant:
By choosing Savannah, you show that you value your freedom.
If
I hate sourceforge! Every time I try to update a version of Snd, they've
changed their crappy interface to something even more opaque, and
it takes me 30 minutes to figure out that download means add release
or whatever. And all that time, their disgusting advertising is running --
freshmeat is
What if CCRMA could host e.g. a Trac-site?
I don't know about Trac -- will check it out. Someone else
suggested Google Code.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
configured with configure --with-alsa and build
with make CC=g++.
This won't work. If you're going to use C++, you have to configure
it with C++. Use
make clean
configure --with-alsa CC=g++
make
___
Cmdist mailing list
make that Munch -- my memory is fading fast...
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
I was wondering if the static library is intentionally not built when
compiled with jack support, or if it is a bug which can be fixed.
yes and probably yes, but jack is not in my bailiwick. The configure
script uses jack's pkgconfig script, I think, so it is Jack that
inserts the -L
but building sndlib only creates 'libsndlib.a'
this problem was my fault -- the name should have been libsndlib.a
all along.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
I ran your script using the ambisonices ladpsa plugin on
a pretty big file (50 MBytes like yours, I think). You have
3 or 4 temp files for the src conversion, 4 or so for the
ambisonics output, then 6 for the channel swapping
while writing a 6 channel file at the end -- 10 or more
files, one
Is it possible you have the 'sync' button set (or the corresponding variable)?
src-sound follows it (meaning all channels in a sound are converted if it
is on) whereas src-channel does not. If src-channel doesn't help, send
me more context.
___
heh heh -- I can't resist reporting to cmdisters far and wide
that this mp stuff has already panned out -- in the nsin generator
if you run it with 10^33 sines you get the peak amp as
(/ (* 8 n (expt (sin (* pi 3/8)) 2)) (* 3 pi)) to about 50 decimal
places. I'm all smiles.
Snd 10.3
Kjetil made improvements to the rt stuff.
Michael Gogins, William Andrew Burnson, and Rick figured out how to
build sndlib in windows -- I hope I correctly incorporated their
changes in the configure script and various sources.
added multiprecision math support for all scheme
say in mingw sndlib gets all the way to linking, is there any hope here?
Is this related to the __declspec(dllexport) persiflage I see in some headers?
We could add a macro for it in all the sndlib headers.
___
Cmdist mailing list
Is there any workaround to avoid this quirky behavior?
(set! (auto-resize) #t) will help -- sort of the opposite of what you'd
expect. I think this happens only in the Motif version(?) and have
tried several times to fix it. I'll try again...
___
I made several changes to the update stuff, so it might even work
now, though it isn't exactly sedate about the process -- it jitters
and flinches and bobs and weaves and finally settles on a size
that is (as far as I can tell) the same as it was when it started.
people can add what they need on linux.
I think sndlib-config is fixed now:
/home/bil/test/sndlib/ ./sndlib-config --libs
-L/usr/lib -lm -L/usr/local/lib -lgsl -lgslcblas -lm -lm
but I don't know how that fits with premake. I borrowed this
style of config script from GSL. In that
i will need someone's help figuring out how to handle all the alsa jack etc
lib linking for cm
when sndlib builds, it creates the script sndlib-config which is supposed to
tell what load/compile flags are needed, but:
/home/bil/test/sndlib/ sndlib-config --libs
-L/usr/lib -lm -lm
which is
Snd 10.2
added osc.scm thanks to Kjetil.
many improvements thanks to Mike and Rick.
removed Gauche support.
moved the run macro from snd-run.c to run.c and put it in sndlib.
removed s7-format.scm -- format is now built-in.
removed s7-optargs.scm -- define* is also built-in. The main
How about just doing
extern C {
jack-code
}
instead ?
I believe audio.c still needs the casts, but I'm no C++ expert -- the
extern business is for the declarations in the header file.
Will check...
___
Cmdist mailing list
I also have Anders' code and vaguely remember working on it a long
time ago -- a good idea that got pushed so far down my queue that
it fell off. I now think the CLOS stuff was a mistake, but when I started,
it seemed like a natural approach. The other major problem is that
people doing notation
if bill will be able to get the
(run ) optimizer working in sndlib the clm calls will be fast.
I'll tackle it today (this is the 3rd big project I've promised to do today,
not counting voting --the more promises I make, the better the beach looks).
i am wondering if Snd does dithering when you save-sound-as with
different data-format (i.e. smaller wordlenght) ?
No. I personally do not believe in dithering, and it seems like a bad
idea in any case to change the data without being asked.
___
Bill, please include osc.scm in Snd if you want to.
ok -- thanks!
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
The bug is still there. sorry for the bad news... ;-/
Hmm -- I wonder if sox wrote a messed up wave file -- you
mentioned that the mp3 original was 570 MBytes, and you translated
it with sox. I tried a similar sequence and got a wave file with
bogus data sizes -- the truncation sent my chunk
Gauche support has been removed. If you were using gauche-optargs.scm
or gauche-format.scm, they are now named s7-optargs.scm and
s7-format.scm. 100 hours to write, 1 hour to erase.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
S7 is now the default extension language.
added rhypars.cms by Juan Reyes
in clm.c, I removed the reader/writer locks (rdin and rdout gens);
these were not working the way I had hoped they would. Much work
on threads -- with-threaded-sound has been rewritten 3 or 4 times.
gtkglext (openGL
Here's one way that is close to yours:
(let ((aacFile (new-sound (format #f ~a~a.~a outpath name 5.1.wav)
:channels 6
:header-type mus-riff
:data-format mus-l24int
:srate 44100 )))
;;
Snd 10.0
more rt/faust/stalin improvements from Kjetil.
moved sine-bank to snd9.scm
2 more generators in generators.scm (tanhsin, moving-spectrum)
tools/numtst.c which generates a Scheme numerics test suite
also tools/clisp-number|other-tests.scm (taken from Clisp)
A new extension language
with alas enabled on linux
Freudian slip?
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
I'm not sure what you're referring to in regard to the cursor -- Snd has
a bunch of cursors. The one in the graph marks a particular sample,
and if you move the view away from it, you won't see it. Each text
widget, including the listener has a cursor (or maybe two), and these
are displayed only
I don't know what the problem is -- I can't get any of those bugs to
happen in either gtk or motif.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
http://ccrma-mail.stanford.edu/mailman/listinfo/cmdist
I'm using Motif 2.2.4. I don't know what the status of Lesstif is --
for awhile I tried to support it, and someone (agnula?) said they
were going to work on it.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
This has come up before -- I think in the previous cases, it was
fixable by disabling the error check around line 7345 of audio.c --
either don't set err via AudioDeviceSetProperty or afterwards
set it to noErr.
___
Cmdist mailing list
that there is no way of resizing the channel panes ..
Indeed a bug, but I'd have to write my own paned window widget,
and I haven't yet found time to do it. A long time ago, someone
had the temerity to complain that the gtk paned window should
allow you to have more than 2 windows, and he got
Those button box dialogs are a bit quirky though, still not sure if
I'm keen on those ;)
you mean, for example, the view files dialog file list?
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
If you have libsamplerate, you could probably add its location
to LDFLAGS in the configure invocation; if you don't have it,
I think its home is http://www.mega-nerd.com/SRC/.
If you have it and the LDFLAGS trick fails, I could add
a prefix argument to the configure switch like
I was confused. I think this version of with-threaded-sound
works in Gauche:
(use gauche.threads)
(defmacro with-threaded-sound (args . body)
`(with-sound-helper
(lambda ()
(let ((all-threads '()))
,@(map (lambda (expr)
`(let ((thread (make-thread
Hey, that's very interesting... any tests in a multicore machine for
many notes spread into a few threads? Does this translate into linux
threads or is this internal to scheme?
I don't have a multicore machine, but I assume ccrma does?
I think it does translate into linux threads -- gdb
[...] is probably a better tool for this, since it
has some very efficient oscillator generators...
or try the new chebyshev stuff -- I bet it's as fast
as any other method (a multiply and 2 adds per partial);
there's an example in sndclm.html that uses polywave.
Snd 9.10
real-time/stalin support thanks to Kjetil.
new version of autoc.ins thanks to Bret Battey
more Forth-related improvements thanks to Mike.
more jack-related changes thanks to Kjetil.
7 more generators in generators.scm, moved green.scm to generators.scm,
moving moving-* from dsp.scm
I set my load path to /usr/share/snd which is where all the default
scm files are, but i keep getting.
primitive-load-path: misc-error: Unable to find file extensions.scm in
load path
I find this annoying too, but it's Guile's choice -- you need to
use load-from-path rather than load if
I installed from Debian's repository, and it seems to use Alt-*key*
That M-key notation is borrowed from emacs, and goes back to the
days when there were keys marked Meta, Super, Hyper, etc.
On my Mac, it's actually the Esc key, which is very inconvenient.
I'm sure there's a way to use option
my friend Stephane, music teacher, needs symbols to write
scores from late XVe (1450-..): brevis, semi-brevis, maxima, etc.
Is there a way to do that in CMN ?
Not without some effort. You'd need to write the postscript-like
code to draw those symbols -- it's not too hard, if I remember
In the cmn package,
(trace output-file)
should show you what file cmn thinks it is writing. The Mac Finder
might be able to find it, or just look for any eps file in the current
directory.
___
Cmdist mailing list
Cmdist@ccrma.stanford.edu
Max asks how to use dual-core processors in real time audio
applications? -- I would mumble something about threads.
Actually, I've never looked into how much parallel processing
they provide. On my dual-processor machine, I have convinced
myself that they run at the same time, and in some cases
In regard to CLM, I think the Scheme version is better
than the Common Lisp version, mainly because
I much prefer working in Snd. The CM work however
has gone toward Chicken scheme and Juce, and
Snd can't deal with either one. There's no technical
roadblock -- just my aversion to C++ and hard
201 - 300 of 542 matches
Mail list logo