Commit a9d48eb5 authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch 'main' into fhg/fix_noise_seed_handling_in_ism_cng

parents acc08428 ea907b7e
Loading
Loading
Loading
Loading
Loading
+15 −13
Original line number Diff line number Diff line
@@ -995,8 +995,9 @@ check-first-frame-is-sid:
    - exit_code_foa=0

    # run all modes and cut bitstream to start with an SID. Use stereo output to limit runtime, test is only about decoding
    - ism_md_cmd="--ism_metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv"
    - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -vE "FOA|HOA" )
    - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 200 -U 0:20 --oc stereo || exit_code_no_sba=$?
    - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 200 -U 0:20 --oc stereo $ism_md_cmd || exit_code_no_sba=$?
    - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -E "HOA")
    - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 100 -U 70:80 --oc stereo || exit_code_hoa=$?
    - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep "FOA")
@@ -1567,6 +1568,17 @@ sanitizer-test-osba-hoa3-ism2:
    - *update-ltv-repo
    - python3 ci/run_scheduled_sanitizer_test.py HOA3-ISM2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS

sanitizer-test-omasa-ism4:
  extends: .sanitizer-test-schedule-B
  rules:
    - if: $SANITIZER_SCHEDULE_B
      when: delayed
      start_in: 97.5 hours
  timeout: 10 hours
  script:
    - *update-ltv-repo
    - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS


### --- sanitizer schedule C ---

@@ -1603,22 +1615,12 @@ sanitizer-test-omasa-ism3:
    - *update-ltv-repo
    - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM3 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS

sanitizer-test-omasa-ism4:
  extends: .sanitizer-test-schedule-C
  rules:
    - if: $SANITIZER_SCHEDULE_C
      when: delayed
      start_in: 30 hours
  script:
    - *update-ltv-repo
    - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS

sanitizer-test-osba-hoa3-ism3:
  extends: .sanitizer-test-schedule-C
  rules:
    - if: $SANITIZER_SCHEDULE_C
      when: delayed
      start_in: 40 hours
      start_in: 30 hours
  timeout: 7.5 hours
  script:
    - *update-ltv-repo
@@ -1629,7 +1631,7 @@ sanitizer-test-osba-hoa3-ism4:
  rules:
    - if: $SANITIZER_SCHEDULE_C
      when: delayed
      start_in: 47.5 hours
      start_in: 37.5 hours
  timeout: 7.5 hours
  script:
    - *update-ltv-repo
+0 −53
Original line number Diff line number Diff line
@@ -2123,35 +2123,6 @@ static ivas_error decodeG192(
    /* we always start with needing a new frame */
    needNewFrame = true;

#ifndef FIX_899_VARIABLE_SPEED_DECODING
#ifdef DEBUGGING
#ifdef VARIABLE_SPEED_DECODING
    /*------------------------------------------------------------------------------------------*
     * Open TSM scale file or set global TSM scale
     *------------------------------------------------------------------------------------------*/

    if ( arg.tsmEnabled )
    {
        if ( arg.tsmScaleFileEnabled )
        {
            if ( ( tsmScaleFileReader = TsmScaleFileReader_open( arg.tsmScaleFileName ) ) == NULL )
            {
                fprintf( stderr, "\nError: Can't open TSM scale file %s \n\n", arg.tsmScaleFileName );
                goto cleanup;
            }
        }
        else
        {
            if ( ( error = IVAS_DEC_VoIP_SetScale( hIvasDec, arg.tsmScale, arg.tsmScale ) ) != IVAS_ERR_OK )
            {
                fprintf( stderr, "\nIVAS_DEC_VoIP_SetScale failed: %s \n", IVAS_DEC_GetErrorMessage( error ) );
                goto cleanup;
            }
        }
    }
#endif
#endif
#endif

    if ( !arg.quietModeEnabled )
    {
@@ -2196,7 +2167,6 @@ static ivas_error decodeG192(
    }
#endif

#ifdef FIX_899_VARIABLE_SPEED_DECODING
#ifdef DEBUGGING
#ifdef VARIABLE_SPEED_DECODING
    /*------------------------------------------------------------------------------------------*
@@ -2232,7 +2202,6 @@ static ivas_error decodeG192(
        }
    }
#endif
#endif
#endif

    /*------------------------------------------------------------------------------------------*
@@ -2387,14 +2356,10 @@ static ivas_error decodeG192(
                        fprintf( stderr, "\nError: input bitstream file couldn't be read: %s \n\n", arg.inputBitstreamFilename );
                        goto cleanup;
                    }
#ifdef FIX_899_VARIABLE_SPEED_DECODING
                    int16_t maxScaling;
                    /* max scaling as abs diff to the normal frame size in samples */
                    maxScaling = (int16_t) ceilf( (float) abs( arg.tsmScale - 100 ) / 100.0f * (float) ( nOutSamples * vec_pos_len ) );
                    if ( ( error = IVAS_DEC_VoIP_SetScale( hIvasDec, maxScaling, arg.tsmScale ) ) != IVAS_ERR_OK )
#else
                    if ( ( error = IVAS_DEC_VoIP_SetScale( hIvasDec, scale, scale ) ) != IVAS_ERR_OK )
#endif
                    {
                        fprintf( stderr, "\nIVAS_DEC_VoIP_SetScale failed: %s \n", IVAS_DEC_GetErrorMessage( error ) );
                        goto cleanup;
@@ -2466,7 +2431,6 @@ static ivas_error decodeG192(
#ifdef SPLIT_REND_WITH_HEAD_ROT
            }
#endif
#ifdef FIX_899_VARIABLE_SPEED_DECODING
            if ( needNewFrame )
            {
                frame++;
@@ -2481,7 +2445,6 @@ static ivas_error decodeG192(
#endif
                }
            }
#endif

        } while ( nSamplesRendered < nOutSamples && error == IVAS_ERR_OK );

@@ -2605,22 +2568,6 @@ static ivas_error decodeG192(
            }
        }
        vec_pos_update = ( vec_pos_update + 1 ) % vec_pos_len;
#ifndef FIX_899_VARIABLE_SPEED_DECODING
        if ( needNewFrame )
        {
            frame++;
            if ( !arg.quietModeEnabled )
            {
                fprintf( stdout, "%-8d\b\b\b\b\b\b\b\b", frame );
#ifdef DEBUGGING
                if ( IVAS_DEC_GetBerDetectFlag( hIvasDec ) )
                {
                    fprintf( stdout, "\n   Decoding error: BER detected in frame %d !!!!!\n", frame - 1 );
                }
#endif
            }
        }
#endif
#ifdef WMOPS
        if ( vec_pos_update == 0 )
        {
+0 −40
Original line number Diff line number Diff line
@@ -1690,47 +1690,11 @@ static bool parseCmdlIVAS_enc(

            i++;
        }
#ifdef FIX_643_PCA_OPTION
        else if ( strcmp( argv_to_upper, "-PCA" ) == 0 )
        {
            arg->pca = 1;
            i++;
        }
#else
        else if ( strcmp( argv_to_upper, "-BYPASS" ) == 0 ) // TODO: should be renamed to "-pca"
        {
            i++;
            if ( i < argc - 4 )
            {
                switch ( atoi( argv[i] ) )
                {
                    case 1:
                    {
                        arg->pca = 0;
                        break;
                    }
                    case 2:
                    {
                        arg->pca = 1;
                        break;
                    }
                    default:
                    {
                        fprintf( stderr, "Error: SBA PCA bypass argument is out of range (%d), expected 1 or 2\n", (int32_t) atoi( argv[i] ) );
                        usage_enc();
                        return false;
                    }
                }
                i++;
            }
            else
            {
                fprintf( stderr, "Error: SBA unspecified PCA BYPASS value \n\n" );
                usage_enc();
                return false;
            }
        }
#endif

        /*-----------------------------------------------------------------*
         * Option not recognized
@@ -1927,11 +1891,7 @@ static void usage_enc( void )
    fprintf( stdout, "-mime               : Mime output bitstream file format\n" );
    fprintf( stdout, "                      The encoder produces TS26.445 Annex.2.6 Mime Storage Format, (not RFC4867 Mime Format).\n" );
    fprintf( stdout, "                      default output bitstream file format is G.192\n" );
#ifdef FIX_643_PCA_OPTION
    fprintf( stdout, "-pca                : activate PCA in SBA format FOA at 256 kbps \n" );
#else
    fprintf( stdout, "-bypass mode        : SBA PCA by-pass, mode = (1, 2), 1 = PCA off, 2 = signal adaptive, default is 1\n" );
#endif
    fprintf( stdout, "-level level        : Complexity level, level = (1, 2, 3), will be defined after characterisation. \n" );
    fprintf( stdout, "                      Currently, all values default to level 3 (full functionality).\n" );
#ifdef DEBUGGING
+1 −21
Original line number Diff line number Diff line
@@ -1795,7 +1795,6 @@ int main(
                exit( -1 );
            }

#ifdef NONBE_FIX_225_MASA_EXT_REND
            if ( isCurrentFrameMultipleOf20ms )
            {
                if ( masaReaders[i] != NULL )
@@ -1814,19 +1813,6 @@ int main(
                    }
                }
            }
#else
            if ( masaReaders[i] != NULL )
            {
                /* This will update data in hMasaMetadata[i] */
                MasaFileReader_readNextFrame( masaReaders[i] );

                if ( ( error = IVAS_REND_FeedInputMasaMetadata( hIvasRend, masaIds[i], hMasaMetadata[i] ) ) != IVAS_ERR_OK )
                {
                    fprintf( stderr, "Error: %s\n", ivas_error_to_string( error ) );
                    exit( -1 );
                }
            }
#endif
        }


@@ -2531,13 +2517,7 @@ static IVAS_AUDIO_CONFIG parseAudioConfig(
        switch ( charBuf[4] )
        {
            case '1':
#ifdef NONBE_FIX_225_MASA_EXT_REND
                return IVAS_AUDIO_CONFIG_MASA1;
#else
                fprintf( stderr, "1TC MASA support is not functional and is pending on DirAC renderer refactoring.\n" );
                exit( EXIT_FAILURE );
                /*return IVAS_AUDIO_CONFIG_MASA1;*/ // ToDo: temporarily disabled to avoid compilation warnings
#endif
            case '2':
                return IVAS_AUDIO_CONFIG_MASA2;
            default:
@@ -2895,7 +2875,7 @@ static void parseOption(
            assert( numOptionValues == 1 );
            if ( !parseRenderFramesize( optionValues[0], &args->render_framesize ) )
            {
                fprintf( stderr, "Unknown or invalid option for LFE position: %s\n", optionValues[0] );
                fprintf( stderr, "Unknown or invalid option for frame size: %s\n", optionValues[0] );
                exit( -1 );
            }

+2 −2
Original line number Diff line number Diff line
@@ -110,8 +110,8 @@ def get_modes(in_format: str) -> list:
def get_md_file_command(in_format: str) -> list:

    cmd = list()
    if in_format.startswith("ISM"):
        cmd.append("--metadata_files")
    if "ISM" in in_format:
        cmd.append("--ism_metadata_files")
        md_filename = "/usr/local/ltv/ltvISM{}.csv"
        n = int(in_format[-1])
        cmd.extend([md_filename.format(i) for i in range(1, n + 1)])
Loading