# SDIF TODO

Description | This document describes points to do in and around the IRCAM SDIF library.
URL | http://www.ircam.fr/anasyn/sdif/Todo.html
Revision | $Id: Todo.html,v 3.10 2001-03-01 13:27:15 schwarz Exp $
Last change |
Change log |
    $Log: not supported by cvs2svn $
    Revision 3.9  2001/03/01 11:18:33  schwarz
    Moved some important stuff into highest priority.
    Added "improvement of the SDIF library".
    Release done.

    Revision 3.8  2000/09/27 10:16:12  schwarz
    More todos.
    Enhanced download info.

    Revision 3.7  2000/08/27  15:19:52  schwarz
    Lots of stuff done.

    Revision 3.6  2000/08/22  16:33:53  schwarz
    Types points.

    Revision 3.5  2000/08/07  15:12:05  schwarz
    Cocoon is installed for groups now, more docs.

    Revision 3.4  2000/07/19  18:13:18  schwarz
    Matlab (writesdif): writing of text, int, float matrices according to type of matlab matrices

    Revision 3.3  2000/07/19  17:30:39  tisseran
    TODO: writesdif(Matlab): open multiple file
          writesdif(Matlab): write multiple matrix in frame
    DONE: 1NVT, 1TYP, 1IDS conformant to spec (19/07/200)

    Revision 3.2  2000/07/17  18:20:44  schwarz
    Todo documents have the right to decent formatting, too.

    Revision 3.1  2000/07/17  18:09:05  schwarz
    Added Todo.html, to remember what we still wanted to implement and what
    is already done.

## Contents

Highest Priority
Priority To Be Defined
Done

## Highest Priority

- improvement of the SDIF library
  - unified error handling (pseudo-exceptions by setjmp/longjmp?)
  - Matrix data structure
  - memory i/o
  - i/o function table (swap/native, memory/file)
- tools: unify flag for types file: use -T throughout
- Generate export symbols for Macintosh (from autoconf'ed sources)
- Get make and install of doc working under autoconf
- XML types
  - design DTD
  - standardise DTD

## Priority TBD

- PSOLA writing SDIF (in Matlab)
- automatic compression/decompression (pipe gzip or zlib)
- write all standard/IRCAM document description types in XML
- update SDIF text format
  - Text matrices for sdiftotext/tosdif
  - stream IDs for ASCII chunks
  - less restrictive nvt values (allow spaces, etc.)
- Redefine Chant description type
- upgrade, recompile, install chant, modres (fix padding bug!)
- column reordering functions for selection
- implement SDIF directory
- SdifFReadNextSelectedFrame
- Types:
  - put used types in 1TYP frame -> files independent from sdiftypes.styp
  - ability to merge/replace types to default types (-T option)
- Matlab
  - writesdif: writing of text, int, float matrices according to type of matlab matrices
  - open multiple files
- Java-SDIF
  - start with simple version like Matlab-SDIF
- Make: generate version info (date, user, host) on build of programs and lib
- Distrib: make, package bin/src releases for all architectures
- High level writing:

           SdifFNewFrame (file, framesig, time, streamid);
           SdifFAddMatrix_TYPE_ (file, matrixsig, nrow, ncol, _TYPE_ *data);
           SdifFAddMatrix_TYPE_Columns (file, matrixsig, nrow, ncol, _TYPE_ *columns[]);
           SdifFWriteFrame (file);

- install sdif tools under alternative names (hard links): sdifquery, texttosdif
- SDIF mailing list: archives; subscribe, unsubscribe from web form

## Done

- Fix Diphone SDIF output frame size bug (July 2000)
- 1NVT, 1TYP, 1IDS conformant to spec (19/07/2000)
  - -> send to Matt
  - update Diphone studio
- XML types
  - translator to .styp, HTML (27.07.2000)
  - convert all .styp definitions to xml (09.08.2000)
  - add all doc we can get hold of to sdiftypes.xml (22.08.2000)
- Release (22.08.2000)
  - use autoconf / configure
  - clean up makefiles, directories:
    - all programs in one directory
    - no more wrappers
  - official GPL in files
  - create test cases
  - reinstall current versions of tools on all systems
  - Test release
  - publish binary releases
- Matlab (26.08.2000)
  - writesdif: write multiple matrix in frame
  - loadsdif: Bug: last matrix is not returned!
- Instructions for mailing list on sdif main page (01.03.2001)