[CM] Snd 11.0

Bill Schottstaedt bil at ccrma.Stanford.EDU
Thu Oct 22 06:21:07 PDT 2009

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 returns a list of marks

  in several region-related functions, the argument order has changed to
    put the region object first: insert-region, make-region-sampler, mix-region,
    region-sample, region->vct, region->frame, make-region-frame-reader

sounds are objects, but integers are still ok
  integer->sound and sound->integer to convert old code.

These changes make it possible to replace several dozen functions with generic

  length handles list length, also string-length, vector-length, hash-table-size,
    vct-length, frames, mus-length, sound-data-length, mix-length, and region-frames.

  frames is similar but treats strings as sound file names, and ints as sound indices.  

  srate handles strings (mus-sound-srate), regions (region-srate), and sounds.
  channels handles strings (mus-sound-chans), region-chans, sound-data-chans, mus-channels,
    mixes (always 1 channel), and sounds

  file-name handles strings, sounds, mixes, regions, samplers, generators, and 
    (s7) scheme file ports.

  sync handles sync, mix-sync, and mark-sync.

  maxamp can handle a sound (via the regular maxamp function), string (treated as a 
   sound file name, mus-sound-maxamp), generator (maxamp of the mus-data vct, if any), 
   sound-data (sound-data-maxamp), vct (vct-peak), region (region-maxamp), vector, list, 
   or mix object.

all "sample-reader" and "sample_reader" names changed to "sampler".
  (the old names are defined in snd10.scm)
  make-sampler (formerly make-sample-reader) "snd" arg can be a mix object, returning a mix 

in s7 added procedure-environment and promise?

removed export-all.scm, snd4.scm, snd5.scm, tools/sed-href, tools/lines.scm, 
  and tools/check-gtk.scm.

sine-summation, sum-of-sines, and sum-of-cosines removed (see snd10.scm).

the run macro only works in s7.

removed run-safety, *snd-loaded-files*, and *snd-remember-paths*.

added clm.rb and grani.rb (thanks to Mike Scholz).

checked: mpc 0.7, OSX 10.6, gtk 2.18.0|1|2|3, cmucl 20a, guile 1.9.4

Thanks!: Kjetil Matheussen, Mike Scholz

More information about the Cmdist mailing list