What might be the reasons for playSound to return FMOD_ERR_MEMORY if the createSound is FMOD_OK (using ((FMOD_MODE)(FMOD_SOFTWARE | FMOD_CREATESTREAM), open state is FMOD_OPENSTATE_READY and there is enought memory according to Memory_GetStats

I actually realized it happened because I used it across systems i.e. the sound was created by one system and then played by a second system (with a different output plugin and handle passed to it in the initSystem).