Re: [LAD] NSM - handling large files

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: <linux-audio-dev@...>
Date: Tuesday, April 3, 2012 - 5:49 am

On Thu, Mar 29, 2012 at 03:44:17PM +0200, Emanuel Rumpf wrote:

> Back to life - back to reality

As a developer of limited abilities, I would like the bar
of integrating Nama with other programs to be as low
as possible. :-)

As I understand it, the primary motivation for a session
manager is to be able to save and restore the state of an
audio project[1] that consists of multiple interconnected
programs running on a multiprocessing Linux system.

In other words, the minimum capability sufficient to be
useful would be some sort of checkpointing mechanism.

A secondary goal, discussed extensively here, is that it
would be nice to be able to copy a session or export a
session. This is where all the contentious issues with
handling filesystem objects comes up.

The latter goal should be optional, IMO, rather than required.

Managing files, seems relatively simple in the case of
of Nama, which is a purely non-destructive editor,

Once recorded, Nama *never* modifies or deletes audio files,
so these files don't need to be involved in checkpointing.
(If a user wants to delete WAV files associated with a bad
take, that is her responsibility.)

All the mutable state information for a project is
serialized and stored as JSON. State files for a project
can be named. In future they will be placed under
VCS to add branching (and possibly
merging) abilities.

If Nama (or Qtractor, Ardour, etc.) is to clone a project,
that concern is internal to the app: I wouldn't expect a
session manager to know it should link the files in the .wav
directory and copy the other files. (Straight copying of
files might not even be appropriate if those files are
under a VCS.)

> 2. We record a new file in qtractor. Where would it be stored ?

There could be advantages to knowing, however if the aim is
to integrate multiple apps, it will be simpler if the SM and
app only need to communicate the project name and checkpoint
ID. (It gets more complicated than that since the SM
will need to know that Nama should be responsible for
configuring Ecasound and for either connecting Ecasound to
JACK clients or reporting when Ecasound is ready to be
connected.)

> 3. A session is duplicated.

Branching a project (assuming VCS, which I believe is the
future :-) would be cheaper than duplicating a project.

If the SM wants an app to duplicate a project, I would
expect the SM to ask the app to create a new project as a
copy of an existing project. Whether the app chooses to use
symlinking, hardlinking, copying files or branching under a
VCS seems to be the app's internal concern.

> 4. A session is exported.

The state files and audio files for a Nama project
are in a single directory, easy to copy.

However the .namarc config file specifying the ALSA devices
to be used, the audio recording format, the mixdown format
and many other program behaviors currently exists only
in $HOME.

Even if this file were linked or copied into the project
directory, it may not be seamlessly portable to the
audio hardware and configuration of another system.

If the process of exporting cannot be defined unambiguously,
or involves vast complexity, we might be more successful by
initially restricting our *first* steps to checkpointing
functionality.

Minimizing complexity seems important, as
the Linux audio world has already gone through
several session management APIs, with none yet
widely adopted.

Regards,

Joel

1. I use the terms "project" and "session" interchangeably.

>

--
Joel Roth
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[LAD] NSM - handling large files, Emanuel Rumpf, (Thu Mar 29, 1:35 pm)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Thu Mar 29, 1:44 pm)
Re: [LAD] NSM - handling large files, Joel Roth, (Tue Apr 3, 5:49 am)
Re: [LAD] NSM - handling large files, rncbc, (Tue Apr 3, 9:05 am)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Tue Apr 3, 9:39 am)
Re: [LAD] NSM - handling large files, rncbc, (Tue Apr 3, 10:56 am)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Tue Apr 3, 2:22 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Tue Apr 3, 12:56 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Tue Apr 3, 5:03 pm)
Re: [LAD] NSM - handling large files, David Robillard, (Wed Apr 4, 11:25 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Thu Apr 5, 11:16 am)
Re: [LAD] NSM - handling large files, Dennis Schulmeister, (Thu Apr 5, 6:11 pm)
Re: [LAD] NSM - handling large files, David Robillard, (Thu Apr 5, 5:48 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Thu Apr 5, 6:15 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Thu Apr 5, 8:39 pm)
Re: [LAD] NSM - handling large files, David Robillard, (Thu Apr 5, 6:56 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Thu Apr 5, 12:16 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Thu Apr 5, 2:19 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Thu Apr 5, 2:49 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Thu Apr 5, 4:19 pm)
Re: [LAD] NSM - handling large files, David Robillard, (Thu Apr 5, 5:10 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 11:18 am)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Wed Apr 4, 1:25 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Wed Apr 4, 1:51 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 2:38 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Wed Apr 4, 4:31 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Wed Apr 4, 12:22 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Wed Apr 4, 4:20 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Wed Apr 4, 8:48 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Wed Apr 4, 10:23 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Wed Apr 4, 10:28 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Wed Apr 4, 6:13 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 12:36 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Wed Apr 4, 2:38 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 2:56 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Wed Apr 4, 3:46 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 4:20 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Wed Apr 4, 6:50 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 7:59 pm)
Re: [LAD] NSM - handling large files, David Robillard, (Wed Apr 4, 9:22 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 10:45 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 8:13 pm)
Re: [LAD] NSM - handling large files, Joel Roth, (Fri Apr 6, 7:06 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Mon Apr 9, 3:28 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Mon Apr 9, 4:03 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Mon Apr 9, 4:35 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Mon Apr 9, 5:10 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 11, 12:43 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Wed Apr 11, 4:32 pm)
Re: [LAD] NSM - handling large files, Dave Phillips, (Wed Apr 11, 1:18 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 11, 1:37 pm)
Re: [LAD] NSM - handling large files, Renato, (Wed Apr 11, 2:31 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Fri Apr 6, 8:08 pm)
Re: [LAD] NSM - handling large files, Joel Roth, (Sun Apr 8, 5:38 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Wed Apr 4, 3:21 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Tue Apr 3, 5:34 pm)
Re: [LAD] NSM - handling large files, Louigi Verona, (Wed Apr 4, 8:12 am)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Wed Apr 4, 9:06 am)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Tue Apr 3, 1:35 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Tue Apr 3, 5:17 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Tue Apr 3, 9:42 am)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Thu Mar 29, 9:23 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Fri Mar 30, 1:48 am)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Fri Mar 30, 9:01 am)
Re: [LAD] NSM - handling large files, Paul Davis, (Fri Mar 30, 10:27 am)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Mon Apr 2, 4:12 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Mon Apr 2, 6:29 pm)
Re: [LAD] NSM - handling large files, Paul Giblock, (Mon Apr 2, 6:39 pm)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Mon Apr 2, 6:51 pm)
Re: [LAD] NSM - handling large files, Paul Giblock, (Mon Apr 2, 7:07 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Mon Apr 2, 7:11 pm)
Re: [LAD] NSM - handling large files, Thomas Vecchione, (Mon Apr 2, 7:34 pm)
Re: [LAD] NSM - handling large files, Tim Westbrook, (Mon Apr 2, 7:48 pm)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Mon Apr 2, 8:22 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Mon Apr 2, 5:17 pm)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Mon Apr 2, 6:29 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Mon Apr 2, 7:23 pm)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Mon Apr 2, 8:05 pm)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Tue Apr 3, 6:59 am)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Tue Apr 3, 7:05 am)
Re: [LAD] NSM - handling large files, Nils, (Tue Apr 3, 9:21 am)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Tue Apr 3, 1:44 pm)
Re: [LAD] NSM - handling large files, Louigi Verona, (Tue Apr 3, 2:18 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Tue Apr 3, 2:22 pm)
Re: [LAD] NSM - handling large files, rosea.grammostola, (Fri Mar 30, 8:03 am)
Re: [LAD] NSM - handling large files, David Robillard, (Thu Mar 29, 11:41 pm)
Re: [LAD] NSM - handling large files, J. Liles, (Fri Mar 30, 1:29 am)
Re: [LAD] NSM - handling large files, Emanuel Rumpf, (Fri Mar 30, 3:32 pm)
Re: [LAD] NSM - handling large files, Lieven Moors, (Fri Mar 30, 7:09 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Fri Mar 30, 8:53 pm)
Re: [LAD] NSM - handling large files, Lieven Moors, (Fri Mar 30, 10:13 pm)
Re: [LAD] NSM - handling large files, David Robillard, (Fri Mar 30, 9:57 pm)
Re: [LAD] NSM - handling large files, Thomas Vecchione, (Fri Mar 30, 9:14 pm)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Fri Mar 30, 9:28 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Fri Mar 30, 10:19 pm)
Re: [LAD] NSM - handling large files, Thomas Vecchione, (Fri Mar 30, 9:42 pm)
Re: [LAD] NSM - handling large files, David Robillard, (Fri Mar 30, 2:06 am)
Re: [LAD] NSM - handling large files, Louigi Verona, (Fri Mar 30, 6:20 am)
Re: [LAD] NSM - handling large files, Fons Adriaensen, (Thu Mar 29, 9:45 pm)
Re: [LAD] NSM - handling large files, Rui Nuno Capela, (Thu Mar 29, 10:40 pm)