view libtwamr/namespace.list @ 581:e2d5cad04cbf

libgsmhr1 RxFE: store CN R0+LPC separately from speech In the original GSM 06.06 code the ECU for speech mode is entirely separate from the CN generator, maintaining separate state. (The main intertie between them is the speech vs CN state variable, distinguishing between speech and CN BFIs, in addition to the CN-specific function of distinguishing between initial and update SIDs.) In the present RxFE implementation I initially thought that we could use the same saved_frame buffer for both ECU and CN, overwriting just the first 4 params (R0 and LPC) when a valid SID comes in. However, I now realize it was a bad idea: the original code has a corner case (long sequence of speech-mode BFIs to put the ECU in state 6, then SID and CN-mode BFIs, then a good speech frame) that would be broken by that buffer reuse approach. We could eliminate this corner case by resetting the ECU state when passing through a CN insertion period, but doing so would needlessly increase the behavioral diffs between GSM 06.06 and our version. Solution: use a separate CN-specific buffer for CN R0+LPC parameters, and match the behavior of GSM 06.06 code in this regard.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 13 Feb 2025 10:02:45 +0000
parents ebe499058c63
children
line wrap: on
line source

# This file is the source input for automatic generation of namespace.h
# for libtwamr.  Each word in every non-empty, non-comment line lists a
# function or a data object with intermodule linkage whose name needs to be
# transformed in order to avoid namespace pollution for users of our library.

Overflow Carry

add sub abs_s shl shr mult
L_mult negate extract_h extract_l round
L_mac L_msu L_macNs L_msuNs L_add L_sub L_add_c L_sub_c L_negate
mult_r L_shl L_shr shr_r mac_r msu_r
L_deposit_h L_deposit_l L_shr_r L_abs L_sat
norm_m div_s norm_l
L_Extract L_Comp Mpy_32 Mpy_32_16 Div_32
Mac_32 Mac_32_16

Inv_sqrt Log2 Log2_norm Pow2

A_Refl Autocorr Az_lsp
Bgn_scd Bgn_scd_reset
Convolve
Dec_gain Dec_lag3 Dec_lag6
D_plsf_reset D_plsf_5 D_plsf_3 Init_D_plsf_3
Enc_lag3 Enc_lag6 Ex_ctrl
G_code G_pitch
Int_lpc_1and3 Int_lpc_1and3_2 Int_lpc_1to3 Int_lpc_1to3_2
Int_lsf Interpol_3or6
Lag_window Levinson Levinson_reset
Lsf_lsp Lsp_lsf Reorder_lsf Lsf_wt Lsp_Az
Pitch_fr Pitch_fr_reset Pitch_ol Pitch_ol_wgh p_ol_wgh_reset
Pre_Process Pre_Process_reset Pred_lt_3or6
Post_Filter Post_Filter_reset Post_Process Post_Process_reset
Q_plsf_reset Q_plsf_3 Q_plsf_5 Qua_gain
Residu Syn_filt Weight_Ai

agc agc2 agc_reset
pseudonoise build_CN_code build_CN_param
sqrt_l_exp
set_sign set_sign12k2
cor_h cor_h_x cor_h_x2 comp_corr
cbsearch cl_ltp cl_ltp_reset ol_ltp
d_gain_code d_gain_pitch
gain_adapt gain_adapt_reset
gainQuant gainQuant_reset
gc_pred gc_pred_copy gc_pred_reset gc_pred_update gc_pred_average_limited
gmed_n hp_max
lpc lpc_reset lsp lsp_reset lsp_avg lsp_avg_reset
ph_disp ph_disp_reset ph_disp_lock ph_disp_release
pre_big preemphasis preemphasis_reset
q_gain_code q_gain_pitch
sid_sync sid_sync_reset sid_sync_set_handover_debt
ton_stab_reset check_lsp check_gp_clipping update_gp_clipping

cod_amr cod_amr_reset cod_amr_first
dtx_dec dtx_dec_reset dtx_dec_activity_update rx_dtx_handler
dtx_enc dtx_enc_reset dtx_buffer tx_dtx_handler
vad1 vad1_reset vad_complex_detection_update vad_tone_detection
vad_tone_detection_update vad_pitch_detection
vad2 vad2_reset r_fft LTP_flag_update vad_reset
Decoder_amr Decoder_amr_reset

Bits2prm Prm2bits

bitno prmno prmnofs gray dgray
window_200_40 window_160_80 window_232_8
qua_gain_pitch qua_gain_code
table_gain_highrates table_gain_lowrates table_gain_MR475

mean_lsf mean_lsf3
dico1_lsf dico2_lsf dico3_lsf dico4_lsf dico5_lsf
dico1_lsf3 dico2_lsf3 dico3_lsf3 mr515_3_lsf mr795_1_lsf
past_rq_init pred_fact
lsp_init_data

Cb_gain_average Cb_gain_average_reset
MR475_update_unq_pred MR475_gain_quant MR795_gain_quant
subframePreProc subframePostProc

calc_unfilt_energies calc_filt_energies calc_target_energy
code_2i40_9bits code_2i40_11bits code_3i40_14bits code_4i40_17bits
code_8i40_31bits code_10i40_35bits search_10and8i40
decode_2i40_9bits decode_2i40_11bits decode_3i40_14bits decode_4i40_17bits
dec_8i40_31bits dec_10i40_35bits
encoder_homing_frame_test
ec_gain_code_reset ec_gain_code ec_gain_code_update
ec_gain_pitch_reset ec_gain_pitch ec_gain_pitch_update

sort_475 sort_515 sort_59 sort_67 sort_74 sort_795 sort_102 sort_122
if1_pack_bytes if1_unpack_bytes