Commit b0ef1efb authored by vaclav's avatar vaclav
Browse files

Merge branch '2136-basop-PortMr1927-from-float-object-editing-broken-in-jbm' into 'main'

Port MR1947 and MR 1952 from float to BASOP - Object editing broken in JBM

Closes #2136

See merge request !2420
parents a445ed0b 49da59d2
Loading
Loading
Loading
Loading
Loading
+23 −5
Original line number Diff line number Diff line
@@ -2812,7 +2812,7 @@ static ivas_error decodeVoIP(
    int16_t nOutSamples = 0;
    bool bitstreamReadDone = false;
#ifdef OBJ_EDITING_API
    bool parameterAvailableForEditing = false;
    bool parametersAvailableForEditing = false;
#endif
    uint16_t nSamplesRendered;

@@ -3046,7 +3046,11 @@ static ivas_error decodeVoIP(
        }

#ifdef FIX_1217_OBJECT_EDIT_FILE_INTERFACE
#ifdef NONBE_FIX_1255_OBJ_EDIT_JBM
        if ( arg.objEditEnabled && arg.objEditFileName != NULL && vec_pos_update == 0 )
#else
        if ( arg.objEditEnabled && ( arg.objEditFileName != NULL ) )
#endif
        {
            if ( ( error = ObjectEditFileReader_readNextFrame( objectEditFileReader ) ) != IVAS_ERR_OK )
            {
@@ -3111,13 +3115,13 @@ static ivas_error decodeVoIP(
        {
#ifdef SUPPORT_JBM_TRACEFILE
#ifdef OBJ_EDITING_API
            if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, writeJbmTraceFileFrameWrapper, jbmTraceWriter, &bitstreamReadDone, &nSamplesRendered, &parameterAvailableForEditing, systemTime_ms ) ) != IVAS_ERR_OK )
            if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, writeJbmTraceFileFrameWrapper, jbmTraceWriter, &bitstreamReadDone, &nSamplesRendered, &parametersAvailableForEditing, systemTime_ms ) ) != IVAS_ERR_OK )
#else
            if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, writeJbmTraceFileFrameWrapper, jbmTraceWriter, &bitstreamReadDone, &nSamplesRendered, systemTime_ms ) ) != IVAS_ERR_OK )
#endif
#else
#ifdef OBJ_EDITING_API
            if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, &bitstreamReadDone, &parameterAvailableForEditing, systemTime_ms ) ) != IVAS_ERR_OK )
            if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, &bitstreamReadDone, &parametersAvailableForEditing, systemTime_ms ) ) != IVAS_ERR_OK )
#else
            if ( ( error = IVAS_DEC_VoIP_GetSamples( hIvasDec, nOutSamples, (void *) pcmBuf, &bitstreamReadDone, systemTime_ms ) ) != IVAS_ERR_OK )
#endif
@@ -3153,7 +3157,7 @@ static ivas_error decodeVoIP(

#ifdef OBJ_EDITING_API
            /* Object metadata editing */
            if ( arg.objEditEnabled && parameterAvailableForEditing == true )
            if ( arg.objEditEnabled && parametersAvailableForEditing == true )
            {
                IVAS_EDITABLE_PARAMETERS editableParameters;

@@ -3304,11 +3308,15 @@ static ivas_error decodeVoIP(
            }
        }

#ifdef NONBE_FIX_1255_OBJ_EDIT_JBM
        vec_pos_update = ( vec_pos_update + 1 ) % vec_pos_len;
#else
        // frame++;
        if ( !arg.quietModeEnabled )
        {
            fprintf( stdout, "%-8d\b\b\b\b\b\b\b\b", frame );
        }
#endif
        vec_pos_update = ( vec_pos_update + 1 ) % vec_pos_len;
        frame++;
        if ( vec_pos_update == 0 )
@@ -3316,13 +3324,23 @@ static ivas_error decodeVoIP(
            systemTime_ms += vec_pos_len * systemTimeInc_ms;
        }

#ifdef NONBE_FIX_1255_OBJ_EDIT_JBM
        if ( vec_pos_update == 0 )
        {
            frame++;
            if ( !arg.quietModeEnabled )
            {
                fprintf( stdout, "%-8d\b\b\b\b\b\b\b\b", frame );
            }
        }
#endif

#ifdef WMOPS
        update_mem();
        update_wmops();
#endif
    }


    int16_t nSamplesFlushed = 0;

    /* decode and get samples */
+1 −0
Original line number Diff line number Diff line
@@ -142,6 +142,7 @@
#endif
#define FIX_1217_OBJECT_EDIT_FILE_INTERFACE             /* Nokia: issue #1217: add decoder functionality to read object edit instructions from a file */
#define NONBE_1217_OBJ_EDIT_FOA                         /* VA/Nokia: isse 1217: fix crash in object editing to FOA output in ParamISM */
#define NONBE_FIX_1255_OBJ_EDIT_JBM                     /* VA: issue 1255: restore object editing in JBM */


/* #################### End BASOP porting switches ############################ */
+7 −1
Original line number Diff line number Diff line
@@ -5023,7 +5023,7 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
#endif
                move16();
            }

#ifndef NONBE_FIX_1255_OBJ_EDIT_JBM
#ifdef OBJ_EDITING_API
            IF( hIvasDec->hasBeenFedFirstGoodFrame )
            {
@@ -5032,6 +5032,7 @@ ivas_error IVAS_DEC_VoIP_GetSamples(

                return IVAS_ERR_OK;
            }
#endif
#endif
        }

@@ -5081,6 +5082,11 @@ ivas_error IVAS_DEC_VoIP_GetSamples(
#endif
                    *bitstreamReadDone = false;
                    move16();
#ifdef NONBE_FIX_1255_OBJ_EDIT_JBM
                    *parametersAvailableForEditing = true;
                    move16();
                    return IVAS_ERR_OK;
#endif
                }
            }