Loading CMakeLists.txt +1 −2 Original line number Diff line number Diff line Loading @@ -208,8 +208,7 @@ endif() if(INCLUDE_SPLIT) if(NOT WMOPS) file(GLOB unitTestIvasLc3plusSrcs "scripts/split_rendering/lc3plus/*.c") add_executable(ivas_lc3plus_unit_test ${unitTestIvasLc3plusSrcs}) add_executable(ivas_lc3plus_unit_test ${CMAKE_SOURCE_DIR}/scripts/split_rendering/lc3plus/ivas_lc3plus_unit_test.c) target_link_libraries(ivas_lc3plus_unit_test lib_rend lib_dec lib_util lib_com lib_debug) endif() endif() Loading lib_com/options.h +5 −0 Original line number Diff line number Diff line Loading @@ -157,6 +157,9 @@ #define FIX_891_PARAMUPMIX_CLEANUP /* Dlb: issue 891: remove unneeded code from ParamUpmix */ #define FIX_917_LCLD_WARNINGS /* Dlb: issue 917 and 918: fix LCLD codec warnings*/ #define FIX_920_IGF_INIT_ERROR /* FhG: issue 920: fix bitrate mismatch in initial IGF config to avoid error message in same cases */ #define FIX_SPLITREND_WARNINGS /* FhG: fix warnings related to split rendering observed in build jobs */ #define FIX_923_EXTERNAL_REND_COMMAND_LINE /* VA: issue 923: enable external renderer command-line options in UPPER case letters */ #define FIX_921_OMASA_DELAY_PRINTOUT /* VA: issue 921: correct OMASA decoder delay printout */ #define FIX_CRASH_LONG_BRIR /* Orange : Fix crash when long BRIR is set */ #define FIX_638_ENERGIE_IAC_ROM_TABLES /* Orange : Missing left/right and coherence late reverb tables in binary format*/ Loading Loading @@ -187,6 +190,8 @@ #define NONBE_FIX_DISCRETE_ISM_NOISE_SEED_HANDLING /* FhG: fix handling of common and differing noise seeds in SCEs for ISM DTX */ #define NONBE_FIX_913_OMASA_BITBUDGET_VIOLATION /* VA/Nok: issue 913: Resolve "Crash in OMASA encoder - DFT-Stereo bit-budget violated" */ #define NONBE_FIX_855_JBM_FLUSH_OFFSET /* FhG: issue #855: add missing switch here for the code in JBM flushing */ #define NONBE_FIX_926_OSBA_DECODER_CRASH_PLANAR_SBA /* FhG: issue 926: crash in OSBA decoding with planar FOA */ #define NONBE_FIX_908_OSBA_BR_SWITCHING_CRASH /* FhG: issue 908: fix crash in OSBA BR switching with long test vectors */ /* ##################### End NON-BE switches ########################### */ Loading lib_dec/ACcontextMapping_dec.c +11 −1 Original line number Diff line number Diff line Loading @@ -348,9 +348,11 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( int16_t lastnz, n; uint16_t r; int16_t resQBits; #ifdef DEBUGGING int16_t nbbits_m2; int16_t rest_bits; #endif int16_t nt_half; int16_t nbbits_m2; int16_t bits_tups; /* No. of bits for coding the no. of tuples */ set_s( x, 0, nt ); Loading Loading @@ -424,8 +426,10 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( /* Initialize range decoder */ rc_uni_dec_init( &rc_st_dec, &st->bit_stream[st->next_bit_pos], nbbits ); /* (nbbits + 30) entries are read by the decoder */ #ifdef DEBUGGING nbbits_m2 = nbbits; rest_bits = -nbbits_m2; #endif /* Main Loop through the 2-tuples */ for ( k = 0; k < lastnz; k += 2 ) Loading Loading @@ -484,11 +488,13 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( a += a1 << lev; b += b1 << lev; #ifdef DEBUGGING /* Add 2 LSB bits per bit-plane */ rest_bits += 2 * lev; /* Sign bits */ rest_bits += min( a, 1 ); rest_bits += min( b, 1 ); #endif /* Update bitstream pointer */ st->next_bit_pos = start_bit_pos + bits_tups + rc_uni_dec_virtual_finish( &rc_st_dec ); Loading Loading @@ -570,8 +576,10 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( /* Initialize range decoder */ rc_uni_dec_init( &rc_st_dec, &st->bit_stream[st->next_bit_pos], nbbits ); /* (nbbits + 30) entries are read by the decoder */ #ifdef DEBUGGING nbbits_m2 = nbbits; rest_bits = -nbbits_m2; #endif t = 0; s = 0; Loading Loading @@ -624,11 +632,13 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( a += a1 << lev; b += b1 << lev; #ifdef DEBUGGING /* Add 2 LSB bits per bit-plane */ rest_bits += 2 * lev; /* Sign bits */ rest_bits += min( a, 1 ); rest_bits += min( b, 1 ); #endif /* Update bitstream pointer */ st->next_bit_pos = start_bit_pos + bits_tups + rc_uni_dec_virtual_finish( &rc_st_dec ); Loading lib_dec/ivas_jbm_dec.c +4 −0 Original line number Diff line number Diff line Loading @@ -2239,7 +2239,11 @@ int16_t ivas_jbm_dec_get_num_tc_channels( { num_tc = CPE_CHANNELS; } #ifdef NONBE_FIX_926_OSBA_DECODER_CRASH_PLANAR_SBA if ( num_tc == 3 ) #else if ( ( st_ivas->sba_planar && num_tc >= 3 ) || ( num_tc == 3 ) ) #endif { num_tc++; } Loading lib_dec/ivas_sba_dec.c +4 −0 Original line number Diff line number Diff line Loading @@ -325,7 +325,11 @@ ivas_error ivas_sba_dec_reconfigure( } } #ifdef NONBE_FIX_908_OSBA_BR_SWITCHING_CRASH if ( hSpar->hPCA == NULL && st_ivas->hDecoderConfig->ivas_total_brate == PCA_BRATE && st_ivas->sba_order == 1 && ( st_ivas->ivas_format == SBA_FORMAT || st_ivas->ivas_format == SBA_ISM_FORMAT ) ) #else if ( hSpar->hPCA == NULL && st_ivas->hDecoderConfig->ivas_total_brate == PCA_BRATE && st_ivas->sba_order == 1 && st_ivas->ivas_format == SBA_FORMAT ) #endif { if ( ( hSpar->hPCA = (PCA_DEC_STATE *) malloc( sizeof( PCA_DEC_STATE ) ) ) == NULL ) { Loading Loading
CMakeLists.txt +1 −2 Original line number Diff line number Diff line Loading @@ -208,8 +208,7 @@ endif() if(INCLUDE_SPLIT) if(NOT WMOPS) file(GLOB unitTestIvasLc3plusSrcs "scripts/split_rendering/lc3plus/*.c") add_executable(ivas_lc3plus_unit_test ${unitTestIvasLc3plusSrcs}) add_executable(ivas_lc3plus_unit_test ${CMAKE_SOURCE_DIR}/scripts/split_rendering/lc3plus/ivas_lc3plus_unit_test.c) target_link_libraries(ivas_lc3plus_unit_test lib_rend lib_dec lib_util lib_com lib_debug) endif() endif() Loading
lib_com/options.h +5 −0 Original line number Diff line number Diff line Loading @@ -157,6 +157,9 @@ #define FIX_891_PARAMUPMIX_CLEANUP /* Dlb: issue 891: remove unneeded code from ParamUpmix */ #define FIX_917_LCLD_WARNINGS /* Dlb: issue 917 and 918: fix LCLD codec warnings*/ #define FIX_920_IGF_INIT_ERROR /* FhG: issue 920: fix bitrate mismatch in initial IGF config to avoid error message in same cases */ #define FIX_SPLITREND_WARNINGS /* FhG: fix warnings related to split rendering observed in build jobs */ #define FIX_923_EXTERNAL_REND_COMMAND_LINE /* VA: issue 923: enable external renderer command-line options in UPPER case letters */ #define FIX_921_OMASA_DELAY_PRINTOUT /* VA: issue 921: correct OMASA decoder delay printout */ #define FIX_CRASH_LONG_BRIR /* Orange : Fix crash when long BRIR is set */ #define FIX_638_ENERGIE_IAC_ROM_TABLES /* Orange : Missing left/right and coherence late reverb tables in binary format*/ Loading Loading @@ -187,6 +190,8 @@ #define NONBE_FIX_DISCRETE_ISM_NOISE_SEED_HANDLING /* FhG: fix handling of common and differing noise seeds in SCEs for ISM DTX */ #define NONBE_FIX_913_OMASA_BITBUDGET_VIOLATION /* VA/Nok: issue 913: Resolve "Crash in OMASA encoder - DFT-Stereo bit-budget violated" */ #define NONBE_FIX_855_JBM_FLUSH_OFFSET /* FhG: issue #855: add missing switch here for the code in JBM flushing */ #define NONBE_FIX_926_OSBA_DECODER_CRASH_PLANAR_SBA /* FhG: issue 926: crash in OSBA decoding with planar FOA */ #define NONBE_FIX_908_OSBA_BR_SWITCHING_CRASH /* FhG: issue 908: fix crash in OSBA BR switching with long test vectors */ /* ##################### End NON-BE switches ########################### */ Loading
lib_dec/ACcontextMapping_dec.c +11 −1 Original line number Diff line number Diff line Loading @@ -348,9 +348,11 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( int16_t lastnz, n; uint16_t r; int16_t resQBits; #ifdef DEBUGGING int16_t nbbits_m2; int16_t rest_bits; #endif int16_t nt_half; int16_t nbbits_m2; int16_t bits_tups; /* No. of bits for coding the no. of tuples */ set_s( x, 0, nt ); Loading Loading @@ -424,8 +426,10 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( /* Initialize range decoder */ rc_uni_dec_init( &rc_st_dec, &st->bit_stream[st->next_bit_pos], nbbits ); /* (nbbits + 30) entries are read by the decoder */ #ifdef DEBUGGING nbbits_m2 = nbbits; rest_bits = -nbbits_m2; #endif /* Main Loop through the 2-tuples */ for ( k = 0; k < lastnz; k += 2 ) Loading Loading @@ -484,11 +488,13 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( a += a1 << lev; b += b1 << lev; #ifdef DEBUGGING /* Add 2 LSB bits per bit-plane */ rest_bits += 2 * lev; /* Sign bits */ rest_bits += min( a, 1 ); rest_bits += min( b, 1 ); #endif /* Update bitstream pointer */ st->next_bit_pos = start_bit_pos + bits_tups + rc_uni_dec_virtual_finish( &rc_st_dec ); Loading Loading @@ -570,8 +576,10 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( /* Initialize range decoder */ rc_uni_dec_init( &rc_st_dec, &st->bit_stream[st->next_bit_pos], nbbits ); /* (nbbits + 30) entries are read by the decoder */ #ifdef DEBUGGING nbbits_m2 = nbbits; rest_bits = -nbbits_m2; #endif t = 0; s = 0; Loading Loading @@ -624,11 +632,13 @@ int16_t RCcontextMapping_decode2_no_mem_s17_LCS( a += a1 << lev; b += b1 << lev; #ifdef DEBUGGING /* Add 2 LSB bits per bit-plane */ rest_bits += 2 * lev; /* Sign bits */ rest_bits += min( a, 1 ); rest_bits += min( b, 1 ); #endif /* Update bitstream pointer */ st->next_bit_pos = start_bit_pos + bits_tups + rc_uni_dec_virtual_finish( &rc_st_dec ); Loading
lib_dec/ivas_jbm_dec.c +4 −0 Original line number Diff line number Diff line Loading @@ -2239,7 +2239,11 @@ int16_t ivas_jbm_dec_get_num_tc_channels( { num_tc = CPE_CHANNELS; } #ifdef NONBE_FIX_926_OSBA_DECODER_CRASH_PLANAR_SBA if ( num_tc == 3 ) #else if ( ( st_ivas->sba_planar && num_tc >= 3 ) || ( num_tc == 3 ) ) #endif { num_tc++; } Loading
lib_dec/ivas_sba_dec.c +4 −0 Original line number Diff line number Diff line Loading @@ -325,7 +325,11 @@ ivas_error ivas_sba_dec_reconfigure( } } #ifdef NONBE_FIX_908_OSBA_BR_SWITCHING_CRASH if ( hSpar->hPCA == NULL && st_ivas->hDecoderConfig->ivas_total_brate == PCA_BRATE && st_ivas->sba_order == 1 && ( st_ivas->ivas_format == SBA_FORMAT || st_ivas->ivas_format == SBA_ISM_FORMAT ) ) #else if ( hSpar->hPCA == NULL && st_ivas->hDecoderConfig->ivas_total_brate == PCA_BRATE && st_ivas->sba_order == 1 && st_ivas->ivas_format == SBA_FORMAT ) #endif { if ( ( hSpar->hPCA = (PCA_DEC_STATE *) malloc( sizeof( PCA_DEC_STATE ) ) ) == NULL ) { Loading