Commit 1bb500b9 authored by Devansh Kandpal's avatar Devansh Kandpal
Browse files

Merge branch 'ivas-float-update' of...

Merge branch 'ivas-float-update' of https://forge.3gpp.org/rep/sa4/audio/ivas-basop into 1863_ref_port_fl1678
parents b93c0eaf d1f8daad
Loading
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -1586,6 +1586,7 @@ static bool parseCmdlIVAS_enc(
                {
                    fprintf( stderr, "Error: Too low number of ISM channels specified!\n\n" );
                    usage_enc();
                    return false;
                }
                else
                {
@@ -1597,6 +1598,7 @@ static bool parseCmdlIVAS_enc(
                    {
                        fprintf( stderr, "Error: Too high number of ISM channels!\n\n" );
                        usage_enc();
                        return false;
                    }
                }
            }
@@ -1604,6 +1606,7 @@ static bool parseCmdlIVAS_enc(
            {
                fprintf( stderr, "Error: Number of ISM channels not specified!\n\n" );
                usage_enc();
                return false;
            }
            if ( i < argc - 4 )
            {
@@ -1623,7 +1626,7 @@ static bool parseCmdlIVAS_enc(
                    default:
                        fprintf( stderr, "Error: MASA channels must be 1 or 2.\n\n" );
                        usage_enc();
                        break;
                        return false;
                }
            }

@@ -1648,6 +1651,7 @@ static bool parseCmdlIVAS_enc(
                {
                    fprintf( stderr, "Error: not enough arguments\n\n" );
                    usage_enc();
                    return false;
                }
            }

@@ -1660,6 +1664,7 @@ static bool parseCmdlIVAS_enc(
            {
                fprintf( stderr, "Error: not enough MASA arguments\n\n" );
                usage_enc();
                return false;
            }
        }
        else if ( strcmp( to_upper( argv[i] ), "-ISM_SBA" ) == 0 )
@@ -1678,6 +1683,7 @@ static bool parseCmdlIVAS_enc(
                {
                    fprintf( stderr, "Error: Too low number of ISM channels specified!\n\n" );
                    usage_enc();
                    return false;
                }
                else
                {
@@ -1689,6 +1695,7 @@ static bool parseCmdlIVAS_enc(
                    {
                        fprintf( stderr, "Error: Too high number of ISM channels!\n\n" );
                        usage_enc();
                        return false;
                    }
                }
            }
@@ -1696,6 +1703,7 @@ static bool parseCmdlIVAS_enc(
            {
                fprintf( stderr, "Error: Number of ISM channels not specified!\n\n" );
                usage_enc();
                return false;
            }

            if ( i < argc - 4 )
@@ -1747,6 +1755,7 @@ static bool parseCmdlIVAS_enc(
                {
                    fprintf( stderr, "Error: not enough arguments\n\n" );
                    usage_enc();
                    return false;
                }
            }
        }
+12 −1
Original line number Diff line number Diff line
@@ -1081,7 +1081,18 @@ int main(
            fprintf( stderr, "\nFailed to read renderer configuration from file %s\n", args.renderConfigFilePath );
            goto cleanup;
        }

#ifdef NONBE_FIX_1337_MISSING_DIRECTIVITY_DISTATT_EXTREND
        if ( ( error = RenderConfigReader_getDirectivity( renderConfigReader, args.directivityPatternId, renderConfig.directivity ) ) != IVAS_ERR_OK )
        {
            fprintf( stderr, "Failed to get directivity patterns for one or more of IDs: %d %d %d %d\n\n", args.directivityPatternId[0], args.directivityPatternId[1], args.directivityPatternId[2], args.directivityPatternId[3] );
            goto cleanup;
        }
        if ( ( error = RenderConfigReader_getDistanceAttenuation( renderConfigReader, renderConfig.distAtt ) ) != IVAS_ERR_OK )
        {
            fprintf( stderr, "Failed to get Distance Attenuation \n\n" );
            goto cleanup;
        }
#endif
        if ( args.outConfig.audioConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
        {
#ifdef FIX_1053_REVERB_RECONFIGURATION
+4 −0
Original line number Diff line number Diff line
@@ -4549,9 +4549,11 @@ ivas_error preview_indices(
            case SID_ISM:
                st_ivas->ivas_format = ISM_FORMAT;
                break;
#ifndef FIX_1209_SID_SIGNALING
            case SID_MULTICHANNEL:
                st_ivas->ivas_format = MC_FORMAT;
                break;
#endif
            case SID_SBA_1TC:
                st_ivas->ivas_format = SBA_FORMAT;
                st_ivas->element_mode_init = IVAS_SCE;
@@ -4576,7 +4578,9 @@ ivas_error preview_indices(
                }
                break;
            default:
#ifndef FIX_1209_SID_SIGNALING
                /* This should actually be impossible, since only 3 bits are read, so if this happens something is broken */
#endif
                return IVAS_ERROR( IVAS_ERR_INTERNAL_FATAL, "Invalid value %c found in SID format field.", st_ivas->sid_format );
        }
    }
+6 −0
Original line number Diff line number Diff line
@@ -183,7 +183,9 @@ typedef enum

typedef enum
{
#ifndef FIX_1101_CLEANING_JBM_CALL
    TC_BUFFER_MODE_NONE = 0,
#endif
    TC_BUFFER_MODE_RENDERER,
    TC_BUFFER_MODE_BUFFER
} TC_BUFFER_MODE;
@@ -238,7 +240,11 @@ typedef enum
#define SID_MDCT_STEREO                         0x1                         /*      1|      0|     0 */
#define SID_ISM                                 0x2                         /*      0|      1|     0 */
#define SID_MASA_1TC                            0x3                         /*      1|      1|     0 */
#ifdef FIX_1209_SID_SIGNALING
/*reserved*/                                  /*0x4*/                       /*      0|      0|     1 */
#else
#define SID_MULTICHANNEL                        0x4                         /*      0|      0|     1 */
#endif
#define SID_SBA_1TC                             0x5                         /*      1|      0|     1 */
#define SID_SBA_2TC                             0x6                         /*      0|      1|     1 */
#define SID_MASA_2TC                            0x7                         /*      1|      1|     1 */
+12 −0
Original line number Diff line number Diff line
@@ -336,6 +336,10 @@ ivas_error ivas_dec(
    int16_t *data                                               /* o  : output synthesis signal                 */
);

ivas_error ivas_dec_get_format(
    Decoder_Struct *st_ivas                                     /* i/o: IVAS decoder structure                  */
);

ivas_error ivas_dec_setup(
    Decoder_Struct *st_ivas,                                    /* i/o: IVAS decoder structure                  */
    uint16_t *nSamplesRendered,                                 /* o  : number of samples flushed from the previous frame (JBM) */
@@ -3085,7 +3089,11 @@ void mctStereoIGF_enc(
    MCT_ENC_HANDLE hMCT,                                        /* i/o: MCT encoder structure                   */
    Encoder_State **sts,                                        /* i/o: encoder state structure                 */
    float *orig_spectrum[MCT_MAX_CHANNELS][NB_DIV],             /* i  : MDCT spectrum for ITF                   */
#ifdef NONBE_FIX_1097_SBA_DTX_BRATE_SWITCHING_ENC
    float *powerSpec[MCT_MAX_CHANNELS],                         /* i/o: MDCT^2 + MDST^2 spectrum,or estimate    */
#else
    float powerSpec[MCT_MAX_CHANNELS][L_FRAME48k],              /* i/o: MDCT^2 + MDST^2 spectrum,or estimate    */
#endif
    float *powerSpecMsInv[MCT_MAX_CHANNELS][NB_DIV],            /* i  : same as above but for inverse spect.    */
    float *inv_spectrum[MCT_MAX_CHANNELS][NB_DIV],              /* i  : inverse spectrum                        */
    const int16_t sp_aud_decision0[MCT_MAX_CHANNELS]            /* i  : speech audio decision                   */
@@ -5797,7 +5805,11 @@ void ivas_omasa_combine_separate_ism_with_masa(
    const int16_t output_frame                                  /* i  : output frame length per channel        */
);

#ifdef FIX_1161_REDUCE_OMASA_HEAP
ivas_error ivas_omasa_objects_delay_open(
#else
ivas_error ivas_omasa_render_objects_from_mix_open(
#endif
    Decoder_Struct *st_ivas                                     /* i/o: IVAS decoder structure                 */
);

Loading