Commit 620cf5a9 authored by vaclav's avatar vaclav
Browse files
parents 6c0edc8e 5a682e96
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -872,7 +872,7 @@ lc3-wrapper-unit-test:
  script:
    - cmake -B cmake-build -G "Unix Makefiles" -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true
    - cmake --build cmake-build -- -j
    - scripts/split_rendering/lc3plus/ivas_lc3plus_unit_test
    - scripts/split_rendering/lc3plus_float/ivas_lc3plus_unit_test

# compare split-rendering bitexactness between target and source branch
split-rendering-pytest-on-merge-request:
+2 −2
Original line number Diff line number Diff line
@@ -174,7 +174,7 @@ target_include_directories(lib_util PUBLIC lib_util PRIVATE lib_com lib_enc lib_
target_include_directories(lib_util PRIVATE lib_lc3plus lib_isar)

if(NOT WMOPS)
  add_executable(ivas_lc3plus_unit_test scripts/split_rendering/lc3plus/ivas_lc3plus_unit_test.c)
  add_executable(ivas_lc3plus_unit_test scripts/split_rendering/lc3plus_float/ivas_lc3plus_unit_test.c)
  target_link_libraries(ivas_lc3plus_unit_test lib_rend lib_dec lib_util lib_com lib_debug lib_isar)
endif()

@@ -213,7 +213,7 @@ if(COPY_EXECUTABLES_FROM_BUILD_DIR)
  add_custom_command(TARGET IVAS_rend POST_BUILD VERBATIM COMMAND "${CMAKE_COMMAND}" -E copy "$<TARGET_FILE:IVAS_rend>" "${CMAKE_CURRENT_SOURCE_DIR}/")
  add_custom_command(TARGET ISAR_post_rend POST_BUILD VERBATIM COMMAND "${CMAKE_COMMAND}" -E copy "$<TARGET_FILE:ISAR_post_rend>" "${CMAKE_CURRENT_SOURCE_DIR}/")
  if (NOT WMOPS)
    add_custom_command(TARGET ivas_lc3plus_unit_test POST_BUILD VERBATIM COMMAND "${CMAKE_COMMAND}" -E copy "$<TARGET_FILE:ivas_lc3plus_unit_test>" "${CMAKE_CURRENT_SOURCE_DIR}/scripts/split_rendering/lc3plus")
    add_custom_command(TARGET ivas_lc3plus_unit_test POST_BUILD VERBATIM COMMAND "${CMAKE_COMMAND}" -E copy "$<TARGET_FILE:ivas_lc3plus_unit_test>" "${CMAKE_CURRENT_SOURCE_DIR}/scripts/split_rendering/lc3plus_float")
  endif()
endif()

+4 −0
Original line number Diff line number Diff line
@@ -1142,8 +1142,12 @@ enum
#define MASA_TRANSP_BITS                        1
#define NO_BITS_MASA_ISM_NO_OBJ                 2
#define MASA2TOTAL_THR                          0.98f

#define BITS_MASA2TOTTAL_DCT0                   6
#define STEP_M2T                                0.1f
#ifdef NONBE_1231_BASOP_819_THRESHOLD_MASA2TOTAL 
#define STEP_M2T_FX                             214748365 // Q31
#endif
#define MASA_HEADER_BITS                        2
#define MASA_SUBFRAME_BITS                      1
#define MASA_LOWBITRATE_MODE_BITS               1
+26 −0
Original line number Diff line number Diff line
@@ -756,6 +756,32 @@ int16_t get_igf_startline(

float rand_triangular_signed(
    int16_t *seed );
#ifdef NONBE_1231_BASOP_819_THRESHOLD_MASA2TOTAL
Word16 matrix_product_fx(
    const Word32 *X_fx,   /* i  : left hand matrix                                                                       Qx*/
    const Word16 rowsX,   /* i  : number of rows of the left hand matrix                                                 Q0*/
    const Word16 colsX,   /* i  : number of columns of the left hand matrix                                              Q0*/
    const Word16 transpX, /* i  : flag indicating the transposition of the left hand matrix prior to the multiplication  Q0*/
    const Word32 *Y_fx,   /* i  : right hand matrix                                                                      Qy*/
    const Word16 rowsY,   /* i  : number of rows of the right hand matrix                                                Q0*/
    const Word16 colsY,   /* i  : number of columns of the right hand matrix                                             Q0*/
    const Word16 transpY, /* i  : flag indicating the transposition of the right hand matrix prior to the multiplication Q0*/
    Word32 *Z_fx          /* o  : resulting matrix after the matrix multiplication                                       Qx + Qy - 31*/
);

Word16 matrix_product_q30_fx(
    const Word32 *X_fx,   /* i  : left hand matrix                                                                       Q31*/
    const Word16 rowsX,   /* i  : number of rows of the left hand matrix                                                 Q0*/
    const Word16 colsX,   /* i  : number of columns of the left hand matrix                                              Q0*/
    const Word16 transpX, /* i  : flag indicating the transposition of the left hand matrix prior to the multiplication  Q0*/
    const Word32 *Y_fx,   /* i  : right hand matrix                                                                      Q25*/
    const Word16 rowsY,   /* i  : number of rows of the right hand matrix                                                Q0*/
    const Word16 colsY,   /* i  : number of columns of the right hand matrix                                             Q0*/
    const Word16 transpY, /* i  : flag indicating the transposition of the right hand matrix prior to the multiplication Q0*/
    Word32 *Z_fx          /* o  : resulting matrix after the matrix multiplication                                       Q30*/
);
#endif


void dtx_read_padding_bits(
    DEC_CORE_HANDLE st,
+42 −0
Original line number Diff line number Diff line
@@ -2778,6 +2778,48 @@ const int32_t sep_object_brate[][MAX_NUM_OBJECTS] =
};
/* column wise DCT matrices for 4 5, and 8 dim */
#ifdef NONBE_1231_BASOP_819_THRESHOLD_MASA2TOTAL 
const Word32 dct4_fx[4 * 4] = { // Q31
    1073741824, 1402951040, 1073741824, 581109056,
    1073741824, 581109056, -1073741824, -1402951040,
    1073741824, -581109056, -1073741824, 1402951040,
    1073741824, -1402951040, 1073741824, -581109056
};
const Word32 dct5_fx[5 * 5] = { // Q31
    960354688, 1291711360, 1098867328, 798219648, 419618304,
    960354688, 798219648, -419618304, -1291711360, -1098867328,
    960354688, 0, -1358283392, 0, 1358283392,
    960354688, -798219648, -419618304, 1291711360, -1098867328,
    960354688, -1291711360, 1098867328, -798219648, 419618304
};
const Word32 dct8_fx[8 * 8] = { // Q31
    759350208, 1053125952, 991922688, 892708928, 759350208, 596570944, 410813632, 209379648,
    759350208, 892708928, 410813632, -209379648, -759350208, -1053125952, -991922688, -596570944,
    759350208, 596570944, -410813632, -1053125952, -759350208, 209379648, 991922688, 892708928,
    759350208, 209379648, -991922688, -596570944, 759350208, 892708928, -410813632, -1053125952,
    759350208, -209379648, -991922688, 596570944, 759350208, -892708928, -410813632, 1053125952,
    759350208, -596570944, -410813632, 1053125952, -759350208, -209379648, 991922688, -892708928,
    759350208, -892708928, 410813632, 209379648, -759350208, 1053125952, -991922688, 596570944,
    759350208, -1053125952, 991922688, -892708928, 759350208, -596570944, 410813632, -209379648
};
const Word32 dct12_fx[12 * 12] = { // Q31
    619978560, 869301376, 846752832, 810030848, 759350208, 695569984, 619978560, 533649696, 438301408, 335436960, 226989024, 114460880,
    619978560, 810030848, 619978560, 335436960, 0, -335436960, -619978560, -810030848, -876602816, -810030848, -619978560, -335436960,
    619978560, 695569984, 226989024, -335436960, -759350208, -869301376, -619978560, -114460880, 438301408, 810030848, 846752832, 533649696,
    619978560, 533649696, -226989024, -810030848, -759350208, -114460880, 619978560, 869301376, 438301408, -335436960, -846752832, -695569984,
    619978560, 335436960, -619978560, -810030848, 0, 810030848, 619978560, -335436960, -876602816, -335436960, 619978560, 810030848, 619978560,
    114460880, -846752832, -335436960, 759350208, 533649696, -619978560, -695569984, 438301408, 810030848, -226989024, -869301376, 619978560,
    -114460880, -846752832, 335436960, 759350208, -533649696, -619978560, 695569984, 438301408, -810030848, -226989024, 869301376, 619978560,
    -335436960, -619978560, 810030848, 0, -810030848, 619978560, 335436960, -876602816, 335436960, 619978560, -810030848, 619978560, -533649696,
    -226989024, 810030848, -759350208, 114460880, 619978560, -869301376, 438301408, 335436960, -846752832, 695569984, 619978560, -695569984,
    226989024, 335436960, -759350208, 869301376, -619978560, 114460880, 438301408, -810030848, 846752832, -533649696, 619978560, -810030848,
    619978560, -335436960, 0, 335436960, -619978560, 810030848, -876602816, 810030848, -619978560, 335436960, 619978560, -869301376, 846752832,
    -810030848, 759350208, -695569984, 619978560, -533649696, 438301408, -335436960, 226989024, -114460880
};
#endif
const float dct4[4*4] = 
{
    0.5000f,  0.6533f,  0.5000f,  0.2706f,
Loading