OpusTodo

From XiphWiki
Revision as of 13:13, 3 May 2013 by Jmspeex (talk | contribs)
Jump to navigation Jump to search

1.1-beta

  • Tune mode switching decisions
    • Use SILK up to higher rates on voice
    • Adapt stereo SILK/CELT threshold based on stereo width
  • Tune hybrid rate allocation?
  • Figure out how to use speech/music detection optimally
    • find optimal switching time (low energy/tonality)
  • Improve variable frame size
  • Tune transient detector?
  • Use ALLOC in tonality analysis
  • LOTS of testing

Spec

Website

  • De-uglify webpage - some suggestions: write about codecs obsoleted by OPUS (Speex, CELT, Vorbis(?), and the prop. ones), write about implementations (is there only one so far?), comparison table (Opus, Vorbis, Speex, ..., MP5) of features (channels, freq, bits per sample, license, language (C89), integer impl. (Vorbis decoder only, Opus YES, ...), future use in video files (Theora? Dirac? WebM? other future codecs...), audio files for storage (like Vorbis, no raw Opus defined, only inside OGG), ...
  • Promotional material (some nice free or Public domain sounds in Opus format)

Other

  • Oggz-validate (should also validate opus toc)

Opus-tools

  • A simple real time streaming example tool
  • Replaygain (half done— needs a gain tool)

Surround work

  • Apply spreading to energy masking
  • More conservative energy masking (not just mean difference) and dynalloc
  • Allow SILK/hybrid on center channel for voice?

Psychoacoustic stuff

  • Adaptive width narrowing and forced intensity stereo bands

Experiments

  • Test exp_analysis and void_my_warranty.patch

Future work

  • psymodel based VBR
  • Remove copy in inverse MDCT
  • Save some float<->int conversions
  • Improvements to LP mode CBR (greg has some code)
  • Better handling for the case where FEC has a different bandwidth than the current mode
  • PLC transitions on unprotected SILK-SILK bandwidth changes?