Commit 423900c0 authored by bayers's avatar bayers
Browse files

Merge branch...

Merge branch '809-combined-orientation-external-target-interpolation-different-within-frame-and-on-frame-borders' into 'main'

[Non-BE] Resolve "Combined orientation external target interpolation different within frame and on frame borders"

See merge request !1099
parents b2b43a4c e9dcc714
Loading
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -216,6 +216,7 @@
#define NONBE_FIX_797_OMASA_INACTIVE_SEP_OBJ                 /* VA: issue 797:  fix of crash when the separated object is inactive and the MASA metadata is using very few bits */
#define NONBE_FIX_798_OSBA_MC_DEC_CRASH
#define NONBE_FIX_806_OMASA_ONE_SEP_TRANSPORT_MIX             /* Nokia: issue 806: fix one separated object mode transport mix of the separated object */
#define NONBE_FIX_809_EXTERNAL_TARGET_INTERPOLATION           /* FhG: issue 809: unify external target interpolation inter and intra frame behaviour */

#define JBM_FOR_OSBA                                          /* FhG: implement OSBA format in the JBM path */

+17 −1
Original line number Diff line number Diff line
@@ -1362,8 +1362,24 @@ static void external_target_interpolation(
            {
                if ( i > 0 )
                {
#ifdef NONBE_FIX_809_EXTERNAL_TARGET_INTERPOLATION
                    if ( hExtOrientationData->enableExternalOrientation[i - 1] == 0 )
                    {
                        IVAS_QUATERNION identity;
                        identity.w = 1.0f;
                        identity.x = identity.y = identity.z = 0.0f;
                        hCombinedOrientationData->Quaternions_ext_interpolation_start = identity;
                    }
                    else if ( hExtOrientationData->enableExternalOrientation[i - 1] == 2 )
                    {
                        hCombinedOrientationData->Quaternions_ext_interpolation_start = hCombinedOrientationData->Quaternion_frozen_ext;
                    }
                    else
#endif
                    {
                        hCombinedOrientationData->Quaternions_ext_interpolation_start = hExtOrientationData->Quaternions[i - 1];
                    }
                }
                else
                {
                    hCombinedOrientationData->Quaternions_ext_interpolation_start = hCombinedOrientationData->Quaternion_prev_extOrientation;