Loading .gitlab-ci.yml +14 −7 Original line number Diff line number Diff line Loading @@ -7,7 +7,7 @@ variables: SANITIZER_TESTS: "CLANG1 CLANG2" OUT_FORMATS_CHANNEL_BASED: "stereo mono 5_1 5_1_2 5_1_4 7_1 7_1_4" OUT_FORMATS_SCENE_BASED: "FOA HOA2 HOA3" OUT_FORMATS_BINAURAL: "BINAURAL BINAURAL_ROOM" OUT_FORMATS_BINAURAL: "BINAURAL BINAURAL_ROOM_IR BINAURAL_ROOM_REVERB" EXIT_CODE_NON_BE: 123 EXIT_CODE_FAIL: 1 Loading Loading @@ -69,7 +69,9 @@ stages: # compare to last target branch commit before pipeline was created - target_commit=$(git log $CI_MERGE_REQUEST_TARGET_BRANCH_NAME -1 --oneline --before=${CI_PIPELINE_CREATED_AT} --format=%H) .check-for-testvectors: &check-for-testvectors # check if the testvector files specified in scripts/config/ci_linux*.json are present - python3 -m pytest ci/test_vectors_available.py .merge-request-comparison-setup-codec: &merge-request-comparison-setup-codec ### build test binaries, initial clean for paranoia reasons Loading Loading @@ -660,30 +662,35 @@ clang-format-check: expose_as: 'formatting patch' # check for crashes if first received frame on decoder side is an SID .check-first-frame-is-sid: check-first-frame-is-sid: extends: - .test-job-linux-needs-testv-dir - .rules-merge-request tags: - ivas-linux stage: test needs: ["build-codec-linux-cmake"] # needs: ["build-codec-linux-cmake"] script: - *print-common-info - *update-ltv-repo - *check-for-testvectors - cmake . - make -j # TODO: for some MASA modes, we currently do not have testvectors that actually trigger DTX - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -v MASA) - echo $modes - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 # SBA is run separately to use shorter part of file - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -v MASA | grep -v SBA) - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 -U 0:20 || exit_code_no_sba=$? - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep SBA) - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 -U 70:80 || exit_code_sba=$? - if [ $exit_code_no_sba != 0 || $exit_code_sba != 0]; then exit 1; fi artifacts: paths: - out/logs when: on_failure name: "$CI_JOB_NAME--$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--sidstart" expose_as: "logs-sidstart" expire_in: "5 days" # --------------------------------------------------------------- # Test jobs for main branch Loading apps/decoder.c +29 −1 Original line number Diff line number Diff line Loading @@ -1607,7 +1607,11 @@ static ivas_error initOnFirstGoodFrame( /* Duplicate good first frame metadata to fill the beginning of stream. */ MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta = NULL; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); return error; Loading Loading @@ -1819,7 +1823,7 @@ static ivas_error decodeG192( } if ( ( error = IVAS_DEC_FeedExternalOrientationData( hIvasDec, Quaternion, enableHeadRotation, enableExternalOrientation, enableRotationInterpolation, numFramesToTargetOrientation ) ) != IVAS_ERR_OK ) if ( ( error = IVAS_DEC_FeedExternalOrientationData( hIvasDec, Quaternion, enableHeadRotation, enableExternalOrientation, enableRotationInterpolation, numFramesToTargetOrientation * vec_pos_len ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_FeedExternalOrientationData failed: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -1983,7 +1987,11 @@ static ivas_error decodeG192( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -2125,7 +2133,11 @@ static ivas_error decodeG192( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -2492,7 +2504,11 @@ static ivas_error decodeG192( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -3047,7 +3063,11 @@ static ivas_error decodeVoIP( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 1 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -3464,7 +3484,11 @@ static ivas_error decodeVariableSpeed( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 1 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -3634,7 +3658,11 @@ static ivas_error decodeVariableSpeed( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading ci/test_vectors_available.py 0 → 100644 +19 −0 Original line number Diff line number Diff line import pytest import pathlib import json import itertools TEST_CONFIG_DIR = pathlib.Path(__file__).parent.parent.joinpath("scripts/config") TEST_CONFIGS = [f for f in TEST_CONFIG_DIR.iterdir() if f.name.startswith("ci_linux")] def get_testvectors_from_config(config) -> list: with open(config) as f: cfg = json.load(f) return list(cfg["inpaths"].values()) TESTVECTORS = sorted(set(itertools.chain(*[get_testvectors_from_config(cfg) for cfg in TEST_CONFIGS]))) @pytest.mark.parametrize("testvector", TESTVECTORS) def test_vectors_available(testvector): if not pathlib.Path(testvector).exists(): raise FileNotFoundError(f"Testvector {testvector} can not be found") lib_com/core_com_config.c +8 −9 Original line number Diff line number Diff line Loading @@ -165,9 +165,9 @@ int16_t get_codec_mode( int16_t getTcxonly( const int16_t element_mode, /* i : IVAS element mode */ const int32_t total_brate, /* i : total bitrate */ const int16_t MCT_flag /* i : hMCT handle allocated (1) or not (0)*/ , const int16_t is_ism_format ) const int16_t MCT_flag, /* i : hMCT handle allocated (1) or not (0)*/ const int16_t is_ism_format /* i : flag indicating ISM format */ ) { int16_t tcxonly = 0; Loading Loading @@ -357,8 +357,7 @@ int32_t getCoreSamplerateMode2( const int32_t total_brate, /* i : total bitrate */ const int16_t bwidth, /* i : audio bandwidth */ const int16_t flag_ACELP16k, /* i : ACELP@16kHz flag */ const int16_t rf_mode /* i : flag to signal the RF mode */ , const int16_t rf_mode, /* i : flag to signal the RF mode */ const IVAS_FORMAT is_ism_format /* i : flag indicating ISM format */ ) { Loading lib_com/ivas_cnst.h +9 −0 Original line number Diff line number Diff line Loading @@ -214,6 +214,9 @@ typedef enum #define MAX_JBM_L_FRAME_NS 40000000L #define MAX_SPAR_INTERNAL_CHANNELS IVAS_SPAR_MAX_CH #define MAX_CLDFB_DIGEST_CHANNELS 4 #ifdef FIX_470_MASA_JBM_EXT #define MASA_JBM_RINGBUFFER_FRAMES 3 #endif typedef enum { Loading Loading @@ -310,6 +313,9 @@ typedef enum #define MIN_BRATE_SWB_SCE ACELP_9k60 /* min. SCE bitrate where SWB is supported */ #define MIN_BRATE_SWB_STEREO IVAS_13k2 /* min. stereo bitrate where SWB is supported */ #define MIN_BRATE_FB_STEREO IVAS_32k /* min. SCE and stereo bitrate where FB is supported */ #ifdef ISM_FB #define MIN_BRATE_FB_ISM 24000 /* min. SCE bitrate where FB is supported in ISM format */ #endif #define MIN_TDM_BRATE_WB_TBE_1k05 12000 /* min. per channel bitrate where WB TBE @1.05 kbps is supported (0.35kbs at lower bitrates) */ #define MIN_BRATE_WB_TBE_1k05 9650 /* min. per channel bitrate where WB TBE @1.05 kbps is supported (0.35kbs at lower bitrates) */ Loading Loading @@ -1420,6 +1426,9 @@ typedef enum #define PARAM_MC_MAX_BAND_ABS_COV_DEC 10 #define PARAM_MC_ENER_LIMIT_INTRAFRAME (1.5f) #define PARAM_MC_ENER_LIMIT_INTERFRAME (2.0f) #ifdef FIX_563_PARAMMC_LIMITER #define PARAM_MC_ENER_LIMIT_MAX_DELTA_FAC (15.0f) #endif #define PARAM_MC_LFE_ON_THRESH (8000.0f) #define PARAM_MC_BAND_TO_MDCT_BAND_RATIO 16 /* Ratio of resolution of CLDFB Bands to MDCT Bands */ #define PARAM_MC_SLOT_ENC_NS 2500000L Loading Loading
.gitlab-ci.yml +14 −7 Original line number Diff line number Diff line Loading @@ -7,7 +7,7 @@ variables: SANITIZER_TESTS: "CLANG1 CLANG2" OUT_FORMATS_CHANNEL_BASED: "stereo mono 5_1 5_1_2 5_1_4 7_1 7_1_4" OUT_FORMATS_SCENE_BASED: "FOA HOA2 HOA3" OUT_FORMATS_BINAURAL: "BINAURAL BINAURAL_ROOM" OUT_FORMATS_BINAURAL: "BINAURAL BINAURAL_ROOM_IR BINAURAL_ROOM_REVERB" EXIT_CODE_NON_BE: 123 EXIT_CODE_FAIL: 1 Loading Loading @@ -69,7 +69,9 @@ stages: # compare to last target branch commit before pipeline was created - target_commit=$(git log $CI_MERGE_REQUEST_TARGET_BRANCH_NAME -1 --oneline --before=${CI_PIPELINE_CREATED_AT} --format=%H) .check-for-testvectors: &check-for-testvectors # check if the testvector files specified in scripts/config/ci_linux*.json are present - python3 -m pytest ci/test_vectors_available.py .merge-request-comparison-setup-codec: &merge-request-comparison-setup-codec ### build test binaries, initial clean for paranoia reasons Loading Loading @@ -660,30 +662,35 @@ clang-format-check: expose_as: 'formatting patch' # check for crashes if first received frame on decoder side is an SID .check-first-frame-is-sid: check-first-frame-is-sid: extends: - .test-job-linux-needs-testv-dir - .rules-merge-request tags: - ivas-linux stage: test needs: ["build-codec-linux-cmake"] # needs: ["build-codec-linux-cmake"] script: - *print-common-info - *update-ltv-repo - *check-for-testvectors - cmake . - make -j # TODO: for some MASA modes, we currently do not have testvectors that actually trigger DTX - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -v MASA) - echo $modes - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 # SBA is run separately to use shorter part of file - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -v MASA | grep -v SBA) - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 -U 0:20 || exit_code_no_sba=$? - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep SBA) - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 -U 70:80 || exit_code_sba=$? - if [ $exit_code_no_sba != 0 || $exit_code_sba != 0]; then exit 1; fi artifacts: paths: - out/logs when: on_failure name: "$CI_JOB_NAME--$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--sidstart" expose_as: "logs-sidstart" expire_in: "5 days" # --------------------------------------------------------------- # Test jobs for main branch Loading
apps/decoder.c +29 −1 Original line number Diff line number Diff line Loading @@ -1607,7 +1607,11 @@ static ivas_error initOnFirstGoodFrame( /* Duplicate good first frame metadata to fill the beginning of stream. */ MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta = NULL; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); return error; Loading Loading @@ -1819,7 +1823,7 @@ static ivas_error decodeG192( } if ( ( error = IVAS_DEC_FeedExternalOrientationData( hIvasDec, Quaternion, enableHeadRotation, enableExternalOrientation, enableRotationInterpolation, numFramesToTargetOrientation ) ) != IVAS_ERR_OK ) if ( ( error = IVAS_DEC_FeedExternalOrientationData( hIvasDec, Quaternion, enableHeadRotation, enableExternalOrientation, enableRotationInterpolation, numFramesToTargetOrientation * vec_pos_len ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_DEC_FeedExternalOrientationData failed: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -1983,7 +1987,11 @@ static ivas_error decodeG192( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -2125,7 +2133,11 @@ static ivas_error decodeG192( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -2492,7 +2504,11 @@ static ivas_error decodeG192( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -3047,7 +3063,11 @@ static ivas_error decodeVoIP( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 1 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -3464,7 +3484,11 @@ static ivas_error decodeVariableSpeed( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 1 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -3634,7 +3658,11 @@ static ivas_error decodeVariableSpeed( else if ( bsFormat == IVAS_DEC_BS_MASA ) { MASA_DECODER_EXT_OUT_META_HANDLE hMasaExtOutMeta; #ifdef FIX_470_MASA_JBM_EXT if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta, 0 ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetMasaMetadata( hIvasDec, &hMasaExtOutMeta ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError in IVAS_DEC_GetMasaMetadata: %s\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; Loading
ci/test_vectors_available.py 0 → 100644 +19 −0 Original line number Diff line number Diff line import pytest import pathlib import json import itertools TEST_CONFIG_DIR = pathlib.Path(__file__).parent.parent.joinpath("scripts/config") TEST_CONFIGS = [f for f in TEST_CONFIG_DIR.iterdir() if f.name.startswith("ci_linux")] def get_testvectors_from_config(config) -> list: with open(config) as f: cfg = json.load(f) return list(cfg["inpaths"].values()) TESTVECTORS = sorted(set(itertools.chain(*[get_testvectors_from_config(cfg) for cfg in TEST_CONFIGS]))) @pytest.mark.parametrize("testvector", TESTVECTORS) def test_vectors_available(testvector): if not pathlib.Path(testvector).exists(): raise FileNotFoundError(f"Testvector {testvector} can not be found")
lib_com/core_com_config.c +8 −9 Original line number Diff line number Diff line Loading @@ -165,9 +165,9 @@ int16_t get_codec_mode( int16_t getTcxonly( const int16_t element_mode, /* i : IVAS element mode */ const int32_t total_brate, /* i : total bitrate */ const int16_t MCT_flag /* i : hMCT handle allocated (1) or not (0)*/ , const int16_t is_ism_format ) const int16_t MCT_flag, /* i : hMCT handle allocated (1) or not (0)*/ const int16_t is_ism_format /* i : flag indicating ISM format */ ) { int16_t tcxonly = 0; Loading Loading @@ -357,8 +357,7 @@ int32_t getCoreSamplerateMode2( const int32_t total_brate, /* i : total bitrate */ const int16_t bwidth, /* i : audio bandwidth */ const int16_t flag_ACELP16k, /* i : ACELP@16kHz flag */ const int16_t rf_mode /* i : flag to signal the RF mode */ , const int16_t rf_mode, /* i : flag to signal the RF mode */ const IVAS_FORMAT is_ism_format /* i : flag indicating ISM format */ ) { Loading
lib_com/ivas_cnst.h +9 −0 Original line number Diff line number Diff line Loading @@ -214,6 +214,9 @@ typedef enum #define MAX_JBM_L_FRAME_NS 40000000L #define MAX_SPAR_INTERNAL_CHANNELS IVAS_SPAR_MAX_CH #define MAX_CLDFB_DIGEST_CHANNELS 4 #ifdef FIX_470_MASA_JBM_EXT #define MASA_JBM_RINGBUFFER_FRAMES 3 #endif typedef enum { Loading Loading @@ -310,6 +313,9 @@ typedef enum #define MIN_BRATE_SWB_SCE ACELP_9k60 /* min. SCE bitrate where SWB is supported */ #define MIN_BRATE_SWB_STEREO IVAS_13k2 /* min. stereo bitrate where SWB is supported */ #define MIN_BRATE_FB_STEREO IVAS_32k /* min. SCE and stereo bitrate where FB is supported */ #ifdef ISM_FB #define MIN_BRATE_FB_ISM 24000 /* min. SCE bitrate where FB is supported in ISM format */ #endif #define MIN_TDM_BRATE_WB_TBE_1k05 12000 /* min. per channel bitrate where WB TBE @1.05 kbps is supported (0.35kbs at lower bitrates) */ #define MIN_BRATE_WB_TBE_1k05 9650 /* min. per channel bitrate where WB TBE @1.05 kbps is supported (0.35kbs at lower bitrates) */ Loading Loading @@ -1420,6 +1426,9 @@ typedef enum #define PARAM_MC_MAX_BAND_ABS_COV_DEC 10 #define PARAM_MC_ENER_LIMIT_INTRAFRAME (1.5f) #define PARAM_MC_ENER_LIMIT_INTERFRAME (2.0f) #ifdef FIX_563_PARAMMC_LIMITER #define PARAM_MC_ENER_LIMIT_MAX_DELTA_FAC (15.0f) #endif #define PARAM_MC_LFE_ON_THRESH (8000.0f) #define PARAM_MC_BAND_TO_MDCT_BAND_RATIO 16 /* Ratio of resolution of CLDFB Bands to MDCT Bands */ #define PARAM_MC_SLOT_ENC_NS 2500000L Loading