Commit d30f0b56 authored by reutelhuber's avatar reutelhuber
Browse files

update to main

parents cf589fa5 f97d5226
Loading
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -352,6 +352,7 @@ build-codec-include-split-linux-make:
    - .rules-basis
  script:
    - *print-common-info
    - *enable-split-rendering
    - make -j INCLUDE_SPLIT=1 2>&1 | tee $BUILD_OUTPUT
    # need to use the "|| exit $?" suffix to get the allowed_failure return code, otherwise the job fails with code 1...<
    - ci/check_for_warnings.py $BUILD_OUTPUT || exit $?
@@ -362,6 +363,7 @@ build-codec-include-split-linux-cmake:
    - .rules-basis
  script:
    - *print-common-info
    - *enable-split-rendering
    - mkdir build
    - cd build
    - cmake .. -DINCLUDE_SPLIT=1
@@ -390,6 +392,9 @@ build-codec-windows-include-split-cmake:
  script:
    - *print-common-info-windows
    - $winoutdata = $null
    - get-content .\lib_com\options.h | %{$_ -replace "/\*#define[\s]*SPLIT_REND_WITH_HEAD_ROT[\s]*\*/", "#define SPLIT_REND_WITH_HEAD_ROT"} | set-content -Path ./options_patched.h
    - rm ./lib_com/options.h
    - mv ./options_patched.h ./lib_com/options.h
    - cmake -DINCLUDE_SPLIT=1 -G "Visual Studio 15 2017" . -Bbuild
    - cmake --build build -j | tee -variable winoutdata
    - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8
+3 −0
Original line number Diff line number Diff line
@@ -155,6 +155,7 @@
#define FIX_881_REMOVE_LFE_ADDITION_IN_ISM              /* VA: issue 881: remove LFE addition in ISM format */
#define FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO              /* VA: Fix the definition of buffers/arrays in DFT and MDCT stereo to satisfy gcc v 11.4.0 */
#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 */

/* #################### End BE switches ################################## */
@@ -176,6 +177,8 @@
#define NONBE_FIX_898_ISM_BRATE_CRASH                         /* VA: issue 898: fix decoder crash in ISM bitrate switching with DTX and binaural output */
#define NONBE_FIX_862_UBSAN_SPAR_DEC_BR_SW_PLC                /* DLB: issue 862 : UBSAN: out-of-bound error in SPAR for OSBA bitrate switching with PLC*/
#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" */


/* ##################### End NON-BE switches ########################### */

+11 −4
Original line number Diff line number Diff line
@@ -42,6 +42,8 @@
#define MAX_NUM_RECORDS_REALLOC_STEP 50  /* When re-allocating the list of records, increase the number of records by this number */
#define MAX_CALL_TREE_DEPTH          100 /* maximum depth of the function call tree */
#define DOUBLE_MAX                   0x80000000
#define FAC                          ( FRAMES_PER_SECOND / 1e6 )


typedef struct 
{
@@ -1903,8 +1905,8 @@ void print_mem( ROM_Size_Lookup_Table Const_Data_PROM_Table[] )
            }
            else
            {
                /* bytes */
                fprintf( stdout, "Program ROM size (%s): %d bytes\n", Const_Data_PROM_Table[i].file_spec, Const_Data_PROM_Table[i].PROM_size << Stat_Cnt_Size );
                /* bytes (here, we assume that each instruction takes PROM_INST_SIZE bits of the PROM memory) */
                fprintf( stdout, "Program ROM size (%s): %d bytes\n", Const_Data_PROM_Table[i].file_spec, Const_Data_PROM_Table[i].PROM_size * ( PROM_INST_SIZE / 8 ) );
            }
        }

@@ -1994,10 +1996,15 @@ void print_mem( ROM_Size_Lookup_Table Const_Data_PROM_Table[] )
    mem_count_summary();
#endif

    if ( Stat_Cnt_Size == 0 )
    if ( Stat_Cnt_Size > 0 )
    {
        /* words */
        fprintf( stdout, "\nNote: The Program ROM size is calculated under the assumption that 1 instruction word is stored with %d bits\n", 8 << Stat_Cnt_Size );
    }
    else
    {
        /* bytes */
        fprintf( stdout, "\nNote: The Program ROM size is calculated under the assumption that 1 instruction word is stored with %d bytes (%d bits)\n", 1 << Stat_Cnt_Size, 8 << Stat_Cnt_Size );
        fprintf( stdout, "\nNote: The Program ROM size is calculated under the assumption that 1 instruction word is stored with %d bits\n", PROM_INST_SIZE );
    }
    fprintf( stdout, "Note: The Data ROM size is calculated using the sizeof(type) built-in function\n" );

+17 −19
Original line number Diff line number Diff line
@@ -33,10 +33,8 @@
#define INT_MAX 32767
#endif

/* Real-time relationships */
#define FRAMES_PER_SECOND 50.0    
#define WMOPS_BOOST_FAC   ( 1.0f ) /* scaling factor for equalizing the difference between automatic and manual instrumentation */
#define FAC               ( FRAMES_PER_SECOND / 1e6 * WMOPS_BOOST_FAC )
#define PROM_INST_SIZE    32     /* number of bits of each program instruction when stored in the PROM memory (applied only when the user selects reporting in bytes) */

#ifdef WMOPS
enum instructions
@@ -670,24 +668,24 @@ static int wmc_flag_ = 0;
#endif

/* Define all Macros without '{' & '}' (None of these should be called externally!) */
#define ABS_( x )      OP_COUNT_( _ABS, ( x ) / WMOPS_BOOST_FAC )
#define ADD_( x )      OP_COUNT_( _ADD, ( x ) / WMOPS_BOOST_FAC )
#define MULT_( x )     OP_COUNT_( _MULT, ( x ) / WMOPS_BOOST_FAC )
#define MAC_( x )      OP_COUNT_( _MAC, ( x ) / WMOPS_BOOST_FAC )
#define MOVE_( x )     OP_COUNT_( _MOVE, ( x ) / WMOPS_BOOST_FAC )
#define STORE_( x )    OP_COUNT_( _STORE, ( x ) / WMOPS_BOOST_FAC )
#define LOGIC_( x )    OP_COUNT_( _LOGIC, ( x ) / WMOPS_BOOST_FAC )
#define SHIFT_( x )    OP_COUNT_( _SHIFT, ( x ) / WMOPS_BOOST_FAC )
#define BRANCH_( x )   OP_COUNT_( _BRANCH, ( x ) / WMOPS_BOOST_FAC )
#define DIV_( x )      OP_COUNT_( _DIV, ( x ) / WMOPS_BOOST_FAC )
#define SQRT_( x )     OP_COUNT_( _SQRT, ( x ) / WMOPS_BOOST_FAC )
#define TRANS_( x )    OP_COUNT_( _TRANS, ( x ) / WMOPS_BOOST_FAC )
#define ABS_( x )      OP_COUNT_( _ABS, ( x ) )
#define ADD_( x )      OP_COUNT_( _ADD, ( x ) )
#define MULT_( x )     OP_COUNT_( _MULT, ( x ) )
#define MAC_( x )      OP_COUNT_( _MAC, ( x ) )
#define MOVE_( x )     OP_COUNT_( _MOVE, ( x ) )
#define STORE_( x )    OP_COUNT_( _STORE, ( x ) )
#define LOGIC_( x )    OP_COUNT_( _LOGIC, ( x ) )
#define SHIFT_( x )    OP_COUNT_( _SHIFT, ( x ) )
#define BRANCH_( x )   OP_COUNT_( _BRANCH, ( x ) )
#define DIV_( x )      OP_COUNT_( _DIV, ( x ) )
#define SQRT_( x )     OP_COUNT_( _SQRT, ( x ) )
#define TRANS_( x )    OP_COUNT_( _TRANS, ( x ) )
#define POWER_( x )    TRANS_( x )
#define LOG_( x )      TRANS_( x )
#define LOOP_( x )     OP_COUNT_( _LOOP, ( x ) / WMOPS_BOOST_FAC )
#define INDIRECT_( x ) OP_COUNT_( _INDIRECT, ( x ) / WMOPS_BOOST_FAC )
#define PTR_INIT_( x ) OP_COUNT_( _PTR_INIT, ( x ) / WMOPS_BOOST_FAC )
#define FUNC_( x )     ( OP_COUNT_( _MOVE, ( x ) / WMOPS_BOOST_FAC ), OP_COUNT_( _FUNC, 1 ) )
#define LOOP_( x )     OP_COUNT_( _LOOP, ( x ) )
#define INDIRECT_( x ) OP_COUNT_( _INDIRECT, ( x ) )
#define PTR_INIT_( x ) OP_COUNT_( _PTR_INIT, ( x ) )
#define FUNC_( x )     ( OP_COUNT_( _MOVE, ( x ) ), OP_COUNT_( _FUNC, 1 ) )
#define MISC_( x )     ABS_( x )

/* Math Operations */
+11 −0
Original line number Diff line number Diff line
@@ -260,6 +260,17 @@ ivas_error ivas_cpe_dec(
            }
            else
            {
#ifdef NONBE_FIX_913_OMASA_BITBUDGET_VIOLATION
                if ( st_ivas->ivas_format == MASA_FORMAT || st_ivas->ivas_format == MASA_ISM_FORMAT )
                {
                    nb_bits -= nb_bits_metadata;
                    if ( hCPE->brate_surplus < 0 )
                    {
                        nb_bits += (int16_t) ( hCPE->brate_surplus / FRAMES_PER_SEC );
                    }
                }

#endif
                stereo_dft_dec_read_BS( ivas_total_brate, hCPE->element_brate, &sts[0]->total_brate, sts[1], hCPE->hStereoDft, sts[0]->bwidth, output_frame, res_buf, &nb_bits, hCPE->hStereoCng->coh, st_ivas->ivas_format );
            }

Loading