fix for #26 (studio xml file corruption)
[ladish.git] / README
blobc636b5589b4b4d04a2f32507992bb613353126a2
1 ========================
2   LADI Session Handler 
3 ========================
5 http://ladish.org/
7 LADI Session Handler or simply ladish is a session management system
8 for JACK applications on GNU/Linux. Its aim is to allow you to have
9 many different audio programs running at once, to save their setup,
10 close them down and then easily reload the setup at some other
11 time. ladish doesn't deal with any kind of audio or MIDI data itself;
12 it just runs programs, deals with saving/loading (arbitrary) data and
13 connects JACK ports together. It can also be used to move entire
14 sessions between computers, or post sessions on the Internet for
15 download.
17 ladish has GUI frontend, gladish, based on lpatchage (LADI Patchage)
18 and the ladish_control command line app for headless operation. LADI
19 Tools is set of apps that interface with ladish, JACK server and
20 a2jmidid
22 ladish requires D-Bus and JACK compiled with D-Bus support.
24 LADI Session Handler is rewrite of LASH.
26 Project goals:
27  * Save and restore sets of JACK (audio and MIDI) enabled
28    applications.
29  * Provide JACK clients with virtual hardware ports, so projects can
30    be transfered (or backups restored) between computers running
31    different hardware and backups. 
32  * Don't require session handling library to be used. There is no need
33    of such library for restoring connections between JACK clients.
34  * Flow canvas based GUI. Positions of elements on the canvas are
35    saved/restored.
36  * Allow clients to use external storage to save their state. This
37    includes storing internal state to non-filesystem place like memory
38    of a hardware synth. This also includes storing client internal
39    state (client project data) in a way that is not directly bound to
40    ladish project. 
41  * Import/export operations, as opposed to save/load. Save/load
42    operate in current system and may cause saving data outside of
43    project itself (external storage). Import/export uses/produces
44    "tarball" suitable for transferring session data over network to
45    other computer or storing it in a backup archive.
46  * Hierarchical or tag-based organization of projects.
47  * List of JACK applications. Applications are always started through
48    ladish to have the restored runtime environment closer to one existed
49    before project save.
50  * Distributed studio - network connected computers. Netjack
51    configuration is part of the studio and thus is saved/restored.
52  * Collaborate with the X11 window manager so window properties like
53    window position, virtual desktop and screen (multimonitor) are
54    saved/restored.