On Friday 06 January 2012, you wrote:
> btw: is there a way to list available clients/ports from the api.
> I know that aconnect -i / -o does this, but is there a c/c++ function?
>
> Dave
The functions are: snd_seq_query_next_client() and snd_seq_query_next_port();
you need to loop calling these functions while they return a correct answer.
For instance, this is the relevant code in "aconnect.c" :
static void do_search_port(snd_seq_t *seq, int perm, action_func_t do_action)
{
snd_seq_client_info_t *cinfo;
snd_seq_port_info_t *pinfo;
int count;
snd_seq_client_info_alloca(&cinfo);
snd_seq_port_info_alloca(&pinfo);
snd_seq_client_info_set_client(cinfo, -1);
while (snd_seq_query_next_client(seq, cinfo) >= 0) {
/* reset query info */
snd_seq_port_info_set_client(pinfo,
snd_seq_client_info_get_client(cinfo));
snd_seq_port_info_set_port(pinfo, -1);
count = 0;
while (snd_seq_query_next_port(seq, pinfo) >= 0) {
if (check_permission(pinfo, perm)) {
do_action(seq, cinfo, pinfo, count);
count++;
}
}
}
}
See:
http://git.alsa-project.org/?p=alsa-utils.git;a=blob;f=seq/aconnect/aconnec…
I guess you already know the reference documentation site:
http://www.alsa-project.org/alsa-doc/alsa-lib/seq.html
Just for comparison, a similar enumeration using Drumstick looks like this:
QListIterator<PortInfo> it(m_Client->getAvailableOutputs());
while(it.hasNext()) {
PortInfo p = it.next();
cout << p.getClientName() << ":" << p.getPort();
}
See Drumstick's example "drumgrid":
http://drumstick.sourceforge.net/docs/drumgrid.cpp-example.html
Regards,
Pedro
Hi there,
Does anyone have Steve Harris' new email address? steve(a)plugin.org.uk
fails with "550 5.1.2 Bad destination system address".
Anyway, some of you who package or copied code from meterbridge may be
interested in this as well.
-=-=-=-=-
Hi Steve,
Haven't seen you around much on LAD. I hope this email finds you well.
Are you still maintaining meterbridge? I've stumbled over a bug in 0.9.2
The IEC scale is not continuous. Attached patch resolves the issue.
I don't have access to the IEC-268-18 specs, so I can't tell if the
patch is correct, but it does fix the discontinuity between -60db and
-50db. To make it obvious, here's the annotated iec_scale(float db):
if (db < -70.0f) {
def = 0.0f;
} else if (db < -60.0f) {
def = (db + 70.0f) * 0.25f; // 0.0 .. 2.5
} else if (db < -50.0f) {
// def = (db + 60.0f) * 0.5f + 5.0f; // 5.0 .. 10.0 // bug? v0.9.2
def = (db + 60.0f) * 0.5f + 2.5f; // 2.5 .. 7.5 // fix!
} else if (db < -40.0f) {
def = (db + 50.0f) * 0.75f + 7.5; // 7.5 .. 15.0
} else if (db < -30.0f) {
def = (db + 40.0f) * 1.5f + 15.0f; // 15.0 .. 30.0
} else if (db < -20.0f) {
def = (db + 30.0f) * 2.0f + 30.0f; // 30.0 .. 50.0
} else if (db < 0.0f) {
def = (db + 20.0f) * 2.5f + 50.0f; // 50.0 .. 100.0
} else {
def = 100.0f;
}
Furthermore, the DPM image has a couple of problems:
The markers at -10, -19, -20, -25, -30, -35, -55 are off by one pixel
(they need to be moved 1px down), the -45db marker is correct.
The marks for -40, and -50 are missing and it's easy to mistake the
-45db and -55db marks to correspond to the -40db, -50db annotations.
Last but not least, the minus-signs of all annotation does not align
with the marks and the font used for the annotation text is somewhat
blurry..
All fixed in attached image.
Cheers!
robin
I have adapted the GMPI requirements final draft document to a
comparison with the current state of LV2: http://lv2plug.in/gmpi.html
A couple of nonsense baroque ideas aside, most of the requirements are
met, though there are still important gaps. I mention it here in case
anyone has an interest, please feel free to address any of the points
made in this document.
It may also be useful to augment this document with additional
requirements, particularly since there's several knowledgeable folks who
may not grok the *how* of LV2 but know *what* they need in terms of
general requirements. I will add a section for this if anybody has any
input.
Perhaps this will serve as a good road map that is not too bogged down
with details.
Cheers,
-dr
Hi All,
I know I've posted an announcement about Praxis / Praxis LIVE here
before. Thought a few people might be interested in this blog entry
about Praxis' underlying architecture and the influence of the Actor
Model. Be really interested in any comments with thoughts, insights,
corrections, stupid mistakes, similar models in use elsewhere, etc.,
etc.
http://praxisintermedia.wordpress.com/2012/07/26/the-influence-of-the-actor…
Thanks in advance.
Best wishes,
Neil
--
Neil C Smith
Artist : Technologist : Adviser
http://neilcsmith.net
Praxis - open-source intermedia system for live creative play -
http://code.google.com/p/praxis
OpenEye - specialist web solutions for the cultural, education,
charitable and local government sectors - http://openeye.info
On 07/30/2012 03:12 AM, James Morris wrote:
> (1.0) Non Session Management support
Nice to see a dev who's taking this up. Session management a 'must have'
for jack standalone applications and imho NSM is the best option for this.
Best regards,
\r
Hi All,
Firstly, finally got around to some screencasts of Praxis LIVE in
action - http://praxisintermedia.wordpress.com/2012/07/30/video-rough-cuts-1/
These are just 'rough cuts', unedited except titles and no voiceover.
Only first 2 have audio, and the audio on the second is a little off
in places (see below!)
Secondly, anyone got a suggestion for screencast software that's good
at glitch free audio? These are done with Kazam. First is mostly OK,
but the second is a little glitchy. Finding only about 1 in 4
captures is any good - all sorts of weird glitches and sometimes speed
issues, though the audio playback while recording is fine.
Thanks and best wishes,
Neil
--
Neil C Smith
Artist : Technologist : Adviser
http://neilcsmith.net
Praxis - open-source intermedia system for live creative play -
http://code.google.com/p/praxis
OpenEye - specialist web solutions for the cultural, education,
charitable and local government sectors - http://openeye.info
Hi,
I don't know if this is on-topic or off-topic - technically it runs on a
linux, but then, maybe, just, no, no Android on LAD?? :D But anyways: I
played a little with Android Development and hacked up a little
experimental Synthesizer app.
https://github.com/fps/android_camsynthhttps://play.google.com/store/apps/details?id=io.fps.camsynth
It's free and open source and renders 8 voices (on my LG-P500) with a
trivial (and wrong :D) synthesis method where the voice gains are
determined by the camera image at a 8 x 8 px resolution..
I guess it's somewhat a minimal project which can be instructive to some
(the synthesis part is implemented in C via JNI). And the code is very
small..
Have fun,
Flo
We are proud to announce the release of guitarix2-0.23.3.
Guitarix is a modular tube amplifier simulation for jack, with
additional Effect-Racks, inbuilt effects as well as support for LADSPA
plug-ins.
This is a Bug-fix release witch fix the ladspa_guitarix.so
module guitarix-fx [UniqueID 4070] to avoid segfault when loading into a
host.
Please refer to our project page for more information:
http://guitarix.sourceforge.net/
download site:
http://sourceforge.net/projects/guitarix/
have fun
guitarix development team
Hello everyone!
I have just asked myself, if it is a good idea to use an IR of a Leslie for
simulating a Leslie. Correct me, if I'm bloody stupid, but working on the
basics of convolution, it doesn't look promising. Since you take the IR of the
Leslie and then apply the full IR to each sample, meaning, that you might get
more of a whirling reverb? Or is there another technique, to apply an IR and
cycles. Just one "sample" of the IR to one sample of the input signal.
If I am completely wrong, a simple no will suffice. My knowledge of this is
basic. I've only got some knowledge from a lecture called "signal theory' to
back me up and it should probably be called "an introduction to" or "basics
of" at that. :-)
Warm regards
Julien
=-=-=-=-=-=-=-=-=-=-=-=-
Such Is Life: Very Intensely Adorable;
Free And Jubilating Amazement Revels, Dancing On - FLOWERS!
====== Find my music at ======
http://juliencoder.de/nama/music.html
.....................................
"If you live to be 100, I hope I live to be 100 minus 1 day,
so I never have to live without you." (Winnie the Pooh)