Archive song format

From Buzztrax

Jump to: navigation, search

We need a bundled storage to store xml along with binaries.

libraries

libgsf made it.

libgsf

libgsf : Freshmeat page GNU FSF page API Docs

Examples

simple test example

libarchive

libarchive : Homepage

fuse

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
Support Us

Collaboration

GStreamer Logo
Become a Friend of GNOME
Linux Sound Logo
MediaWiki
Valgrind
GNU Library Public Licence
GNU Free Documentation License 1.2