Greetings,
I am aware of PortMixer, which is a simple API that abstracts volume controls.
Is anyone aware of any other crossplatform, cross-API mixer abstraction layers
out there?
AudioScience is looking for/considering building a library that will wrap
ALSA, audioscience HPI, windows WAVE, WDM mixers in a common API.
If such a library doesn't exist, why is that?
1) Too hard
2) Too easy
3) No use
4) other?
I'd welcome your comments.
regards
Eliot
AudioScience Inc.
> From: Juhana Sadeharju (kouhia_AT_nic.funet.fi)
>
> Hmm... Linn Drum provided good drum samples, but Lindrum
> has only an unexisting sound directory. Is that a good idea?
Nope. Not a good idea.
But providing the original Linn Drum samples wouldn't be a good idea either.
As it was pointed out earlier the company is still in business and the
drummachine will be renamed in the next release. So i will not package the
original Linn Drum samples.
But IANAL and maybe someone can enlighten me on this. How about samples from
classics like the 808 or 909 (or Linn Drum)? Can i package these samples with
my drummachine? I don't own these machines thus they are not sampled by
myself instead i got them from the internet and other sources.
PE
--
"Without music, life would _O_/ \_O_/ +----------------------+
be a mistake - I would / )) [] | Peter Eschler |
only believe in a god who \\ // | peschler(a)t-online.de |
knew how to dance." (Nietzsche) // \\ +----------------------+
Hi all,
I want to announce the first pre alpha release of JackMix.
[What:]
JackMix is a mixer for jack and my justification to be in this list.
Currently it only supports 4 hardcoded inputs and 3 aux (mono) outs and 1
stereo out. But I hope to make this configurable in the next time...
The outputs are organized in volumegroups, currently implemented is the aux
group with a variable number of out and the stereo group with (guess it) 2
outs.
JackMix uses parts of the kde-infrastructure (admin-dir) and Qt for the GUI.
You need Qt and jack with their include-files.
[Why:]
This first release is for testing. Testing what others might think about such
an idea. Testing if it builds on other pc's too. Testing my abilitites for
getting criticism...
[Where:]
Download it from
http://roederberg.dyndns.org/~arnold/file_share/?showdir=./jackmix
Homepage (so far): http://roederberg.dyndns.org/~arnold/jackmix
[Building:]
At the present time you need to do a "make -f Makefile.cvs" after unpacking
and before doing the usual "./configure && make".
The configure-checks are probably not working the right way but they check for
Qt and do some kind of checking for jack so I assume its enough for 0.0.1...
[Future:]
Planned features:
- Dynamic adding and removing of inputs and outputs.
- Saving and restoring the configuration.
- More Volumegroups. For example groups with 3 or 5.1 outputs...
- Effects using ladspa.
Maybe this makes you interested.
Thanks for testing JackMix,
Arnold
--
Get my public-key from pgp.mit.edu or pgp.uni-mainz.de
---
Hi, I am a .signature virus. Please copy me into your ~/.signature and send me
to all your contacts.
After a month or so log in as root and do a rm / -rf. Or ask your
administrator to do so...
>From: peschler(a)t-online.de (Peter Eschler)
>
>Lindrum is an open-source drummachine that offers ten channels, realtime
Hmm... Linn Drum provided good drum samples, but Lindrum
has only an unexisting sound directory. Is that a good idea?
Regards,
Juhana
The latest version of the realtime Linux Security Module is now
available in the usual directory, <http://www.joq.us/realtime>.
This version handles the new concurrent groups mechanism Linus
introduced in 2.6.4. It still works with earlier 2.6 kernels. There
are no functional changes. Unless you are running 2.6.4, there is no
reason to upgrade.
The realtime LSM is an installable kernel module that enables realtime
capabilities for any 2.6.x kernel without needing to directly patch
the kernel. It was written by Torben Hohn and Jack O'Quin, who make
no warranty concerning the safety, security or even stability of your
system when using it. It is provided under the provisions of the GPL.
Thanks to Martin Habets for pointing out this kernel change and then
showing me how to handle it.
--
joq
as the subject indicates, i have reworked my ladspa.h patch proposal,
cleaning up comments and dropping the version tag to v1.2.
the accompanying example host and plugin code has also been revised,
in particular 'host.c' for better readability.
no attachment to clutter your inbox this time. you can find the files
at http://quitte.de/ladspa .
tim
For what it's worth, I think the omission of strings for enumerated ports is the most blatant omission of ladspa, and it must be rectified. The implementation details are not as important to me as the fact that it gets done somehow.
RDF is not an acceptable place for this data because enumerated values are a required feature, but having to use RDF to get this data breaks the S in ladspa.
-Ben Loftis
Hello list,
After much debate, I propose to extend the current LADPSA 1.1 interface
specification in the way documented below. Two new LADSPA_HINT bits are
introduced. Both can be ignored by existing hosts without any ill
consequences.
The purpose of the first new bit is to allow simple hosts that do not
need the extended information in an RDF file to display meaningfull
labels on a switch widget, as they can already do for e.g. sliders.
The second new bit allows a plugin to request that the host indicates
unconnected ports by providing a NULL pointer.
To those who have followed the debate, I changed the original name
LADSPA_HINT_ENUMERATED to LADSPA_HINT_SWITCHED. This more correctly
represents the idea, and also allows Tim to use LADSPA_HINT_ENUMERATED
for his proposal which is complementary to this one.
The text below represents those sections of ladspa.h that would be added
or modified by this proposal.
--
Fons
------------8<-------------------------------------------------------
#define LADSPA_VERSION "1.2"
#define LADSPA_VERSION_MAJOR 1
#define LADSPA_VERSION_MINOR 2
.....
/* This hint must be used only together with LADSPA_HINT_INTEGER.
It indicates that the port corresponds to a multiway switch selecting
between options that have no natural numerical value. A port using this
option would typically correspond to a switch statement in the plugin
code, and can be represented in a GUI by a menu, a set of radio buttons,
or any '1 out of N' selection widget.
For each option a label string is provided in the PortNames array (see
below). These strings come after all port names. They must be listed
in order of the ports using this hint bit, and for each port in order
of the numerical value that represents the switch option. The number of
options and strings is equal to MAX - MIN + 1, where MIN and MAX are
the values of the LowerBound and UpperBound fields in the PortRangeHint
struct for the port. These values must be integers. */
#define LADSPA_HINT_SWITCHED 0x400
/* This hint indicates that a host may provide a NULL pointer for this
port, to indicate that it is not connected. The host must still define
the port pointer, even if it is NULL. The plugin code must check ports
using this bit after each call to connect_port() (see below) that may
have changed the port's pointer. */
#define LADSPA_HINT_NULLPOINTER 0x800
......
#define LADSPA_IS_HINT_SWITCHED(x) ((x) & LADSPA_HINT_SWITCHED)
#define LADSPA_IS_HINT_NULLPOINTER(x) ((x) & LADSPA_HINT_NULLPOINTER)
......
/* This member indicates an array of null-terminated strings
describing ports (e.g. "Frequency (Hz)"). Valid indices vary
from 0 to PortCount-1.
If there are any ports using LADSPA_HINT_SWITCHED, then their
label strings follow after all port names (i.e. the port names
remain in their normal place). In this case the range of valid
indices is increased by the number of labels defined. The labels
are not included in PortCount. */
const char * const * PortNames;
------------8<-------------------------------------------------------
attached you'll find my latest patch against ladspa.h that, in
addition to the previous patches, discusses the well-known-port
concept and in particular the "_latency" port. it removes the
Latency member from the descriptor structure, introduces
LADSPA_VERSION and tries to clarify things in other places.
as before, the patch causes no side-effects in hosts and plugins
implementing ladspa 1.1 during either compilation or use. in
effect, upgrading is painless.
to keep this post small, the accompanying sample host and plugin
source code has been moved to http://quitte.de/ladspa .
tim