On Sun, 2012-03-11 at 14:58 +0100, Christian Schoenebeck wrote:
> On Saturday 10 March 2012 19:52:21 David Robillard wrote:
> > > > > Those are so called "extension files" of the Giga format. Those were
> > > > > introduced by Tascam to circumvent the 2GB file size limit of the
> > > > > RIFF format, on which the Giga format is based on.
> > > > > 
> > > > > See method:
> > > > > 
> > > > > void File::LoadSamples(progress_t* pProgress);
> > > > > 
> > > > > in src/gig.cpp of the libgig sources.
> > > > 
> > > > Thanks.  I'll wade around and figure out how to get at this information
> > > > from LS.
> > > 
> > > You mean how to retrieve in the LV2 plugin code whether a .gig file
> > > "wants" extensions files and the list of those extension files? Or what
> > > else do you need exactly?
> > 
> > Yes, essentially I need to enumerate *all* files that are used.
> 
> Really? What is the purpose to enumerate all used files in the LV2 session? 
> Because from sampler perspective, only the "main" instrument file name has to 
> be passed when loading a session. The sampler (or in this case libgig) will 
> then automatically detect and retrieve the list of extension files from the 
> main gig file and load the extension files automatically.

Because the host needs to know where all the files are to make session
archival possible.

The Lilv (and thus Ardour) implementation, for example, makes symlinks
to all those files in the session directory, and the plugin state refers
to those instead.  That way all external file references are transparent
and you can make a deep archive with tar -h.  This is so, e.g., I can
roll up a session I've been working on, send it to you, and it will
actually work; or when you're finished a piece you can archive it and be
sure all the component bits are archived along with it.

> Anyway, if you really need to enumerate all files, tell me, then I will patch 
> libgig for this task.

That would be great, thanks.

-dr



------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Linuxsampler-devel mailing list
Linuxsampler-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel

Reply via email to