[LAD] [ANN] lash_wrap - A small LASH wrapper

Florian Schmidt mista.tapas at gmx.net
Wed Jul 25 22:14:47 UTC 2007


Hi,

i planned to write this for quite a while and finally got to it [though it's 
not 100% working yet - It's a small program. If experienced unix hackers 
might look over y use of waitpit i'd be happy :)]:

lash_wrap

It's a small program which can be used to "smuggle" non LASH apps into a LASH 
session provided they meet some requirements:

- If they are jack clients, there must be a way of determining the jack client 
name at startup time

- If they are ALSA seq clients the client ID must be known at client startup 
time or their alsa seq name must be uniquely determined

- They must require a way to specify their state via the commandline (e.g. we 
can tell ardour to load a certain ardour session at startup)

So here's how i would smuggle ardour2 into a LASH session:

lash_wrap -j ardour -- ardour2 ~/sound/ardour/brazil/brazil.ardour

The -j [--jack-name] option tells lash_wrap it must register the jack 
name "ardour" with LASH. the "--" seperates the options for lash_wrap from 
the commandline to start the program in question.

If we wanted also all ALSA SEQ connections of ardour to be restored we could 
do:

lash_wrap -a ardour -j ardour -- ardour2 ~/sound/ardour/brazil/brazil.ardour

The -a [--alsa-name] option specifies a name which will be used to find out 
the client ID of ardour by regularly searching all ALSA clients until one 
named "ardour" is found. This ID is then passed to LASH.

CAUTION!!!! YOU MIGHT LOSE WORK!! READ ON:

- lash_wrap does not care for saving the state of the app in question. So 
before hitting "close" in your favourite LASH session handler, be sure to 
save the session in e.g. ardour manually.

- if the passed jack or alsa client names do not match for whatever reasons, 
then connections won't be restored properly.

You have been warned. Nonetheless this might be useful for people who 
otherwise use scripts to manage their audio sessions.

Download it here:

http://tapas.affenbande.org/lash-wrap

Regards,
Flo

P.S.: Apps like rosegarden are a bit difficult to handle, because they use 
wrapper scirpts themself that exit immediately and confuse my little app 
[into thinking the app exited, thus LASH thinks rosegarden has quit, too]


-- 
Palimm Palimm!
http://tapas.affenbande.org



More information about the Linux-audio-dev mailing list