From XiphWiki
Jump to navigation Jump to search

Short term CELT TODO

Updated version with these features

  • Allocation out of bounds memory access patch (done: 3b34e188ede286d7a4ecc9fdf66831397a352cb3)
  • Denorm fixes (done: de1fd28740a33930b661a64a0ca52bd7c32fa20e)
  • 96kHz support (done: 179206a5ac6079470f53d2c231264aa40783e63f)
  • Merging of the last band if it's 20% of the prior band size or smaller (not done yet)
  • Celtclient fixes (done: ae2fb591b89a8a5cc29fcb89fc53639ebfe84314)
  • Celtclient proper UI (easy, but not done)
  • Celtclient selective building (screw you autotools; not done)
  • Activity interface (started: 06768a7fe7fb3368a00b03540cb9ec83f321005f)
  • Lowpass intelligence (not decided how this should work)
    • Lowpass as a function of sample rate?
    • Lowpass as a function of bytes/frame? Bitrate? Bitrate is problematic because the mode doesn't know the bitrate, although I feel this would be best.
  • Merge of raw bits (done: 241b5f0c4506f4d01611c98f296a8c337c2f1f4c)
    • bit to uint changes for mode bits (done: 363be091b32324d4b552109b5c174d9b304e18d1)
  • Fully tested

CELT regular testplan

  • In both --fixed-point and floating point mode
    • Using a single very short test file:
      • testcelt in valgrind at frame sizes of 64,128,256, 512, with all supported sample rates
    • Using a collection of a 8 samples for PEAQ testing plus 8 torture samples:
      • testcelt in valgrind at 64,128,256, 512 at 32,44.1,48, and 96kHz, at 8,20,40,60,80,100,200 bytes/frame
      • Collect PEAQ results on PEAQ test samples (?)
  • PEAQ scan - Collection of 8 PEAQ test files (takes ~16 CPU days)
    • In both LC and normal mode at 48kHz PEAQ results for every framesize and byte/frame combination


Candidates for assert instrumentation:

  • enc_bits/enc_uint should range check their inputs