1 / 15

Understanding the Internet Low Bit Rate Coder

Understanding the Internet Low Bit Rate Coder. Jan Linden Vice President of Engineering Global IP Sound Presented by Jan Skoglund Sr. Research Scientist Global IP Sound. iLBC – Background info. Development started in Summer 2000 Contributed to IETF as an internet draft in Feb 2002

armen
Download Presentation

Understanding the Internet Low Bit Rate Coder

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Understanding the Internet Low Bit Rate Coder Jan LindenVice President of Engineering Global IP Sound Presented by Jan Skoglund Sr. Research Scientist Global IP Sound

  2. iLBC – Background info • Development started in Summer 2000 • Contributed to IETF as an internet draft in Feb 2002 • Accepted as work item in IETF AVT group Mar 2002 • Contributed to CableLabs RFP in June 2002 • Improved version to IETF, Fall 2002 • ECR submitted in May 2003 • Support for 20 ms frames spring 2003 • Successful interoperability events • Past Working Group Last call in IETF Jan 2004 • April 2004 added as a mandatory codec in PacketCable 1.1 • December 2004 IETF process finalized (became Experimental RFC 3951 and 3952)

  3. Design Principles • Free of 3rd party IPR • extensive experience in speech coding patents by design team • patent and research situation monitored since 2000 • has been public in IETF since March 2002 and reviewed by independent speech coding researchers • Packet independency • no coding interdependency between frames • increased packet loss robustness • suitable for IP networks • Linear Predictive Coding • well know highly successful coding model • novel coding techniques of residual signal

  4. iLBC Features • Sampling Rate: 8 kHz • Supports 30 ms and 20 ms speech frame modes • Bitrate • 13.3 kbps (399 bits, packetized in 50 bytes) for 30 ms frames • 15.2 kbps (303 bits, packetized in 38 bytes) for 20 ms frames • Computational complexity (TI C54x) • 30 ms frames: appr. 18 MIPS/channel • 20 ms frames: appr. 15 MIPS/channel • Memory • 400 Words/channel state memory (RAM) • less than 4 kWords table memory (ROM) • Stack and program memory requirements similar to other low bit rate codecs (e.g. G.729A)

  5. The Core iLBC method • Start state encoding • Gain-shape waveform matching forward in time • Gain-shape waveform matching backward in time • Pitch enhancement • Packet loss concealment

  6. iLBC Encoding Incoming speech Packets to network

  7. iLBC Decoding Decoded speech Packets from network

  8. 20 ms vs 30 ms sub-blocks • 20 ms frame size mode - 4 sub-blocks with the total length of 160 samples • 30 ms frame size mode - 6 sub-blocks with the total length of 240 samples

  9. 240 samples encoded to 399 bits = 13.3 kbit/s (50 oct) 20 ms vs 30 ms mode – bit allocation 160 samples encoded to 303 bits = 15.2 kbit/s (38 oct)

  10. Advantage over CELP original iLBC g729 g723 State recovery PLC

  11. iLBC Performance vs G.729A & G.723.1old version from Winter 2002 Source: Dynastat

  12. iLBC Performance • Equivalent or slightly lower performance than G.729E in clean. • Improved robustness to packet loss compared to G.729E. • iLBC showed better than G.728 in other testing.

  13. Fixed Point Source Floating Point Source DSP Source Implementation • Significant signal processing skills necessary • Quality / efficiency trade-off • ~ 6 Months • Optimization skills • ~ 4 Months

  14. iLBC Specifications • Available in floating point , fixed point ANSI C, TIc54x, TIc55x, TIc64x,… • Supports 20 and 30 ms speech frames • Algorithmic delay: Same as frame size • Sampling Rate: 8 kHz • Bit rate: 13.333 kpbs for 30ms and 15.2 kpbs for 20ms Memory in kWord16

More Related