CELT/IETF

From XiphWiki
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.


Intro

  • CELT description and design goals
  • CELT RTP profile
  • Open issues

About CELT

  • Two types of codecs
    • Speech codecs with low-medium quality and low delay
    • Music codecs with high quality and high delay
  • CELT aims for both high quality and very low delay
  • Perceptual transform (MDCT) codec
  • Developped within the Xiph.Org Foundation
  • Reference implementation is open source (BSD-licensed)
  • No royalties, avoids known patents in the field

Why low delay?

  • Low delay is critical to live interactions
    • Prevents collisions during conversations (higher sense of presence)
    • Reduces or remove the need for acoustic echo cancellation
    • Allows synchronization for live music performance
  • Increased range
    • 1ms reduction = 200 km more in fiber

CELT features

  • Sampling rates from 32 kHz to 48 kHz
  • Total algorithmic delay from 2ms to 20 ms (8 ms typical)
  • Configurable frame size from 64 samples to 512 samples
  • Bit-stream not frozen yet

Comparison with existing codecs

  • Summary of quality figures, along with delay and bit-rate

draft -- Important Facts

  • The bit-rate is implicitly encoded in the size of the compressed data
  • The decoder must know:
    • The frame size (decompressed samples) being transmitted
    • The size of each compressed packet

RTP

  • Lacing values and all?

SDP

  • SDP parameters
    • ptime
    • b=AS: ?
  • CELT-specific parameters
    • frame-size=
    • mapping=
    • low-overhead=

Examples

Open issues

  • Need to negotiate the frame size
  • CELT would be more flexible with configuration data (~100 bytes)
    • Configuration packet transmitted at regular interval
    • Incrmentally tramsmitted (one byte at a time)
    • base64-encoded in SDP parameters

Future work

  • Freeze the bit-stream
  • Complete RTP profile
  • Possible standardization (IETF or other)