diff --git a/apps/decoder.c b/apps/decoder.c index 9a20474542dd7c9c05aec360909f544ebb6c735a..943b798d5b3691a6c136fe65d99f8112e4e896fa 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 1da007ad696ce783ca058ae3d0c182302c9e4036..05fd770666d6ce502f8e9902402798e400305204 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 0321a6495e844d29287aad94af717284417e336c..3687d0e236e3fb5a29e84fc9b3629c86519a9031 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 3f8a2f02c741d3d028c72b5954eed5c5e9535d06..726d0a480da3f217e20ad321a531bf877d30b889 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