#include <ac3dsp.h>
 | 
| void(*  | ac3_exponent_min )(uint8_t *exp, int num_reuse_blocks, int nb_coefs) | 
|   | Set each encoded exponent in a block to the minimum of itself and the exponents in the same frequency bin of up to 5 following blocks.  More...
  | 
|   | 
| void(*  | float_to_fixed24 )(int32_t *dst, const float *src, size_t len) | 
|   | Convert an array of float in range [-1.0,1.0] to int32_t with range [-(1<<24),(1<<24)].  More...
  | 
|   | 
| void(*  | bit_alloc_calc_bap )(int16_t *mask, int16_t *psd, int start, int end, int snr_offset, int floor, const uint8_t *bap_tab, uint8_t *bap) | 
|   | Calculate bit allocation pointers.  More...
  | 
|   | 
| void(*  | update_bap_counts )(uint16_t mant_cnt[16], uint8_t *bap, int len) | 
|   | Update bap counts using the supplied array of bap.  More...
  | 
|   | 
| int(*  | compute_mantissa_size )(uint16_t mant_cnt[6][16]) | 
|   | Calculate the number of bits needed to encode a set of mantissas.  More...
  | 
|   | 
| void(*  | extract_exponents )(uint8_t *exp, int32_t *coef, int nb_coefs) | 
|   | 
| void(*  | sum_square_butterfly_int32 )(int64_t sum[4], const int32_t *coef0, const int32_t *coef1, int len) | 
|   | 
| void(*  | sum_square_butterfly_float )(float sum[4], const float *coef0, const float *coef1, int len) | 
|   | 
| int  | out_channels | 
|   | 
| int  | in_channels | 
|   | 
| void(*  | downmix )(float **samples, float **matrix, int len) | 
|   | 
| void(*  | downmix_fixed )(int32_t **samples, int16_t **matrix, int len) | 
|   | 
Definition at line 34 of file ac3dsp.h.
 
◆ ac3_exponent_min
      
        
          | void(* AC3DSPContext::ac3_exponent_min) (uint8_t *exp, int num_reuse_blocks, int nb_coefs) | 
        
      
 
Set each encoded exponent in a block to the minimum of itself and the exponents in the same frequency bin of up to 5 following blocks. 
- Parameters
 - 
  
    | exp | pointer to the start of the current block of exponents. constraints: align 16  | 
    | num_reuse_blocks | number of blocks that will reuse exponents from the current block. constraints: range 0 to 5  | 
    | nb_coefs | number of frequency coefficients.  | 
  
   
Definition at line 44 of file ac3dsp.h.
 
 
◆ float_to_fixed24
Convert an array of float in range [-1.0,1.0] to int32_t with range [-(1<<24),(1<<24)]. 
- Parameters
 - 
  
    | dst | destination array of int32_t. constraints: 32-byte aligned  | 
    | src | source array of float. constraints: 32-byte aligned  | 
    | len | number of elements to convert. constraints: multiple of 32 greater than zero  | 
  
   
Definition at line 57 of file ac3dsp.h.
 
 
◆ bit_alloc_calc_bap
      
        
          | void(* AC3DSPContext::bit_alloc_calc_bap) (int16_t *mask, int16_t *psd, int start, int end, int snr_offset, int floor, const uint8_t *bap_tab, uint8_t *bap) | 
        
      
 
Calculate bit allocation pointers. 
The SNR is the difference between the masking curve and the signal. AC-3 uses this value for each frequency bin to allocate bits. The snroffset parameter is a global adjustment to the SNR for all bins.
- Parameters
 - 
  
    | [in] | mask | masking curve  | 
    | [in] | psd | signal power for each frequency bin  | 
    | [in] | start | starting bin location  | 
    | [in] | end | ending bin location  | 
    | [in] | snr_offset | SNR adjustment  | 
    | [in] | floor | noise floor  | 
    | [in] | bap_tab | look-up table for bit allocation pointers  | 
    | [out] | bap | bit allocation pointers  | 
  
   
Definition at line 74 of file ac3dsp.h.
 
 
◆ update_bap_counts
      
        
          | void(* AC3DSPContext::update_bap_counts) (uint16_t mant_cnt[16], uint8_t *bap, int len) | 
        
      
 
Update bap counts using the supplied array of bap. 
- Parameters
 - 
  
    | [out] | mant_cnt | bap counts for 1 block  | 
    | [in] | bap | array of bap, pointing to start coef bin  | 
    | [in] | len | number of elements to process  | 
  
   
Definition at line 85 of file ac3dsp.h.
 
 
◆ compute_mantissa_size
      
        
          | int(* AC3DSPContext::compute_mantissa_size) (uint16_t mant_cnt[6][16]) | 
        
      
 
Calculate the number of bits needed to encode a set of mantissas. 
- Parameters
 - 
  
    | [in] | mant_cnt | bap counts for all blocks  | 
  
   
- Returns
 - mantissa bit count 
 
Definition at line 93 of file ac3dsp.h.
 
 
◆ extract_exponents
◆ sum_square_butterfly_int32
◆ sum_square_butterfly_float
      
        
          | void(* AC3DSPContext::sum_square_butterfly_float) (float sum[4], const float *coef0, const float *coef1, int len) | 
        
      
 
 
◆ out_channels
      
        
          | int AC3DSPContext::out_channels | 
        
      
 
 
◆ in_channels
      
        
          | int AC3DSPContext::in_channels | 
        
      
 
 
◆ downmix
◆ downmix_fixed
The documentation for this struct was generated from the following file: