Loki Davison:
> What is wrong with just using jack-dssi-host? If
> you want a standalone version, you can just have a
> script, jack-dssi-host myplugin called myplugin for
> people to run.
You don't even need that - just create a symbolic link from myplugin to jack-dssi-host.
Chris
Hi,
I'm trying to find a copy of a program called "maube":
http://www.vergenet.net/~conrad/maube/
It's from 1997, and I'm hoping that maybe someone who's been around here
for a while might have a copy ...
I can't find a copy of the source on any of my (working) machines, or
via google. I wasn't happy to discover that the HTTP "download" link
is a broken symlink to a filesystem on my old university account (ie.
when I copied the website across to vergenet a few years ago, I copied
the symlink not the directory it pointed to...).
Anyway, if you happen to have a hard drive with nine years worth of linux
audio cruft on it, please 'locate maube' for me :-)
I'm interested to see if it builds or runs at all any more. And then
we're gonna build a new Linux desktop to rival Gnome and KDE, but based on
the "Self Organising Interface Attenuator" [ok, kidding, I can't even
remember what that was]:
http://www.vergenet.net/~conrad/maube/screenshots.html
cheers,
Conrad.
Chris Cannam wrote:
>On Thursday 09 Feb 2006 18:09, Emanuel Rumpf wrote:
>
>
>>Chris Cannam wrote:
>>
>>
>>>assert(0);
>>>
>>>
>>This had no effect.
>>
>>
>
>Oh, of course, it's that NDEBUG flag. Sorry. Try
>abort();
>
>
Is it possible to run rg from the RGbuild directory, without first
installing it?
How would I debug it using kdbg?
Compiling it with scons debug=full, setting the breakpoint in
MappedStudio.cpp and starting it through kdb didn't seem to work / be
enough.
Now I have used this, so that rg didn't stop after being started:
tti += 1;
if (tti == 3 ){
abort();
}
...and got this output when opening the file:
Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1234393408 (LWP 6323)]
[New Thread -1236059216 (LWP 6325)]
[KCrash handler]
#3 0xb6dee7a7 in raise () from /lib/tls/libc.so.6
#4 0xb6df004b in abort () from /lib/tls/libc.so.6
#5 0x080d50f0 in ~MappedPluginSlot (this=0x8293068)
at RGbuild/sound/MappedStudio.cpp:1279
#6 0x080d4167 in Rosegarden::MappedStudio::clear (this=0x8236968)
at RGbuild/sound/MappedStudio.cpp:583
#7 0x0805f137 in RosegardenSequencerApp::clearStudio (this=0x822f418)
at RGbuild/sequencer/rosegardensequencer.cpp:1563
#8 0x080778e7 in RosegardenSequencerIface::process (this=0x822f5dc,
fun=@0xbfa83334, data=@0xbfa8332c, replyType=@0xbfa83324,
replyData=@0xbfa8331c)
at RGbuild/sequencer/rosegardensequenceriface_skel.cpp:703
#9 0xb6da93e5 in DCOPClient::receive () from /usr/lib/libDCOP.so.4
#10 0xb6daaa6b in DCOPClient::find () from /usr/lib/libDCOP.so.4
#11 0xb6dab345 in DCOPClient::find () from /usr/lib/libDCOP.so.4
#12 0xb6db7d4e in KDE_IceProcessMessages () from /usr/lib/libDCOP.so.4
#13 0xb6da378e in DCOPClient::processSocketData () from /usr/lib/libDCOP.so.4
#14 0xb6dab704 in DCOPClient::qt_invoke () from /usr/lib/libDCOP.so.4
#15 0xb77bfb57 in QObject::activate_signal ()
from /usr/share/qt3/lib/libqt-mt.so.3
#16 0xb77c04a5 in QObject::activate_signal ()
from /usr/share/qt3/lib/libqt-mt.so.3
#17 0xb7b50cbc in QSocketNotifier::activated ()
from /usr/share/qt3/lib/libqt-mt.so.3
#18 0xb77e0569 in QSocketNotifier::event ()
from /usr/share/qt3/lib/libqt-mt.so.3
#19 0xb7755698 in QApplication::internalNotify ()
from /usr/share/qt3/lib/libqt-mt.so.3
#20 0xb77558b6 in QApplication::notify () from /usr/share/qt3/lib/libqt-mt.so.3
#21 0xb715b6fc in KApplication::notify () from /usr/lib/libkdecore.so.4
#22 0xb76e55e5 in QApplication::sendEvent ()
from /usr/share/qt3/lib/libqt-mt.so.3
#23 0xb7746ac9 in QEventLoop::activateSocketNotifiers ()
from /usr/share/qt3/lib/libqt-mt.so.3
#24 0xb76f9334 in QEventLoop::processEvents ()
from /usr/share/qt3/lib/libqt-mt.so.3
#25 0xb776df48 in QEventLoop::processEvents ()
from /usr/share/qt3/lib/libqt-mt.so.3
#26 0xb77541ca in QApplication::processEvents ()
from /usr/share/qt3/lib/libqt-mt.so.3
#27 0xb77541f5 in QApplication::processEvents ()
from /usr/share/qt3/lib/libqt-mt.so.3
#28 0x0806f9b7 in main (argc=1, argv=0xbfa83e14)
at RGbuild/sequencer/main.cpp:265
Wed Feb 8 2006 CLAM 0.90 Released
======================================
´New multiplied build-system, fancy applications and inter-
connectivity'
What is CLAM?
CLAM is a framework for research and application development
in the Audio and Music Domain. It offers a conceptual model
as well as tools for the analysis, synthesis and processing
of audio signals.
We are glad to announce that our new 0.90 release is already
available at our (also brand new) website: http://clam.iua.upf.edu.
This release represents a big step forward to our soon to come
first stable 1.0 release and includes major improvements.
For the first time the CLAM framework and all related applications
are available in binary form for all major platforms: deb packages
are provided for Ubuntu/Debian GNU/Linux, dmg images for Mac OSX
and setup executables for Windows. This change has represented a
complete but necessary (and painful!) rework of our build system,
which is now based on small binary libraries and uses Scons as
the build tool. We expect it to reduce drastically the complexity
of the compilation and installation of clam applications for the
end-user.
Other major improvements include a complete rework of the SMSTools,
application GUI, which is now based on Qt, as well as many
additions to the Annotator app.
A CLAM Network can now also become an Open Sound Control (OSC)
node, opening up the possibility of interconnection to external
applications. In the 'Application Prototyping' chapter we'd like
to mention that we have also added complete tools to create both
VST and LADSPA plugins out of a previously designed network.
It is also worth noticing the possibility of creating stand-alone
applications with a GUI created using the great Qt-designer and
the CLAM Qt-plugins. Such standalone applications can behave
either as a Jack client (for GNU/Linux and Mac OSX) or use audio
backends like alsa or Portaudio.
Please read these and other improvements in the attached changelog
and visit our website and/our mailing list for further announcements.
Although we are continuing to work toward the 1.0 release and we
expect to come up with new improvements soon, we hope all these
additions already convert the framework into a more usable and
useful tool and, as always, we expect as much feedback as possible
from all our users.
The CLAM team
CLAM ChangeLog
2006-02-07 CLAM_0_90_0
'New multiplatform build-system, fancy applications and interconnectivity'
* Building and packaging
+ New build system based on scons
+ Binary libraries
+ Standard library installation
+ CLAM applications just link against the libraries
+ CLAM and all provided applications are working multiplatform
(Linux/MacOSX/Windows)
+ Easy to use installers for MacOSX, Windows and Linux (Debian)
+ Ported to g++ 4.0
* Rappid prototyping infrastructure
+ New external-generators/sinks and
external-control-senders/receiver classes.
o They glue specific architecture (jack, portaudio,
ladspa, vst) ports with a clam network.
* New hierarchy of network-players classes, with these (final)
classes:
+ JACKNetworkPlayer,
+ PortAudioNetworkPlayer,
+ BlockingNetworkPlayer,
* LADSPA Plugins (Linux): A generic plugin that embeds a network can be
easily created by just providing the path to a valid network xml file.
* VST Plugins (Mac/Windows): A generic plugin that embeds a network can be
easily created by just providing the path to a valid network xml file.
* OSC (Open Sound Control): A network (for instance from the Network Editor)
can now send an receive OSC messages and interconnect to other applications
that follow this protocol.
* MIDI files
+ New classes to read/write standard MIDI files
* Qt Visualization Module
+ Support for multidisplay plots.
+ BPFEditor: multiple BPF allowed
+ Faster rendering of plots using buffered pixmaps
* QtSMSTools2: New! A total rewrite of SMSTools2 GUI using the Qt
toolkit.
+ Multidisplay implementation sharing common axis
o Spectrogram (Color,Black&White)
o Improved player: audio and fundamental frequency
o More suitable dialogs to configure projects
* NetworkEditor
+ New callback audio-driving mode. This allow different modes
(specified as command line options)
o Jack client mode (not in Windows)
o PortAudio mode
o Blocking mode
* Annotator
+ New segment editor:
o Different annotation restrictions depending on the
schema. Right now:
# Continuous segmentation (no gap)
# Discontinous segmentation (gaps but not overlaps)
o Consistent dragging
o Tooltips are faster to appear
o Tooltips say just the position of the hovered element
instead the cursor position.
o Hovering highlights the limit
+ Optimizations on the song switching and on the display
+ Inserting and removing segments now has its reflexion on the
pool
+ Playing the wav and the auralization on different channels.
+ Description schema browser
+ Now, viable projects can be built from the interface
* Spectral Analysis Synthesis
+ FFTOoura:
o By defining a compilation flag, FFTOoura can be choosen
instead of fftw by default
o FFTOoura is now also implemented in the inverse FFT process
2005-07-21 CLAM_0_8_0
'Prototyper with streaming SMS transformations'
* SMS Transformations on the network editor:
+ All SMS Transformations have been refactored in order to work
in streaming mode and not only in offline mode.
* New Prototyping way:
+ Prototyper: Allows to bind a Qt desinger interface to a
Network XML definition so you can have an CLAM GUI
application up an running without a single line of code.
Current features:
o It uses the widget names and classes to Automagically
relate widgets to processings, ports and controls.
o Binds sliders, knobs and so to in-controls on the
network
o Binds monitoring plots to out-ports on the network
o Binds buttons to play/stop actions on the network
* QtPlots add-ons:
+ Editable segmentation marks on all the plots
+ QtSpectrogram:
o Plot to view sonogram (Color/B&W)
+ BPFEditor:
o Editable/auralizable plot (Audio and MIDI support)
* Compiler compatibility:
+ CLAM and its applications now compiles in GNU g++3.4 (as well
as 3.3)
* Audio file I/O facilities:
+ MP3 I/O: Bug fixed: that prevented XING headers from being
used to compute duration
+ MP3 I/O: Bug fixed in conversion from milliseconds to seconds
+ Vorbis I/O: Feature addition: now the # of samples is
computed for Vorbis bitstreams
* Memory leak review:
+ FFT internal buffer was not freed on destruction
* XML related changes:
+ Now XmlStorage::Dump does indentation by default. A new
optional parameter disables indentation.
+ XercesC 2.6 is required in order to pass the tests and be
memory leak free (even 2.3 should be enough to compile and
run CLAM).
+ XML Storage Error Handling (This solves issue #0000022):
o Catchable CLAM::XmlStorageErr excepetions are thrown
whenever:
# I/O error happens
# Malformed XML is readed
# Read elements or contents does not match with CLAM
objects structure
# CLAM objects detect some semantic constraints.
+ XPath (like) navigation (This solves issue #0000045):
o The implementation of XmlStorage::Select allows using:
# XmlStorage::AppendToDocument(object, path,
filename)
# XmlStorage::RestoreFromFragment(object, path,
istream)
# Using atomic primitives for doing some similar
hacks like writing fragments of the XML for an
object to disk.
+ Alternative XML Backends (LibXml++)
o Unification of the way XmlStorage interfaces the library
dependant code.
o LibXml++ Backend implemented. It is planned to be the
default backend on future releases but still some work
is needed to get the error messages correctly reported.
* Network refactoring:
+ Published{In|Out}{Controls|Ports} ->
{In|Out}{Control|Port}Registry
* Descriptors:
+ SpectralDescriptors::HighFrequencyCoefficent ->
HighFrequencyContent as specified by the original literature.
* Other:
+ ConnectPorts overloaded to connect free ports (that is not
belonging to any processing, normally used for injecting or
extracting data)
* Build System:
+ Changes in order to not abort ./configure script when some
library is not found (and not specifyed with the
--without-libname option)
2004-11-18 CLAM_0_7_0
'Easier deployment, better plots and Processing Networks'
etc.
Chris Cannam wrote:
>I think we need some more debug info, or a debugger run, to find out why
>MappedPluginSlot::~MappedPluginSlot is being called (if it is).
>
>
Which tools (ide/debugger) do you use?
But think I won't help here, as I have no idea, how to debug C programs
>btw, is this build done with or without debug information?
>
>
DEBUG_DSSI 1
DEBUG_DSSI_PROCESS 1
were set
Emanuel
Chris Cannam wrote:
>It doesn't appear to be anything to do with the audio connections to or from
>the plugin -- rather, the plugin doesn't seem to be being referred to at all
>during playback.
>
>A couple of things I ought to check, if you don't mind:
>
> * Does it make any difference whether you have the default autoload file or
>your custom one? That is, if you move ~/.kde/config/rosegarden/autoload.rg
>out of the way and run again with "factory settings", do you still get this
>problem? Just vaguely wondering whether it's connected to the synth
>configuration in the autoload.
>
> * Is this a 32 or 64-bit build?
>
32 bit
Deleting the default-studio did not help
The mystery:
When the file "test_dssi_01.rg" is saved as default-studio and opened at
start, or from the menu
"File/New" the sound is ok.
When the file "test_dssi_01.rg" is opened from the menu with
"File/Open", there is no sound.
Here is again some output.
>From playhead command 'play' to playhead command 'stop' only.
The first is the from the working file, the second from the non-working
file.
(Note: It is both the same file, but once loaded as 'defaul-studio' and
secondly loaded from the file via "File/Open")
Note:
In the non-working output there are DSSIPluginInstance messages missing.
Thanks for having a look at it
Emanuel
#########################################################
# start working output (sound)
AlsaDriver::setMIDIClockInterval( 0.020833333R)
AlsaDriver::stopClocks
AlsaDriver::stopClocks: ALSA time now is 0.000000000R
AlsaDriver - initialisePlayback
Adding NOTE OFF at 0.121333332R
AlsaDriver::processSoftSynthEventOut: instrument 10000, now 0
AlsaDriver::processSoftSynthEventOut: time 0.000000000R
DSSIPluginInstance::sendEvent at 0.000000000R
Adding NOTE OFF at 0.374999999R
AlsaDriver::startClocks
AlsaDriver::startClocks: Need JACK start (m_playing = 1)
AlsaDriver::startClocks: playing, prebuffer audio
DSSIPluginInstance::setIdealChannelCount: channel count 2 (was 2)
DSSIPluginInstance::silence: m_run 1, m_runSinceReset 0
DSSIPluginInstance::run( 0.000000000R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.000000000R, blockTime 0.000000000R,
frameOffset 0, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 1 events
JackDriver::startTransport
RosegardenSequencerApp::isTransportSyncComplete: token 30, current token 30
JackDriver::startTransport: asking JACK transport to start, setting wait
state
AlsaDriver::startClocks: Waiting for startClocksApproved
RosegardenSequencerApp::incrementTransportToken: incrementing to 31
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - STOP
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - got unhandled MIDI event type from
ALSA sequencer(34)
seq time is 0.000000000R, last MTC receive 0.000000000R, first time -1
seq time is 0.000000000R, last MTC receive 0.000000000R, first time -1
JackDriver::jackSyncCallback: state 3 [starting], frame 0, waiting 1,
playing 1
JackDriver::jackSyncCallback: m_waitingState 3, unique_1 104, unique_2 104
JackDriver::jackSyncCallback: rate 48000, bar 0, beat 0, tick 134662393,
bpm 1.37604e-269
RosegardenSequencerApp::isTransportSyncComplete: token 30, current token 31
JackDriver::jackSyncCallback: Sync complete
seq time is 0.000000000R, last MTC receive 0.000000000R, first time -1
JackDriver::jackSyncCallback: state 3 [starting], frame 0, waiting 1,
playing 1
JackDriver::jackSyncCallback: m_waitingState 3, unique_1 105, unique_2 105
JackDriver::jackSyncCallback: rate 48000, bar 0, beat 0, tick 134662393,
bpm 1.37604e-269
RosegardenSequencerApp::isTransportSyncComplete: token 30, current token 31
JackDriver::jackSyncCallback: Sync complete
seq time is 0.000000000R, last MTC receive 0.000000000R, first time -1
JackDriver::jackProcess: transport rolling, telling ALSA driver to go!
AlsaDriver::startClocks: startClocksApproved
AlsaDriver::startClocks
AlsaDriver::startClocks: started clocks
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - CONTINUE
seq time is 0.000156000R, last MTC receive 0.000000000R, first time -1
seq time is 0.011499182R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.010666666R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.029156298R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.021333332R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.041513604R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.031999998R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.052742348R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.042666664R)
DSSIPluginInstance::run: running with 0 events
DSSIPluginInstance::run( 0.053333330R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.065915654R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.063999996R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.077566398R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.074666662R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.088989142R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.085333328R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.101249886R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.095999994R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.113531192R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.106666660R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.124510374R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.117333326R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.136223118R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.127999992R)
DSSIPluginInstance::run: running with 0 events
DSSIPluginInstance::run( 0.138666658R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.151209548R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.149333324R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.162577292R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.159999990R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.174093036R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.170666656R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.185328218R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.181333322R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.197321524R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.191999988R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.210021830R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.202666654R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.221326012R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.213333320R)
DSSIPluginInstance::run: running with 0 events
AlsaDriver::processSoftSynthEventOut: instrument 10000, now 0
AlsaDriver::processSoftSynthEventOut: time 0.374999999R
DSSIPluginInstance::sendEvent at 0.374999999R
seq time is 0.232393194R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.223999986R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.223999986R,
frameOffset 7248, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.243292938R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.234666652R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.234666652R,
frameOffset 6735, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.254317120R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.245333318R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.245333318R,
frameOffset 6223, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.265529302R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.255999984R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.255999984R,
frameOffset 5712, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
DSSIPluginInstance::run( 0.266666650R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.266666650R,
frameOffset 5199, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.277690608R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.277333316R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.277333316R,
frameOffset 4687, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.297640848R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.287999982R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.287999982R,
frameOffset 4176, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.309102592R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.298666648R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.298666648R,
frameOffset 3663, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
DSSIPluginInstance::run( 0.309333314R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.309333314R,
frameOffset 3151, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.320642336R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.319999980R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.319999980R,
frameOffset 2640, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.333725642R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.330666646R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.330666646R,
frameOffset 2127, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.344299824R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.341333312R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.341333312R,
frameOffset 1615, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
Adding NOTE OFF at 0.621333332R
AlsaDriver::processSoftSynthEventOut: instrument 10000, now 0
AlsaDriver::processSoftSynthEventOut: time 0.500000000R
DSSIPluginInstance::sendEvent at 0.500000000R
Adding NOTE OFF at 0.874999999R
seq time is 0.356253568R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.351999978R)
DSSIPluginInstance::run: event buffer has 2 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.351999978R,
frameOffset 1104, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.367556312R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.362666644R)
DSSIPluginInstance::run: event buffer has 2 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.362666644R,
frameOffset 591, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: running with 0 events
seq time is 0.379323056R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.373333310R)
DSSIPluginInstance::run: event buffer has 2 event(s) in it
DSSIPluginInstance::run: evTime 0.374999999R, blockTime 0.373333310R,
frameOffset 79, blockSize 512
Type: 7, pitch: 60, velocity: 127
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.373333310R,
frameOffset 6079, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 1 events
seq time is 0.390316238R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.383999976R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.383999976R,
frameOffset 5568, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.403426106R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.394666642R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.394666642R,
frameOffset 5055, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.414295288R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.405333308R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.405333308R,
frameOffset 4543, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.426105032R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.415999974R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.415999974R,
frameOffset 4032, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
DSSIPluginInstance::run( 0.426666640R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.426666640R,
frameOffset 3519, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.439008338R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.437333306R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.437333306R,
frameOffset 3007, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.450445082R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.447999972R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.447999972R,
frameOffset 2496, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.463313388R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.458666638R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.458666638R,
frameOffset 1983, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.474297570R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.469333304R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.469333304R,
frameOffset 1471, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.485281752R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.479999970R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.479999970R,
frameOffset 960, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 0 events
seq time is 0.498070620R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.490666636R)
DSSIPluginInstance::run: event buffer has 1 event(s) in it
DSSIPluginInstance::run: evTime 0.500000000R, blockTime 0.490666636R,
frameOffset 447, blockSize 512
Type: 6, pitch: 60, velocity: 100
DSSIPluginInstance::run: running with 1 events
DSSIPluginInstance::run( 0.501333302R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.514479612R, last MTC receive 0.000000000R, first time -1
DSSIPluginInstance::run( 0.511999968R)
DSSIPluginInstance::run: running with 0 events
seq time is 0.526663918R, last MTC receive 0.000000000R, first time -1
AlsaDriver - stopPlayback
JackDriver::stopTransport: resetting m_haveAsyncAudioEvent
JackDriver::stop: frames this play: 39094272, elapsed 1139414455.715766000R
RosegardenSequencerApp::isTransportSyncComplete: token 30, current token 31
JackDriver::stop: internal request, asking JACK transport to stop
DSSIPluginInstance::discardEvents
DSSIPluginInstance::setIdealChannelCount: channel count 2 (was 2)
DSSIPluginInstance::silence: m_run 1, m_runSinceReset 1
DSSIPluginInstance::deactivate
dssi:/usr/local/lib/dssi/less_trivial_synth.so:LTS
DSSIPluginInstance[0x82ad1c0]::activate
DSSIPluginInstance::activate: setting port 1 to 440
DSSIPluginInstance::activate: setting port 2 to 0.1189
DSSIPluginInstance::activate: setting port 3 to 0.0793
DSSIPluginInstance::activate: setting port 4 to 35
DSSIPluginInstance::activate: setting port 5 to 0.3292
DSSIPluginInstance::activate: setting port 6 to 0.19
AlsaDriver::punchOut
AlsaDriver::stopClocks
AlsaDriver::stopClocks: ALSA time now is 0.000000000R
AlsaDriver::startClocks: startClocksApproved
AlsaDriver::startClocks
AlsaDriver::startClocks: started clocks
RosegardenSequencerApp::incrementTransportToken: incrementing to 32
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - STOP
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - got unhandled MIDI event type from
ALSA sequencer(34)
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - CONTINUE
AudioPlayQueue::~AudioPlayQueue()
AudioPlayQueue::~AudioPlayQueue()
# end working output
#########################################################
#########################################################
# start failed output (no-sound)
AlsaDriver::setMIDIClockInterval( 0.020833333R)
AlsaDriver::stopClocks
AlsaDriver::stopClocks: ALSA time now is 0.000000000R
AlsaDriver - initialisePlayback
Adding NOTE OFF at 0.099999999R
AlsaDriver::processSoftSynthEventOut: instrument 10000, now 0
Adding NOTE OFF at 0.374999999R
AlsaDriver::startClocks
AlsaDriver::startClocks: Need JACK start (m_playing = 1)
AlsaDriver::startClocks: playing, prebuffer audio
JackDriver::startTransport
RosegardenSequencerApp::isTransportSyncComplete: token 20, current token 20
JackDriver::startTransport: asking JACK transport to start, setting wait
state
AlsaDriver::startClocks: Waiting for startClocksApproved
RosegardenSequencerApp::incrementTransportToken: incrementing to 21
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - STOP
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - got unhandled MIDI event type from
ALSA sequencer(34)
seq time is 0.000000000R, last MTC receive 0.000000000R, first time -1
JackDriver::jackSyncCallback: state 3 [starting], frame 0, waiting 1,
playing 1
JackDriver::jackSyncCallback: m_waitingState 3, unique_1 96, unique_2 96
JackDriver::jackSyncCallback: rate 48000, bar 0, beat 0, tick 134662393,
bpm 1.37604e-269
RosegardenSequencerApp::isTransportSyncComplete: token 20, current token 21
JackDriver::jackSyncCallback: Sync complete
seq time is 0.000000000R, last MTC receive 0.000000000R, first time -1
JackDriver::jackSyncCallback: state 3 [starting], frame 0, waiting 1,
playing 1
JackDriver::jackSyncCallback: m_waitingState 3, unique_1 97, unique_2 97
JackDriver::jackSyncCallback: rate 48000, bar 0, beat 0, tick 134662393,
bpm 1.37604e-269
RosegardenSequencerApp::isTransportSyncComplete: token 20, current token 21
JackDriver::jackSyncCallback: Sync complete
seq time is 0.000000000R, last MTC receive 0.000000000R, first time -1
JackDriver::jackProcess: transport rolling, telling ALSA driver to go!
AlsaDriver::startClocks: startClocksApproved
AlsaDriver::startClocks
AlsaDriver::startClocks: started clocks
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - CONTINUE
seq time is 0.000226000R, last MTC receive 0.000000000R, first time -1
seq time is 0.039325480R, last MTC receive 0.000000000R, first time -1
seq time is 0.052404786R, last MTC receive 0.000000000R, first time -1
seq time is 0.066573216R, last MTC receive 0.000000000R, first time -1
seq time is 0.080642084R, last MTC receive 0.000000000R, first time -1
seq time is 0.093585390R, last MTC receive 0.000000000R, first time -1
seq time is 0.106012696R, last MTC receive 0.000000000R, first time -1
seq time is 0.119615564R, last MTC receive 0.000000000R, first time -1
seq time is 0.139419804R, last MTC receive 0.000000000R, first time -1
seq time is 0.158640044R, last MTC receive 0.000000000R, first time -1
seq time is 0.177669722R, last MTC receive 0.000000000R, first time -1
seq time is 0.192489714R, last MTC receive 0.000000000R, first time -1
seq time is 0.206581582R, last MTC receive 0.000000000R, first time -1
seq time is 0.219373888R, last MTC receive 0.000000000R, first time -1
AlsaDriver::processSoftSynthEventOut: instrument 10000, now 0
seq time is 0.243305938R, last MTC receive 0.000000000R, first time -1
seq time is 0.256898806R, last MTC receive 0.000000000R, first time -1
seq time is 0.269274550R, last MTC receive 0.000000000R, first time -1
seq time is 0.285225104R, last MTC receive 0.000000000R, first time -1
seq time is 0.299553972R, last MTC receive 0.000000000R, first time -1
seq time is 0.313780402R, last MTC receive 0.000000000R, first time -1
seq time is 0.329023832R, last MTC receive 0.000000000R, first time -1
seq time is 0.341850700R, last MTC receive 0.000000000R, first time -1
Adding NOTE OFF at 0.599999999R
AlsaDriver::processSoftSynthEventOut: instrument 10000, now 0
Adding NOTE OFF at 0.874999999R
seq time is 0.356041568R, last MTC receive 0.000000000R, first time -1
seq time is 0.368840874R, last MTC receive 0.000000000R, first time -1
seq time is 0.382692742R, last MTC receive 0.000000000R, first time -1
seq time is 0.397487734R, last MTC receive 0.000000000R, first time -1
seq time is 0.410835040R, last MTC receive 0.000000000R, first time -1
seq time is 0.424666908R, last MTC receive 0.000000000R, first time -1
seq time is 0.437555776R, last MTC receive 0.000000000R, first time -1
seq time is 0.451884644R, last MTC receive 0.000000000R, first time -1
seq time is 0.467914198R, last MTC receive 0.000000000R, first time -1
seq time is 0.480876504R, last MTC receive 0.000000000R, first time -1
seq time is 0.503458430R, last MTC receive 0.000000000R, first time -1
seq time is 0.516676298R, last MTC receive 0.000000000R, first time -1
seq time is 0.529573604R, last MTC receive 0.000000000R, first time -1
seq time is 0.542605910R, last MTC receive 0.000000000R, first time -1
seq time is 0.566951960R, last MTC receive 0.000000000R, first time -1
seq time is 0.579670266R, last MTC receive 0.000000000R, first time -1
seq time is 0.595584258R, last MTC receive 0.000000000R, first time -1
seq time is 0.611719812R, last MTC receive 0.000000000R, first time -1
AlsaDriver - stopPlayback
JackDriver::stopTransport: resetting m_haveAsyncAudioEvent
JackDriver::stop: frames this play: 36195328, elapsed 1139414395.325778000R
RosegardenSequencerApp::isTransportSyncComplete: token 20, current token 21
JackDriver::stop: internal request, asking JACK transport to stop
AlsaDriver::punchOut
AlsaDriver::stopClocks
AlsaDriver::stopClocks: ALSA time now is 0.000000000R
AlsaDriver::startClocks: startClocksApproved
AlsaDriver::startClocks
AlsaDriver::startClocks: started clocks
RosegardenSequencerApp::incrementTransportToken: incrementing to 22
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - STOP
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - got unhandled MIDI event type from
ALSA sequencer(34)
Received non-controller event (dest=129:0, controller is 129:2)
AlsaDriver::getMappedComposition - CONTINUE
AudioPlayQueue::~AudioPlayQueue()
AudioPlayQueue::~AudioPlayQueue()
# end failed output (no-sound)
#########################################################
Lars Luthman:
>
> On Thu, 2006-01-19 at 00:41 +0100, conrad berhörster wrote:
>> class MyClass
>> {
>> MyClass();
>> MyClass(n,n);
>> private:
>> matrix<n,n>
>> };
>>
>> this means, at runtime, i want to set the size of the matrix. is this
>> possible? this are divers concepts (templates and runtime) , aren't they?
>
> It is not possible. Templates are instantiated at compile time.
>
Nah, its possible on the fly to generate code, compile the code, and link
it. I have done that many times.
--
http://www.notam02.no/arkiv/src/
ABOUT
-----
jack_capture is a small simple program to capture whatever
sound is going out to your speakers into a file.
This is the program I always wanted to have for jack, but no
one made. So here it is.
USAGE
-----
jack_capture [-f filename] [ -b bitdepth ] [-c channels] [ -B bufsize ]
Filename is by default auotogenerated to something like "jack_capture_<date+exact_time>.wav"
Bitdepth is by default FLOAT.
Channels is by default 2.
Bufsize is by default 262144.
ACKNOWLEDGMENT
--------------
Mostly based on the jackrec program in the jack distribution
made by Paul Davies and Jack O'Quin. Automatic filename generation
code taken from the timemachine program by Steve Harries.
--
After what has seemed a very long time (because it was...) we are
releasing csound5.00
The binary, manuals and source files are on
http://sourceforge.net/projects/csound and look for the csound5 files.
The opportunity has been taken to tidy up the assembly of csound4.23
and earlier files and we are leaving the 4.23 files for a short while.
Main message -- everyone should change to csound5. More robust,
faster, more facilities, more fun, more music.
==John ffitch
Release Notes for Csound 5.00
-----------------------------
The developers are very pleased to be releasing Csound5, for Linux (32
and 64 bit), Mac OSX and Windows, together with an uptodate manual.
The system can be downloaded from http://sourceforge.net/projects/csound
More details and further information can be found in the csound-devel
mailing list at sourceforge and the main user mailing list at
csound(a)lists.bath.ac.uk
The changes from version 4.23 are extensive. The internal structure of
the code has been radically changed, but the language remains compatible
with Csound4, and all old orchestra/scores should run unchanged.
The main visible change is that we are using a plugin style of system.
Many of the opcodes are now loaded at start-up. This opens the way for
private opcode libraries, and opcodes released under other licences than
LGPL.
The other major change is a move to the use of external libraries where
possible. All the internal code for sound files, realtime audio etc has
been replaced. We are now using libsndfile for audio file I/O, and one
of ALSA, PortAudio, CoreAudio, MME or ASIO for realtime. MIDI may be
handled by PortMIDI as well. The incorporation of Open Sound Control
facilities uses the liblo library.
A number of opcodes from csoundAV and csoundVST are now part of the main
system.
Another major change is that Csound5 is embeddable in other programming
systems, using an API for information linkage. We are including Python,
Java and other bindings for the API. Csound5 can also have multiple
instances and is re-entrant.
In addition there are a number of new opcodes, and of course bug fixes.
We believe that csound5 is faster than csound4, and we encourage all
users to move to it.
NOTE: IT MAY BE NECESSARY ON SOME PLATFORMS TO HAVE EITHER ENVIRONMENT
VARIABLES OPCODEDIR OR OPCODEDIR64 SET TO POINT TO DIRECTORY WHERE
OPCODES LIVE.
THE RELEASED FILES ARE BELIEVED TO BE SAFE AND CORRECT IN THIS RESPECT
BUT BEWARE!
New features:
------------
Access to multiple ALSA devices
FLTK widgets reworked and synchronised with csoundAV
User defined gens with names (rather than numbers)
--expression-opt command option
Information on time for each phase of csound if required
Command line options to set ID tags in output soundfile
(title/copyright etc)
Jack available as output device
--sched option now accepts a priority value
-+rtaudio option to select output system
Many new command line options
Utilities to create csd files from orc/score
Tcl/TK frontends (cstclsh and cswish)
Can use looping structures in WAV files as well as AIFF
Increased number of possible input and output audio file formats
named channels
#ifdef in orchestra
removed limitation of only one track in MIDI input files
MIDI output can also be written to a file (this is somewhat limited)
MIDI-style extra time and release (xtratim, linsegr, etc.) is now also
possible with score notes
string variables (of type S)
automatic conversion of some C-style escape sequences
(\n, \r, ASCII code in octal \ooo format, etc) in string constants
made internal indexes to orchestra variables 32 bit (was 16 bit in
Csound 4),
allowing for larger and more complex instruments
replaced old PVOC format with PVOC-EX in all related opcodes
SADIR SSDIR and INCDIR can now be a sdemicolon separated list of
directories
New Opcodes:
-----------
maxk
tab, tabw, and tb0()..tb15()
vst4cs plugin opcodes
pconvolve
ftconv
loris opcodes
Python opcodes
fluid opcodes
chani and chano; chnset and chnget (string indexed)
GEN43
a number of pvs (streaming phase vocoder) opcodes
moogladder
statevar
fofilter
syncgrain
miditempo
event_i
reverbsc (Sean Costello's waveguide reverb)
freeverb
gentune GEN operation
GEN51
GEN52
diskin2
turnoff2
a-rate int() and frac(), and round(), floor(), and ceil()
<< and >> operators
STK (Perry Cook) instruments available from original code
k() function
Mixer opcodes
OSCrecv, OSClisten, OSCsend
loop opcodes
printf, printf_i
string hacking opcodes
Bug Fixes:
---------
Error in tablew fixed
Minor fixed in dcblock
Include files were confused by sections
Improved reading of command line
Fixes in dynamic fgen numbers
gogobel and vibraphone amplitude fix
Arguments to schewhen were wrong
Better checking in bqrez
minor checking in grain
wguide2, wguide1 avoid very low frequencies
wgpluck bug fix
Some error messages corrected and typos fixed
FLsetVal arguments were wrong
outo missed out channel 6
fixed bugs and improved error reporting in ^+ and ^- code.
kread, kdump and a number of other opcodes will take string arguments
from the score
bug fix in sinc window (gen20)
Added iskip options to moogvcf, vco, bqrez, pareq, tbvcf and rezzy
values rounded rather than truncated in deltap, comb, and delay
removed spurious initial values from some MIDI opcodes
Joystick was upside down
lpshold and loopseg changed to agree with csoundAV
marimba now allows zero probability of a multiple strike
Added skipinit argument to diskin and soundin
wave-terrain fixes for phase error accumulation (on long notes)
new optional argument to delayr and all deltap opcodes, to allow delay
taps to read from any of the nested delayr/delayw pairs, not just the
last
new optional argument to distort1 opcode (defaults to zero), to select
amplitude scaling mode (0: default, compatible with original version;
1: relative to 0dBFS, same as mode 0 if 0dbfs is 32768; 2: unscaled)
valpass fixed parameter overwriting
Improved accuracy in some filters
Improvements in bowedbar
JPff -- 1 Feb 2006
Files on Sourceforge
====================
Sources:
Csound5.00_src.tar.gz
Csound5.00_src.zip
Csound5.00_OS9_src.smi.bin
Csound5.00_src_all.tar.gz (including Loris and STK code)
Csound5.00_src_all.zip (including Loris and STK code)
Manual
Csound5.00_manual_chm.zip
Csound5.00_manual_html.zip
Csound5.00_manual_pdf.zip
Csound5.00_manual_pdf_A4.zip
Csound5.00_manual_single_file.zip
OS9:
Csound5.00_OS9.smi.bin
OSX:
Csound5.00_OSX10.3.tar.gz
Csound5.00_OSX10.4.tar.gz
Linux
Csound5.00_i686.rpm
Csound5.00_x86_64.rpm
[Linux for non-root users
Csound5.00_x86_64d.tar.gz
Csound5.00_x86_64f.tar.gz
]
Windows
Csound5.00_win32.i686.zip
Csound5.00_win32.exe (with installer)
Hi,
a few years ago I made a drum machine with scrubbing, and showed it to
some people at the LAD booth at LinuxTag 2003.
Recently (at linux.conf.au 2006) I realized I've sat on the code and not
released it.
This is not a "release", but a challenge; here's some code, and some
instructions for building it:
http://trac.metadecks.org/wiki/BeatfishInstall
Beatfish is built on libremix (which is also not-quite-released; I'd
like to freeze the API sometime this year though ;-) and Evas (a very
high performance graphics canvas built for Enlightenment 17). The plan
is to make a way of developing cute music machines, using DSSI and all
that's good. For now, beatfish is a pretty basic Jack toy.
enjoy :)
Conrad.