Skip to content

ebuswell/Cshellsynth

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cshellsynth is a library for synthesizing sound using the Jack Audio Connection Kit on
Linux.  It optionally includes a module for ruby suitable for livecoding.

This depends on libsndfile and jack.  libsndfile could be made optional, but this hasn't
yet been done.

For Jack, see http://jackaudio.org.  I highly recommend version 2 or later.  Version 1
compiles, but doesn't seem to deal well with the extremely large number of clients your
program will no doubt generate.

For libsndfile, see http://www.mega-nerd.com/libsndfile/

See the file `INSTALL' for generic instructions on how to compile and
install this software.

See the file `NEWS' for late-breaking news about this version.

See the file `ChangeLog' for an up-to-date list of source-level
modifications.

----------------------------------------------------------------------

Some questions that have never been asked of me:

How stable is Cshellsynth?

Right now, Cshellsynth is in alpha.  However, mostly that just means that the API is not
completely stable.  If you compile against Cshellsynth and don't upgrade it, it should be
pretty stable.  However, if you do find a bug and the API has been changed, don't expect
me to back-port changes for you, though you should be able to do it yourself with a git
changeset.

Where can I send a bug report?

Please use the git project page at http://github.com/ebuswell/Cshellsynth/issues

I don't understand ruby or C.  Will you make a GUI for Cshellsynth?

No.  Cshellsynth was always intended to be textual.  On the other hand, I would be happy
to include modules for other languages, if anyone wants to write one.

Will you include feature x?

If you write it and it's simple and mathematically generic enough, yes.  If it is not very
generic (e.g. modeling a particular analog synth), write it as a separate library, and I
will be happy to link to it on the site.  Since this project uses jack, and jack has a
dssi "rack" (jackrack), there's multiple ways of doing this.

If you want something that seems obvious, but don't have time to write it, send a request.
I may not implement it, but it doesn't hurt to ask.

What does Cshellsynth stand for?

When I came up with the name, I was thinking of writing a domain-specific language for
livecoding.  "cshell" then would stand for "C SHimple Enterface LLanguage."  Instead, we
have ruby, and so "cshell" stands for those lovely things that wash up on the beach.  This
is probably just as well, as the humor of a grossly misspelled acronym might be mistaken
for an incompetent or nonparticipatory move in the acronym game, beloved by software
engineers everywhere.
----------------------------------------------------------------------

Cshellsynth is Copyright 2010 Evan Buswell

Cshellsynth is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.

Cshellsynth is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with Cshellsynth.  If not, see <http://www.gnu.org/licenses/>.

About

Modular software synthesizer (old; see sonicmaths)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published