Subject: CVS commit: pkgsrc/audio/snd
To: None <>
From: Thomas Klausner <>
List: pkgsrc-changes
Date: 02/23/2007 00:34:53
Module Name:	pkgsrc
Committed By:	wiz
Date:		Fri Feb 23 00:34:53 UTC 2007

Modified Files:
	pkgsrc/audio/snd: Makefile PLIST distinfo

Log Message:
Update to 8.8:

Snd 8.8:

many improvements from Mike

Jack support in OSX and Cygwin from Kjetil

poussin-sum and jackson-sum in dsp.scm (more band-limited pulse-trains), and changed
  amplitude scaling in fejer-sum and legendre-sum so that they always peak at 1.0.
  Also added a note in clm.html showing a way to get a time-varying pulse-train.

changed default-output-data-format to mus-bfloat

removed initFile and the (undocumented) htmlDir X resources

make install now copies the *.scm|fs|rb files to {prefix}/share/snd

added read/write support for Apple's new CAFF (64-bit) audio files

checked: glib 2.12.7|8|9, gtk 2.10.7|8|9, Mesa 6.5.1|2, pango-1.15.3|4|5,
         sbcl 1.0.1|2, fth 1.0.7

Thanks!:  Mike Scholz, Kjetil Matheussen, Meino Christian Cramer, Michael Edwards

Snd 8.7

a huge number of *.fs and *.rb improvements from Mike, including the
  new file bird.fsm.

added frame.scm with:

    frame-reverse! frame-copy (from mixer.scm)
    sound->frame frame->sound

    make-frame-reader frame-reader? frame-reader-at-end frame-reader-position
      frame-reader-home free-frame-reader copy-frame-reader frame-reader-chans
      next-frame previous-frame read-frame
      make-region-frame-reader make-selection-frame-reader
      make-track-frame-reader read-track-frame make-sync-frame-reader

    frame->sound-data sound-data->frame
    sound->sound-data sound-data->sound
      region->sound-data track->sound-data selection->sound-data
    file->vct vct->file
    frame->vct vct->frame
    file->sound-data sound-data->file

    insert-sound-data insert-frame insert-vct
    mix-sound-data mix-frame
    scan-sound map-sound (this replaces 8.6's scan-sound)


added to extensions.scm:
    pad-sound contrast-sound dither-sound scale-sound offset-sound normalize-sound

added to examp.scm:
    compand-sound sync-all

sound-data-multiply! sound-data-add! sound-data-offset! sound-data* sound-data+
    sound-data-copy sound-data-reverse! sound-data-peak


clip-hook: called whenever we're about to clip while writing a sound file
  unclip-channel (dsp.scm) based on LPC (reconstruction via forward and backward prediction)
  lpc-coeffs and lpc-predict in dsp.scm
  io.c:  mus_clip_set_handler

finally decided to build in the definition of pi in Guile and Gauche.
  In the context of Snd, it is absurd to have to make sure "pi" is defined all the time.
  It's already defined in Forth, and in Ruby it's PI in the math module.

clm.c: removed (unused) mus_make_frame|mixer_with_data

removed the default font settings in Snd.gtkrc -- presumably Snd
  will now pick up your theme's default font.

added a -nogtkrc startup switch.  This turns off the search for a gtkrc file,
  or its built-in equivalent -- you get whatever your current theme wants.

removed open-sound-file, vct->sound-file, and close-sound-file.
  These were optimizations that make little sense anymore -- use
  mus-sound-open-output and friends instead.  See snd8.scm for
  backwards compatible replacements.

mix tags use the mix-color now

Checked: sbcl 1.0,
         lesstif 0.95 (it still doesn't work with Snd -- segfaults,
           comatose listener, etc),
         cmucl 19d (dies trying to compile cmn's transpose.lisp,
           so that file is commented out for this version of cmucl),
         pango 1.15.1|2, fontconfig 2.4.2, cairo 1.2.6, glib 2.12.5|6, stklos 0.82,
         gamin 1.8.0 (this version fixes at least one of the problems
           that would sometimes cause Snd to hang)

Thanks: Fernando Lopez-Lezcano, Mike Scholz, Kjetil Matheussen, Forest Bond

Snd 8.6

many improvements from Mike.

mix/track mechanism sped up by about a factor of 100, so its possible
  to have thousands of each (but the screeen gets very cluttered).

  added mix-name, track-name, track-tag-y, mix-name->id, and track-name->id
  to help navigate in these situations.

out-any, in-any, locsig, move-sound, and friends can now handle vct and sound-data objects
  as the "stream" argument.  In with-sound, this is the *output* variable or :output
  argument which then applies to all notes. So, with-sound can be used in a zillion new ways:

     (vct-scale! (with-temp-sound (:output (make-vct 2210)) (fm-violin 0 .1 440 .1)) 2.0)

  This extension caused changes in sound-data object handling:
    sound-data-scale! (for with-sound writing to a sound-data object and with the
      :scaled-to or :scaled-by arguments)
    sound-data-fill! (also for with-sound if not :continue-old-file)

  fade.scm instruments changed to use outa rather than vct-map!
  moved samples->sound-data to snd8.scm.
  Mike provided sndins support for this change.

rf64 headers and mutable riff for very large output files.

mus-float-equal-fudge-factor (mainly for reasonable generator equal? checks)

->frequency, ->samples (ws.scm) for things like (violin 0 .1 'e4).

channel-clipped? in examp.scm

filter-fft in examp.scm.

checked: Fedora Core 6, sbcl 0.9.18, fth 1.0.0, Gauche 0.8.8, autoconf 2.61

Thanks: Jacek M. Holeczek, Rick Taube, Mike Scholz, Kjetil Matheussen, Julius Smith,
    Joseph Anderson, SamButcha

Snd 8.5

many improvements thanks to Kjetil and Mike.

gl2ps support, gl-graph->ps function, --with-gl2ps switch, gl2ps.[ch]

added gtk-effects-utils.scm, gtk support for *-menu.scm.

finally implemented the log-frequency display in non-GL spectrograms.

save-marks changed to keep matching sync values
add-mark now takes new optional trailing args: name and sync

removed the gtk_print stuff from xg.c since it's all useless without
  support for the cairo graphics functions and the pango functions
  that access them.

sounds->segment-data (examp.scm) -- returns segment start/dur/maxamp data for collections
  of sounds.

with-file-monitor -- can be set to #f to turn off the FAM process stuff.

add-watcher and delete-watcher -- this is a simpler (and less accident-prone)
  hook to catch any change to the sound list, the current selection, or the mark list;
  it is intended to replace the multi-hook kludges currently used to set dialog button
  sensitivity, for example.  Since each watcher is identified by a unique integer,
  local (unnamed) functions can easily be deleted and so on.

  removed selection-changed-hook (use simpler watcher mechanism instead).

in cmn, thickness message now affects bars locally.  Added *double-barline-thickness*.

checked: gtk-2.10.4|5|6, sbcl 0.9.17, clisp 2.40|1.

Thanks: Michael Edwards, Mike Scholz, Kjetil Matheussen, Carlos Pita,
    Carsten Heinrigs, Dragan Novetski, Jacek M. Holeczek, David O'Toole

Snd 8.4

many ruby, forth, and sndins-related improvements from Mike including new file analog-filter.rb.
  "scheme" instead of "guile" in various names in inf-snd.el (for gauche)

improvements in strad.ins and bandedwg.ins from Juan Reyes

snd_frg.scm thanks to Olivier Doare

granulated-sound-interp (examp.scm)

display-bark-fft (dsp.scm) -- spectral display using bark, erb, and mel scales

def-optkey-instrument (ws.scm)

new optional argument to graph -- lisp graph axis choice
new axis choice --show-bare-x-axis
removed vu-font and vu-font-size, added vu-in-dB
removed spectrogramColor X resource

checked: ruby 1.8.5, sbcl 0.9.15|16, gtk 2.10.2|3, fth 0.10.22

Thanks: Mike Scholz, Anders Vinjar, Kjetil Matheussen, Bill Sack, Pam & Harold Norris,
    Juan Reyes, Daniel Stahl, Michael Edwards, Carlos Pita

To generate a diff of this commit:
cvs rdiff -r1.49 -r1.50 pkgsrc/audio/snd/Makefile
cvs rdiff -r1.3 -r1.4 pkgsrc/audio/snd/PLIST
cvs rdiff -r1.13 -r1.14 pkgsrc/audio/snd/distinfo

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.