Re: [LAD] Non Session Management

From: Emanuel Rumpf <xbran@email-addr-hidden>
Date: Wed Mar 28 2012 - 15:12:50 EEST

Am 28. März 2012 05:46 schrieb David Robillard <d@drobilla.net>:
> On Wed, 2012-03-28 at 03:27 +0200, Emanuel Rumpf wrote:
>> A second scenario
>>
>> The simple one (simple for the SM, not for the apps):
>>
>> - applications decide themself how to handle large-files
>> - but still tell the SM about all files currently used, when the
>> session is saved
>

> Files are files.  Size does not have any impact on how any of this has
> to work (aside from the fact that files could possibly be very large
> meaning redundant copies are not acceptable).  Trying to define a "small
> file" and "large file" category just makes everything more complicated
> for no particular reason.
>

> Why? What exactly is "large"?
> Just because a file is large doesn't
> mean I don't want it in a session. It is a requirement to be able to
> roll up a self-contained archive of a session *if* you want to.
>

The reason is simple and important:
Duplicating a session should be lightweight.
Lfiles _belong_ to _one or many different_ sessions, but they would
not be stored within the session folder.
Instead, a cloned session would contain references to _the same_ Lfiles,
as its original !
This means, no Lfiles are copied, just referenced, thus its a quick procedure.
This is no problem, if applications are non-destructive: If the clone
had to change
a file, it would create a copy in the Lfiles directory and use this
new reference.

For destructive apps, this woulde not work obviously and the SM would
have to duplicate their files in the Lfiles directory too.

What is a large-file ? (for a non-destructive app)
  Every file, that is not required to immediately become copied if a
session has to be cloned.
  Every file, where a reference is enough in the first place.

What is NO-large-file ?
  Data that is required to access large-files (references), or that is
lightweight (~below 1MB)
  (some config-values), or has to be read by the SM to initialize the client.

-- 
E.R.
_______________________________________________
Linux-audio-dev mailing list
Linux-audio-dev@lists.linuxaudio.org
http://lists.linuxaudio.org/listinfo/linux-audio-dev
Received on Wed Mar 28 16:15:02 2012

This archive was generated by hypermail 2.1.8 : Wed Mar 28 2012 - 16:15:02 EEST