[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1. Introduction

LASH stands for LASH Audio Session Handler. It is a session management system for audio applications on GNU/Linux. It understands the JACK low latency audio API and the ALSA MIDI sequencer interface. The system is comprised of a server program, lashd, an application library, liblash, and a control program - either the command-line lash_control or the GTK lash_panel. The server and clients communicate over TCP sockets. There are three kinds of clients: normal clients (audio applications), user interfaces for the server, and connection patchbays.


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

1.1 Nomenclature

In order to describe the system, we should introduce some terminology. First of all, the server is the lashd server program, an omni-present marshaller and database for storing arbitrary application data. The library is the `liblash' shared library. It contains all the functions that an application uses to communicate with the server and take part in the system. Such an application is called a client.

The server deals with things in terms of collections of clients, called projects. A project has a unique string name, a current directory and a list of clients that are in that project. The server can have one client that is a server interface that allows the user to control the server. There are two server interface included with the system, the lash_control command-line interface, and the lash_panel GTK interface.


[ << ] [ >> ]           [Top] [Contents] [Index] [ ? ]

This document was generated by PLD Titanium builder on December, 16 2011 using texi2html 1.76.