From f20191d1a53aa16d0878bd3520ea7c5fb060a5a3 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Thu, 21 Aug 2025 15:53:47 +0200 Subject: [PATCH 1/2] port float MR 2198 --- apps/decoder.c | 15 ++++++++++++++- lib_com/options.h | 1 + lib_dec/jbm_pcmdsp_apa_fx.c | 11 +++++++++++ readme.txt | 5 +++-- 4 files changed, 29 insertions(+), 3 deletions(-) diff --git a/apps/decoder.c b/apps/decoder.c index 9a2047454..943b798d5 100644 --- a/apps/decoder.c +++ b/apps/decoder.c @@ -1598,6 +1598,18 @@ static bool parseCmdlIVAS_dec( return false; } +#ifdef SUPPORT_JBM_TRACEFILE + /* Validate options that depend on other options */ + if ( arg->jbmTraceFilename != NULL && arg->delayCompensationEnabled + /* This decMode check should be removed once timestamp sync issues between JBM trace and audio are fixed in EVS */ + && arg->decMode != IVAS_DEC_MODE_EVS ) + { + fprintf( stderr, "Error: Writing to a JBM trace file requires delay compensation to be disabled with -no_delay_cmp\n\n" ); + usage_dec(); + return false; + } +#endif + return true; } @@ -1634,7 +1646,8 @@ static void usage_dec( void ) fprintf( stdout, " EVS RTP Payload Format. The SDP parameter hf_only is required.\n" ); fprintf( stdout, " Reading RFC4867 AMR/AMR-WB RTP payload format is not supported.\n" ); #ifdef SUPPORT_JBM_TRACEFILE - fprintf( stdout, "-Tracefile TF : VoIP mode: Generate trace file named TF\n" ); + fprintf( stdout, "-Tracefile TF : VoIP mode: Generate trace file named TF. Requires -no_delay_cmp to\n" ); + fprintf( stdout, " be enabled so that trace contents remain in sync with audio output.\n" ); #endif fprintf( stdout, "-fr L : render frame size in ms L=(5,10,20), default is 20)\n" ); fprintf( stdout, "-fec_cfg_file : Optimal channel aware configuration computed by the JBM \n" ); diff --git a/lib_com/options.h b/lib_com/options.h index 1da007ad6..3f0df8d9d 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -64,6 +64,7 @@ #endif /*#define DISABLE_LIMITER*/ +/*#define DEBUG_APA_SILENCE_NON_SCALED*/ /* Switch APA into mode that replaces contents of non-scaled frames with silence. Useful for identifying scaled regions in the audio output of the decoder */ /* #################### End DEBUGGING switches ############################ */ diff --git a/lib_dec/jbm_pcmdsp_apa_fx.c b/lib_dec/jbm_pcmdsp_apa_fx.c index 0321a6495..3687d0e23 100644 --- a/lib_dec/jbm_pcmdsp_apa_fx.c +++ b/lib_dec/jbm_pcmdsp_apa_fx.c @@ -877,6 +877,17 @@ UWord8 apa_exec_fx( move32(); } +#ifdef DEBUG_APA_SILENCE_NON_SCALED + IF( l_in == *l_out ) + { + set_s( a_out, 0, *l_out ); + } + ELSE + { + set_s( a_out, INT16_MAX, *l_out ); + } +#endif + return 0; } diff --git a/readme.txt b/readme.txt index 3f8a2f02c..726d0a480 100644 --- a/readme.txt +++ b/readme.txt @@ -279,7 +279,8 @@ Options: The decoder may read rtpdump files containing TS26.445 Annex A.2.2 EVS RTP Payload Format. The SDP parameter hf_only is required. Reading RFC4867 AMR/AMR-WB RTP payload format is not supported. --Tracefile TF : VoIP mode: Generate trace file named TF +-Tracefile TF : VoIP mode: Generate trace file named TF. Requires -no_delay_cmp to + be enabled so that trace contents remain in sync with audio output. -fec_cfg_file : Optimal channel aware configuration computed by the JBM as described in Section 6.3.1 of TS26.448. The output is written into a .txt file. Each line contains the FER indicator @@ -625,4 +626,4 @@ Example renderer configuration files are available, e.g.: rend_rend_config_hospital_patientroom.cfg rend_config_recreation.cfg -rend_config_renderer.cfg \ No newline at end of file +rend_config_renderer.cfg -- GitLab From 5a05ffaf54b84522a6e18a2f462001f43020fe41 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Thu, 21 Aug 2025 19:51:36 +0200 Subject: [PATCH 2/2] whitespace --- lib_com/options.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib_com/options.h b/lib_com/options.h index 3f0df8d9d..05fd77066 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -64,7 +64,7 @@ #endif /*#define DISABLE_LIMITER*/ -/*#define DEBUG_APA_SILENCE_NON_SCALED*/ /* Switch APA into mode that replaces contents of non-scaled frames with silence. Useful for identifying scaled regions in the audio output of the decoder */ +/*#define DEBUG_APA_SILENCE_NON_SCALED*/ /* Switch APA into mode that replaces contents of non-scaled frames with silence. Useful for identifying scaled regions in the audio output of the decoder */ /* #################### End DEBUGGING switches ############################ */ -- GitLab