wiki:ProposedRoadmap

Proposed roadmap for Musepack

1. Code cleanup and restructuring

  1. Split mppenc into 4 parts :
    no nead to be able to compile mppenc, but libs must compile and have clear entry points and structs
    • libmpcpsy for the psycoacoustic model
    • libmpcenc for pqf filtering, quantization, entropy coding and stream formatting
    • libreplaygain for replay gain calculation
    • mppenc (name: mpcenc) for command line utility
  2. Make a minimal mppenc using libmpcenc, lipmpcpsy and .wav input (using libwavformat). Encoding must be the same as 1.15w bit for bit (without tags).
  3. Code cleanup :
    • rewrite mppenc from old code and use libs as much as possible (taglib, ...)
    • code cleanup : remove all unused / commented code, look for duplicated code, use faster fft lib for libmpcpsy (must be under LGPL, BSD or similar license)

2. First sv8 steps

  • define sv8 needs
  • write bitstream and decoding specs for sv8
  • add sv8 to libmpcenc / libmpcdec
  • create a utility to convert sv7 => sv8 using libmpcdec / libmpcenc
  • maybe release sv8.0 at this point
  • mux sv8 frames into other containers (mka, mp4, nut)
  • try to improve entropy coding of current stream. release sv8.1 if successful, update the convert utility

3. Improving sv8, the incompatible way

untill this point, conversion from from sv7 to sv8 was lossless.

  • Improve lipmpcpsy if possible (doesn't break compatibility, but makes old encodes obsolete)
  • Change core compression : attempt to make good use of new transform compression tools. This time compatibility is totaly broken. Once done release sv8.2 ?

Thanks for additions/comments

Last modified 12 years ago Last modified on 10/06/06 23:55:04