From f7bc950db90fb35ed9f9544556f2d2bc150cf660 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Thu, 21 Aug 2025 15:39:42 +0200 Subject: [PATCH 1/2] port float MR 2198 --- apps/decoder.c | 15 ++++++++++++++- lib_com/options.h | 1 + lib_dec/jbm_pcmdsp_apa.c | 11 +++++++++++ readme.txt | 3 ++- 4 files changed, 28 insertions(+), 2 deletions(-) diff --git a/apps/decoder.c b/apps/decoder.c index 59aacd9a9..9a5ad73bc 100644 --- a/apps/decoder.c +++ b/apps/decoder.c @@ -1817,6 +1817,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; } @@ -1853,7 +1865,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 #ifdef DEBUGGING #ifdef VARIABLE_SPEED_DECODING diff --git a/lib_com/options.h b/lib_com/options.h index f2e9c8043..9f0ed5e0e 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -142,6 +142,7 @@ #endif /* DEBUGGING */ /*#define DISABLE_LIMITER*/ /* disable the limiter - needed for testing Bitexactness between different renderer framings */ +/*#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.c b/lib_dec/jbm_pcmdsp_apa.c index 3305a1e48..e2555a234 100644 --- a/lib_dec/jbm_pcmdsp_apa.c +++ b/lib_dec/jbm_pcmdsp_apa.c @@ -725,6 +725,17 @@ uint8_t apa_exec( ps->nFramesSinceSetScale >>= statsResetShift; } +#ifdef DEBUG_APA_SILENCE_NON_SCALED + if ( l_in == *l_out ) + { + set_zero( a_out, *l_out ); + } + else + { + set_f( a_out, (float) INT16_MAX, *l_out ); + } +#endif + return 0; } diff --git a/readme.txt b/readme.txt index b79ac9f0b..f2c92aa42 100644 --- a/readme.txt +++ b/readme.txt @@ -278,7 +278,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 -- GitLab From f95187091286a003fe0d364e801d8519988189d9 Mon Sep 17 00:00:00 2001 From: Markus Multrus Date: Thu, 21 Aug 2025 19:50:55 +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 84bd559ca..19b8f60c1 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -142,7 +142,7 @@ #endif /* DEBUGGING */ /*#define DISABLE_LIMITER*/ /* disable the limiter - needed for testing Bitexactness between different renderer framings */ -/*#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