Version 4 (modified by zorg, 18 years ago) (diff)


Proposed roadmap for Musepack

1. Code cleanup and restructuration

  1. Split mppenc in 3 parts :
    no nead to be able to compile mppenc, but libs must compile and have clear entry points and structs
    • libmpcpsy (name ?) for the psyco-acoustic model
    • libmpcenc for pqf filtering, quantization , entropy coding and stream formating
    • mppenc (mpcenc ? name ?) for command line utility
  2. Make a minimal mppenc using libmpcenc and lipmpcpsy and .wav input (from another lib ?). 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 fftw lib for libmpcpsy

2. First sv8 steps

  • define sv8 needs
  • write bitstream and decoding specs for sv8
  • add sv8 to libmpcenc / libmpcdec
  • create an utility to convert sv7 => sv8 using libmpcdec / libmpcenc
  • maybe release sv8.0 at this point
  • ensure stream is packetizable to allow muxing into alternative 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 make old encodes obsolete)
  • Change core compression : make use of transform, state of the art compression tools. This time compatibility is totaly broken. Once done release sv8.2 ?

Thanks for adds, comments