SILK is a vocoder designed by Skype for wideband audio in Voice over IP (VoIP). It operates at four different sampling rates (8 kHz narrowband, 12 kHz mediumband, 16 kHz wideband, and 24 kHz superwideband) to allow for the capture of higher frequencies, which provide fuller sound, while also allowing interoperability with the Public Switched Telephone Network (PSTN). SILK has automatic detection of superwideband audio and can downsample to wideband if there is no benefit to the inclusion of the higher frequencies.
SILK has a variable bitrate that can be set between 6 and 40 kbps, with higher bitrates providing better sound quality due to less quantization noise. SILK operates on 20 ms frames with a 5ms look ahead which causes a 25 ms algorithmic delay. The compressed audio is contained in packets of 20, 40, 60, 80 or 100 ms. Larger packets can provide a lower effective bitrate due to IP overhead per packet and certain parameters being conditionally encoded after the first frame per packet. Larger packets also cause longer delays and are more prone to errors due to lost packets. SILK has Low Bite Rate Redundancy (LBRR), also called Forward Error Correction (FEC), which makes it robust to packet loss.
SILK has three complexity settings: low, medium, and high. These control the order of the filters used for pitch estimation and noise shaping ans the number of stages used in the quantization of the noise shape parameters, the Long Term Prediction (LTP) coefficients, and the Normalized Line Spectral Frequencies (NLSF). This allows SILK to take advantage of today's powerful processors while not abandoning older processors.
SILK is optimized for execution in ANSI C and on leading DSP architectures (TI, ADI, AMD, ARM, MIPS, CEVA, LSI Logic ZSP, etc.), and can be integrated with our G.168 echo canceler, acoustic echo canceler, noise reduction algorithms, or any other telephony product.