Parameter final value is not changing

Hello.
I try to change the value of the parameter during runtime, but the final value does not change for some reason and because of this the parameter does not affect the sound in any way.

I also noticed that if I set the “Persistent” parameter to “On”, everything works. Should I leave this parameter enabled or am I doing something wrong?

using FMODUnity;
using UnityEngine;

public class Test : MonoBehaviour
{
    public StudioEventEmitter emitter;
    public float value = 1.0f;

    [ContextMenu("SetParameterAndPlay")]
    private void SetParameterAndPlay()
    {
        emitter.EventInstance.setParameterByName("RestSecondsToNight", value);
        emitter.EventInstance.getParameterByName("RestSecondsToNight", out float a, out float b);
        emitter.Play();

        UnityEngine.Debug.Log($"value: {a}"); // print right value
        UnityEngine.Debug.Log($"final value: {b}"); // print 10 (default value)
    }
}

Thanks.