Archive song format
From Buzztrax
We need a bundled storage to store xml along with binaries.
Contents |
libraries
libgsf made it.
libgsf
libgsf : Freshmeat page GNU FSF page API Docs
Examples
libarchive
libarchive : Homepage
fuse
- avf: archive fuse fs
- archivemount : libarchive based fuse fs
- fuse-api to use to mount
- we can check for fuse via pkg-config (its called 'fuse'), my ubuntu has 2.7.0
minizip
http://www.winimage.com/zLibDll/minizip.html
We could statically include this and define a highlevel api. It this operates in memory we can use gnomevfs or simmilar to support fetching the file from elsewhere.
loading
// first fill zip_buffer from file or stream handle = zip_open_read (zip_buffer, buffer_length); file_buffer = zip_read (handle,file_path, &buffer_length); zip_close (handle);
saving
handle = zip_open_write(&zip_buffer, &zip_length) zip_write (handle, file_buffer, buffer_length) zip_close (handle); // now send zip_buffer to file or stream
structure
song.bzt
song.xml
wavetable
beat.wav
cliptable
zoom.avi
star.png
plugins
x86
kick.so
- allow to disable storing plugins
- song loading need plugin-fetch mechanism anyway



