Hi!
First Release.
This program is released GNU/GPL version 2.
Horgand is a organ, is my first attempt to do something with sound, generates
sound like a FM synthesizer in real time. And i try to add some DSP effects,
rotary, chorus, tremolo, delay ...
Is Jack capable and recognizes MIDI Program Change (1-32), Volume,
Modulation...
Horgand is tested on a PIII 966 (Debian Sid ) and PII 300 (Gentoo).
REQUERIMENTS:
* FAST COMPUTER
* LINUX
* ALSA
* JACK
* FLTK 1.1
I'm musicien, not programer i do this only for fun.
Take a look in http://personal.telefonica.terra.es/web/soudfontcombi/
Comments and patches will be apeciatted
Josep
Hi list,
Here is a propblem that is propably already solved in another context,
so i would like to know some opinions on it:
I am trying to implement a (hopefully:-) ) simple general-purpose event
delegation architecture.
The actual application will propably be something like a network of
modules that can do arbitrary filtering, generation and manipulation of
midi events in real time.
As propably different kinds of external event sources, like several midi
ports, maybe joystick device and of course a gui, are involved, how
would one efficiently organize the delegation of events passed between
the modules, so that the everything is still thread-safe?
The three main ideas i can currently think of are:
A: don't do it at all, that is, everything is implemented as simple
subject/observer patterns, so that the communication is a pure
module-to-module thing.
Mutexes et al, would have to be managed by each individual plugin.
B: use a global, mutexed event queue. This could be a priority queue for
time-stamped events, or a simple FIFO.
C: use local queues. As above, but for each individual module.
Each of the above aproaches seems to have its advantages and
disatvantages. E.g. if queues are used, this would as far as i an judge,
make it easy to have feedback cycles.
OTOH this would propably introduce some overhead which aproach A
wouldn't have. C would propably involve a single thread for each module,
or a global "clock" thread that periodicaly calls an "process_queue"
method on each module.
Is there a general "best" way to do this?
Kind regards,
Lukas
tuneroid 0.9.3
tuneroid is a tuner for variety of musical instruments. It is designed
to tune musical instruments on PC using a microphone or directly
connecting the instrument to the PC's sound card.
http://www.uid0.sk/zyzstar/?tuneroid
--
jozef kosoru
http://www.uid0.sk/zyzstar
http://plugin.org.uk/releases/0.4.2/
Highly recomended upgrade for 0.4.x users.
Changes:
* Great new set of filter plugins from Alexander Ehlert
* Applied patch from Anand Kumria to make it build with gcc 3.3
* Rewrote the flanger modulation code - its not optimised, but should work
* Added support for FFTW3
* Added denormal killer to l/c/r delay - hopefully works better on PIV
* Fixed serious peak detection bug in lookahead limiter
* Things I forgot
Thanks to Nick T. and Anand K. for bug reports and Alexander E. for the
new plugins.
FFTW3 is much better than old versions, but if youre going to upgrade make
sure you tell it to build the 32bit library, and optimise it right for
your CPU. The SIMD optimisations (SSE etc.) make a lot of difference.
FFTW2 will be supported for the near future anyway.
- Steve
On linux, which is faster, pipe, FIFO, or socket? What about shared
memory - is it faster, and if so is it faster enough to warrant the
extra programming overhead?
--
Hans Fugal | De gustibus non disputandum est.
http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg
http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach
---------------------------------------------------------------------
GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460