[rec.music.synth] announcing...

pmy@vivaldi.acc.virginia.edu (Pete Yadlowsky) (02/08/90)

...the release of LPC, a NeXT adaptation of Paul Lansky's
linear predictive analysis and pitch tracking programs.
LPC reads a NeXT or CSound-NeXT format soundfile and produces
a data file which codes the sound in terms of its time-varying
formant characteristics and the RMS levels of a residual excitation
signal. To resynthesize the audio signal, this LPC-derived dynamic
filter is excited with a spectrally rich driver, such as
white noise or a pulse train, though many interesting effects can
be produced with other types of signals. Also, there is a pitch
tracking utility which produces data that may be merged with
the LP analysis data. This pitch information may then be used
to control the pitch of the driving signal during resynthesis. 

CSound (Barry Vercoe's software synthesis system) provides signal
modification units which read LPC analysis files and resonate
specified signals through the LP-encoded filters. CSound has also
been ported to the NeXT. The next release of CSound-NeXT (sigh) will
have hooks for launching and communicating with LPC-NeXT, thus
adding another application to the CSound-NeXT integrated tool set.
Due out shortly.

CSound-NeXT and LPC-NeXT are both NeXTStep applications, meaning
that their front ends are built on the NeXT graphic user interface
for clear, intuitive interaction.

For a detailed explanation of the workings of linear predictive
analysis, try "Computer Music" by Dodge and Jerse. Hal Chamberlin's
"Musical Applications of Microprocessors" also has a few paragraphs
on this.

ftp:

	uvaarpa.acc.virginia.edu:/pub/next/Apps/LPC.tar.Z
	uvaarpa.acc.virginia.edu:/pub/next/source/LPC-source.tar.Z

Piece-wise uuencoded mailings can be arranged for those who do not have
ftp access.
	
Pete Yadlowsky
Academic Computing Center
University of Virginia
pmy@Virginia.EDU


--
Peter M. Yadlowsky		| "Pay no attention to that man
Academic Computing Center	|	behind the curtain!"
University of Virginia		|
pmy@Virginia.EDU		|

pmy@jeeves.acc.Virginia.EDU (Pete Yadlowsky) (02/08/90)

...the release of LPC, a NeXT adaptation of Paul Lansky's
linear predictive analysis and pitch tracking programs.
LPC reads a NeXT or CSound-NeXT format soundfile and produces
a data file which codes the sound in terms of its time-varying
formant characteristics and the RMS levels of a residual excitation
signal. To resynthesize the audio signal, this LPC-derived dynamic
filter is excited with a spectrally rich driver, such as
white noise or a pulse train, though many interesting effects can
be produced with other types of signals. Also, there is a pitch
tracking utility which produces data that may be merged with
the LP analysis data. This pitch information may then be used
to control the pitch of the driving signal during resynthesis. 

CSound (Barry Vercoe's software synthesis system) provides signal
modification units which read LPC analysis files and resonate
specified signals through the LP-encoded filters. CSound has also
been ported to the NeXT. The next release of CSound-NeXT (sigh) will
have hooks for launching and communicating with LPC-NeXT, thus
adding another application to the CSound-NeXT integrated tool set.
Due out shortly.

CSound-NeXT and LPC-NeXT are both NeXTStep applications, meaning
that their front ends are built on the NeXT graphic user interface
for clear, intuitive interaction.

For a detailed explanation of the workings of linear predictive
analysis, try "Computer Music" by Dodge and Jerse. Hal Chamberlin's
"Musical Applications of Microprocessors" also has a few paragraphs
on this.

ftp:

	uvaarpa.acc.virginia.edu:/pub/next/Apps/LPC.tar.Z
	uvaarpa.acc.virginia.edu:/pub/next/source/LPC-source.tar.Z

Piece-wise uuencoded mailings can be arranged for those who do not have
ftp access.
	
Pete Yadlowsky
Academic Computing Center
University of Virginia
pmy@Virginia.EDU


Peter M. Yadlowsky		| "Pay no attention to that man
Academic Computing Center	|	behind the curtain!"
University of Virginia		|
pmy@Virginia.EDU		|

pmy@vivaldi.acc.virginia.edu (Pete Yadlowsky) (11/03/90)

...CSound-NeXT v2.0, a NeXT interface to Barry Vercoe's csound digital
synthesis software. This is a much-improved and expanded release.
Where to begin...


Net-Sound
---------

NeXTStep makes for a lovely work environment, but cranking out a long csound
score on a huge orchestra of complicated instruments can easily take days
and days. Wouldn't it be nice if you could hitch up that MondoMips, Inc.
mainframe down the hall to do the crunching? Now you can. The new csound
interface allows you to specify a favorite compute server. When csound is
run over the net, the remote server takes the data it needs from the local
NeXT host and returns a soundfile. Also, csound's progress report is sent
back over the net to appear in a scrolling text window on your NeXT. All
of this is transparent to the user, and, except for the speed improvement,
you'll forget the net is involved at all. Of course, this assumes a few
things about the remote server:

	- it must understand the `rsh' (remote shell) command
	- the user must have an equivalent account on the server
	- permissions must be set properly (e.g. the local host is
	  named in /etc/hosts.equiv or the equivalent)
	- csound must be installed on the server
	
This last requirement is the stickiest, because the csound you install on the
compute server needs to have net hooks in it. As far as I know, my version of
the source is the only one that supports this. Unfortunately (and rightly), I'm
not at liberty to distribute this source because to do so would confound
efforts going on at MIT (home of csound) to bring the source and its many
variations under some kind of control. I'm presently trying to coordinate
my efforts with those at MIT, and hopefully the net-code will be integrated
into the standard release. In the meantime, though, I've made available
sets of csound binaries for the IBM RS6000 series and DECstation machines.

Score Preprocessing
-------------------

The new interface supports three types of scorefiles: csound standard numeric
scores (.sco), SCOT (Score Translator) scores (.scot), and general format
scores (.score). Files of the latter score format are the most flexible,
because they may contain anything at all...a Lisp program, MIDI data, anything.
When csound is run with a scorefile with a `.score' suffix, the scorefile is
first pushed through a user-specified application designed to produce
standard numeric score data, which is then passed on to csound. Such an
application should expect two arguments: the name of the .score file and that
of the .sco file to be written. By default, the filter application is `cp';
that is, the .score file is simply copied to the .sco file. The user specifies
a custom filter via the NeXT defaults database:

	dwrite CSound ScoreProcess MyFavoriteScoringProgram

The scoring program may be an application, a shell script, whatever,
as long as it properly handles the aforementioned two arguments. The
resulting .sco file is left in the current project directory for further
editing, if desired.

Speaking of scorefiles, you may now have as many score (and orchestra) files in
a project directory as you like. When you `Play' a scorefile (invoke csound
on it), a panel pops up to request an orchestra file to use with it (defaults
to .orc file of same name), unless there's only one .orc file, in which case
no panel appears.

Multi-session csound
--------------------

In previous versions of the interface, you could run only one csound job at
a time, and the interface itself was locked up while csound was running.
Now you can run multiple jobs, and each one gets its own scrolling text
window in which the session's progress is displayed. Also, if you decide
to abort a csound run, simply click its window's close button. The session
is killed and the window is deleted. This is especially useful with the
networking capability mentioned above; you could be running several jobs
simultaneously on different compute servers, all from the comfort and safety
of your NeXT (don't be a net pig, now :-) .

Plot window
-----------

Csound supports the plotting of wave tables created by the various GEN routines.
On machines that can do it, these plots are drawn in one or more windows on
the screen. Machines that do not support graphics get their plots drawn in
ascii in the progress report. Well, there is now csound graphics support for
the NeXT. If wave tables are generated and table displays are enabled, a
scrolling window will pop up on your NeXT and annotated wave plots will be
drawn in this window. When csound is finished, it will wait until the user
closes the plot window before finally terminating. Note that the plot window
is displayed only when running csound on the local NeXT, and not across the net.

Miscellany
----------

	- improved help panel, stays up until explicitly closed, text
	  is organized to look more or less like it does in the manual
	- supports 8-bit mulaw soundfiles as well as 16-bit linear and float
	- cleaner, more consistent interface
	- edit functions (copy, paste) enabled for grabbing text (I know,
	  should have been there from the start)
	  
That about covers it, I think.

anon ftp:

	uvaarpa.acc.virginia.edu:/pub/next/Apps
	

--
Peter M. Yadlowsky		| "You know - when I talk to people, I try to
Academic Computing Center	|  look more intelligent than I actually am.
University of Virginia		|  Seems to work."
pmy@Virginia.EDU		|			- LA