Jitsi: the OpenSource Java VoIP and Instant Messaging client.

net.java.sip.communicator.impl.neomedia.codec.audio.silk
Class Silk_A2NLSF

java.lang.Object
  extended by net.java.sip.communicator.impl.neomedia.codec.audio.silk.Silk_A2NLSF_constants
      extended by net.java.sip.communicator.impl.neomedia.codec.audio.silk.Silk_A2NLSF

public class Silk_A2NLSF
extends Silk_A2NLSF_constants

Conversion between prediction filter coefficients and NLSFs. Requires the order to be an even number. A piecewise linear approximation maps LSF <-> cos(LSF). Therefore the result is not accurate NLSFs, but the two. function are accurate inverses of each other.

Author:
Jing Dai, Dingxin Xu

Field Summary
 
Fields inherited from class net.java.sip.communicator.impl.neomedia.codec.audio.silk.Silk_A2NLSF_constants
BIN_DIV_STEPS_A2NLSF_FIX, MAX_ITERATIONS_A2NLSF_FIX, OVERSAMPLE_COSINE_TABLE, QPoly
 
Constructor Summary
Silk_A2NLSF()
           
 
Method Summary
(package private) static int SKP_Silk_A2NLSF_eval_poly(int[] p, int x, int dd)
          Helper function for A2NLSF(..).
(package private) static void SKP_Silk_A2NLSF_init(int[] a_Q16, int[] P, int[] Q, int dd)
           
(package private) static void SKP_Silk_A2NLSF_trans_poly(int[] p, int dd)
          Helper function for A2NLSF(..).
(package private) static void SKP_Silk_A2NLSF(int[] NLSF, int[] a_Q16, int d)
          Compute Normalized Line Spectral Frequencies (NLSFs) from whitening filter coefficients.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Silk_A2NLSF

public Silk_A2NLSF()
Method Detail

SKP_Silk_A2NLSF_trans_poly

static void SKP_Silk_A2NLSF_trans_poly(int[] p,
                                       int dd)
Helper function for A2NLSF(..). Transforms polynomials from cos(n*f) to cos(f)^n.

Parameters:
p - Polynomial
dd - Polynomial order (= filter order / 2 )

SKP_Silk_A2NLSF_eval_poly

static int SKP_Silk_A2NLSF_eval_poly(int[] p,
                                     int x,
                                     int dd)
Helper function for A2NLSF(..). Polynomial evaluation.

Parameters:
p - Polynomial, QPoly
x - Evaluation point, Q12
dd - Order
Returns:
return the polynomial evaluation, in QPoly

SKP_Silk_A2NLSF_init

static void SKP_Silk_A2NLSF_init(int[] a_Q16,
                                 int[] P,
                                 int[] Q,
                                 int dd)

SKP_Silk_A2NLSF

static void SKP_Silk_A2NLSF(int[] NLSF,
                            int[] a_Q16,
                            int d)
Compute Normalized Line Spectral Frequencies (NLSFs) from whitening filter coefficients. If not all roots are found, the a_Q16 coefficients are bandwidth expanded until convergence.

Parameters:
NLSF - Normalized Line Spectral Frequencies, Q15 (0 - (2^15-1)), [d]
a_Q16 - Monic whitening filter coefficients in Q16 [d]
d - Filter order (must be even)

Jitsi: the OpenSource Java VoIP and Instant Messaging client.

Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under LGPL license.