Calling setListenerAttributes in game loop doesn't work

When calling setListenerAttributes in my game loop I always get FMOD_ERR_INVALID_PARAM, but calling it just after initialising the System I get FMOD_OK just as expected. This happens with any values I try to use.

These are the values I’m passing in with FMOD_3D_ATTRIBUTES

    FMODSystem > pos: {X: 928, Y: 0, Z: 1248 }
    vel: {X: 0, Y: 0, Z: 0 }
    up: {X: 0, Y: 1, Z: 1 }
    fwd: {X: 0, Y: 0, Z: 0 }
    03:04:33 [LWJGL Application] {ERROR} h.a.s.s.g.PlayScreen >> FMOD_ERR_INVALID_PARAM

The forward and up vectors must be of unit length (1.0).

https://fmod.com/resources/documentation-api?version=2.0&page=core-api-common.html#fmod_3d_attributes

Eg.

up: {X: 0, Y: 1, Z: 0 }
fwd: {X: 0, Y: 0, Z: 1 }