[ < ] [ > ]   [ << ] [ 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 Autobuild on July 8, 2021 using texi2html 1.82.