Commit a4a8cb01 authored by norvell's avatar norvell
Browse files

Merge with main

parents a13f89a6 43472153
Loading
Loading
Loading
Loading
Loading
+12 −4
Original line number Diff line number Diff line
@@ -562,12 +562,19 @@ static void setupWithSingleFormatInput(
        positionProvider->numObjects = args.inConfig.numAudioObjects;
        for ( int16_t i = 0; i < positionProvider->numObjects; ++i )
        {
            /* It is allowed on CLI to have no metadata for an ISM input - skip opening if string is empty or contains "NULL" */
            /* Check if path to metadata file was given */
            if ( isEmptyString( args.inMetadataFilePaths[i] ) )
            {
                fprintf( stderr, "No metadata file was given for ISM input %d\n", i );
                exit( -1 );
            }

            /* It is allowed on CLI to have no metadata for an ISM input - skip opening if string contains "NULL" */
            char charBuf[FILENAME_MAX];
            strncpy( charBuf, args.inMetadataFilePaths[i], min( FILENAME_MAX, RENDERER_MAX_CLI_ARG_LENGTH ) - 1 );
            charBuf[min( FILENAME_MAX, RENDERER_MAX_CLI_ARG_LENGTH ) - 1] = '\0';
            to_upper( charBuf );
            if ( isEmptyString( args.inMetadataFilePaths[i] ) || strncmp( charBuf, "NULL", 4 ) == 0 )
            if ( strncmp( charBuf, "NULL", 4 ) == 0 )
            {
                continue;
            }
@@ -2555,6 +2562,7 @@ static CmdlnArgs defaultArgs(
    const char *executableName )
{
    CmdlnArgs args;
    int16_t i;

    strncpy( args.executableName, executableName, RENDERER_MAX_CLI_ARG_LENGTH );
    clearString( args.inputFilePath );
@@ -2573,7 +2581,7 @@ static CmdlnArgs defaultArgs(
    args.outConfig.outSetupCustom.num_lfe = 0;
    args.inConfig.ambisonicsBuses->audioConfig = IVAS_AUDIO_CONFIG_INVALID;

    for ( int32_t i = 0; i < RENDERER_MAX_ISM_INPUTS; ++i )
    for ( i = 0; i < RENDERER_MAX_ISM_INPUTS + RENDERER_MAX_MASA_INPUTS; ++i )
    {
        clearString( args.inMetadataFilePaths[i] );
    }
@@ -2610,7 +2618,7 @@ static CmdlnArgs defaultArgs(
    args.render_framesize = IVAS_RENDER_FRAMESIZE_20MS;
    args.syncMdDelay = 0;

    for ( int32_t i = 0; i < RENDERER_MAX_ISM_INPUTS; ++i )
    for ( i = 0; i < RENDERER_MAX_ISM_INPUTS; ++i )
    {
        args.directivityPatternId[i] = 65535;
    }
+3 −0
Original line number Diff line number Diff line
@@ -134,6 +134,7 @@ typedef enum
    IVAS_ERR_BITSTREAM_READER_INVALID_FORMAT,
    IVAS_ERR_NO_FILE_OPEN,
    IVAS_ERR_SAMPLING_RATE_UNKNOWN,
    IVAS_ERR_EXTERNAL_ORIENTATION_INVALID_FORMAT,

    /*----------------------------------------*
     *    renderer (lib_rend only)            *
@@ -271,6 +272,8 @@ static inline const char *ivas_error_to_string( ivas_error error_code )
            return "Invalid input format";
        case IVAS_ERR_INVALID_INDEX:
            return "Invalid index";
        case IVAS_ERR_EXTERNAL_ORIENTATION_INVALID_FORMAT:
            return "Euler angles were detected in the input but only Quaternions are supported";
        default:
            break;
    }
+4 −4
Original line number Diff line number Diff line
@@ -308,8 +308,9 @@ ivas_error ivas_init_decoder(

ivas_error ivas_output_buff_dec(
    float *p_output_f[],                                        /* i/o: output audio buffers                    */
    const int16_t nchan_out_buff_old,                           /* i  : previous frame number of output channels*/
    const int16_t nchan_out_buff                                /* i  : number of output channels               */
    const int16_t nchan_out_buff,                               /* i  : number of output channels               */
    const int16_t Opt_tsm,                                      /* i  : TSM option flag                         */
    DECODER_TC_BUFFER_HANDLE hTcBuffer                          /* i  : TSM buffer handle                       */
);

ivas_error stereo_dmx_evs_init_encoder(
@@ -5823,8 +5824,7 @@ void ivas_omasa_separate_object_render_jbm(
    const uint16_t nSamplesRendered,                            /* i  : number of samples rendered              */
    float input_f[][L_FRAME48k],                                /* i  : separated object signal                 */
    float *output_f[],                                          /* o  : rendered time signal                    */
    const int16_t subframes_rendered,                           /* i  : number of subframes rendered            */
    const int16_t slots_rendered                                /* i  : number of CLDFB slots rendered          */
    const int16_t subframes_rendered                            /* i  : number of subframes rendered            */
);

void ivas_omasa_encode_masa_to_total(
+7 −1
Original line number Diff line number Diff line
@@ -198,12 +198,18 @@ void ivas_buffer_deinterleaved_to_interleaved(
)
{
    int16_t ch, m;
    float buffer[MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS][L_FRAME48k]; /* temp buffer needed when "*audio[]" and "*audio_out[]" are the same */

    for ( ch = 0; ch < n_channels; ch++ )
    {
        mvr2r( audio[ch], buffer[ch], frame_length );
    }

    for ( ch = 0; ch < n_channels; ch++ )
    {
        for ( m = 0; m < frame_length; m++ )
        {
            audio_out[m * n_channels + ch] = audio[ch][m];
            audio_out[m * n_channels + ch] = buffer[ch][m];
        }
    }

+3 −4
Original line number Diff line number Diff line
@@ -136,6 +136,7 @@
/*#define DEBUG_JBM_CMD_OPTION*/                /* ability for telling the decoder the frontend fetch size and to not delay compensate for bad frames at the beginning */
/*#define VARIABLE_SPEED_DECODING*/             /* variable speed decoding employing the JBM functioniality; move to DEBUGGING after build for disabled is fixed */
/*#define DISABLE_LIMITER*/                     /* disable the limiter */
/*#define DEBUG_APA_SILENCE_NON_SCALED*/        /* Switch APA into mode that replaces contents of non-scaled frames with silence. Useful for identifying scaled regions in the audio output of the decoder */

/*Split Rendering Debug switches*/
/*#define DBG_WAV_WRITER*/                      /* add debugging function dbgwrite_wav() */
@@ -162,7 +163,6 @@

/*#define FIX_I4_OL_PITCH*/                             /* fix open-loop pitch used for EVS core switching */
#define TMP_FIX_1119_SPLIT_RENDERING_VOIP               /* FhG: Add error check for unsupported config: split rendering with VoIP mode */
/*#define CODE_IMPROVEMENTS*/                               /* FhG: Small code improvements that do not change the functionality */

/* #################### End BE switches ################################## */

@@ -173,9 +173,8 @@

#define NONBE_1244_FIX_SWB_BWE_MEMORY                   /* VA: issue 1244: fix to SWB BWE memory in case of switching from FB coding - pending a review by Huawei */ 
#define NONBE_1122_KEEP_EVS_MODE_UNCHANGED              /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR.  */
#define NONBE_FIX_TCX5_INTERLEAVING_FOR_FS_IN_UNEQUAL_FS_OUT /* FhG: apply correct TCX5 grouping/interleaving when input_fs != output_fs */
#define NONBE_1339_FIXOSBA_EXT_LOUDNESS                 /* FhG: issue 1339: apply scaling with EXT output in OSBA high-BR mode */
#define NONBE_1352_HARMONIZE_OSBA_LOUDNESS             /* FhG: do not scale OSBA inputs by 0.5 any more */
#define NONBE_1328_FIX_NON_LINEARITY                    /* VA: Fix possible issue when computing bwe_exc_extended and previous frame were almost 0  */
#define NONBE_1321_JBM_ASSERT_BITRATE_SWITCHING         /* FhG: Fix assert being hit in JBM code during rate switching */

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

Loading