OpusTodo

From XiphWiki
Revision as of 12:03, 2 September 2011 by Jmspeex (talk | contribs)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Code

For IETF draft

  • Code cleanup
    • Remove SKP_ prefixes
    • remove silk_ prefixes in file names
    • s/libcelt/celt/ ?
  • Multi-channel signalling (done, needs more testing)
  • Implement OPUS_RESET (done, untested)

SILK issues

  • PLC buffer not fully initialized (fix needs verifying)
  • Mid and side using different sampling rates (fix needs verifying)
  • LLBR stereo issue (has a proposed fix)
    • Introduces prefill bug (fixed on greg's tree)
  • Artefacts on SILK mono<->stereo switching
  • Artefacts on SILK frame size switching (e.g. 960,480 glitches)
  • Use of signed overflow (undefined in C), intentionally and otherwise.
  • Encoder triggers DTX randomly (even if not enabled) for 40/60 ms stereo frames

Later

  • Exposed CELT constrained VBR
  • Fixed-point build
  • Fix build system (right now it fails to build shared libraries, drops .o files all over)
  • Floating point API
  • Usable command-line tools (opus is a major regression from libcelt right now)
  • Smart automatic mode decision
  • psymodel based VBR
  • Remove copy in inverse MDCT
  • Save some float<->int conversions

Spec

  • Finish codec draft
  • Ogg mapping (including multi-channel). See: OggOpus
  • RTP payload format

Other

  • Logo
  • Test vectors
  • Listening tests
  • Documentation (at a minimum every exported symbol should have complete and accurate documentation)
  • Add content to opus-codec.org
  • Oggz-validate (should also validate opus toc)
    • The above documentation
    • Presentations
    • Examples and test results (hyperlink to Monty's demo, gmaxwell's HA results page, etc)
  • Useful example software (e.g. streaming software that works correctly) (opus-tools in xiph git)
    • Support for resampling in tools

Third party software

  • Support in ekiga
  • Support in mumble
  • Support in asterisk
  • Support in firefox (rtcweb and in ogg)
  • Support in VLC
  • Support in ogg123
  • Support in ffmpeg
  • Support in rockbox
  • Support in foobar2000
  • Support in gstreamer
  • Support in mplayer
  • Support in xmms
  • Support in oggdsf
  • Support in xiphqt