Playing back audio table programmer sounds on Unity Timeline at edit time (and runtime)

The playable code is just boilerplate, the issue stems from the callback and need to create sounds with the Runtime API (meaning, there is no ability to create sounds at edit time without the runtime API).

Here’s the relevant block in the callback code (which is mostly just the example code) -

case FMOD.Studio.EVENT_CALLBACK_TYPE.CREATE_PROGRAMMER_SOUND:
{
    FMOD.MODE soundMode = FMOD.MODE.LOOP_NORMAL | FMOD.MODE.CREATECOMPRESSEDSAMPLE | FMOD.MODE.NONBLOCKING;
    var parameter = (FMOD.Studio.PROGRAMMER_SOUND_PROPERTIES)Marshal.PtrToStructure(parameterPtr, typeof(FMOD.Studio.PROGRAMMER_SOUND_PROPERTIES));
    FMOD.Studio.SOUND_INFO dialogueSoundInfo;
    var keyResult = FMODUnity.RuntimeManager.StudioSystem.getSoundInfo(key, out dialogueSoundInfo);
    // FMODUnity.EditorUtils.System.getSoundInfo(key, out dialogueSoundInfo); edit mode - not supported
    if (keyResult != FMOD.RESULT.OK)
    {
        UnityEngine.Debug.LogError($"failed to load programmer sound {key} with error {keyResult}");
        break;
    }
    FMOD.Sound dialogueSound;
    var soundResult = FMODUnity.RuntimeManager.CoreSystem.createSound(dialogueSoundInfo.name_or_data, soundMode | dialogueSoundInfo.mode, ref dialogueSoundInfo.exinfo, out dialogueSound);
    if (soundResult != FMOD.RESULT.OK)
    {
        UnityEngine.Debug.LogError($"failed to create programmer sound {key} with error {soundResult}");
        break;
    }

    parameter.sound = dialogueSound.handle;
    parameter.subsoundIndex = dialogueSoundInfo.subsoundindex;
    Marshal.StructureToPtr(parameter, parameterPtr, false);
    break;
}

I looked around on the forums a lot and you’ve answered a similar issue before:

As from the quoted post - is the way to do this to create a new system at edit time that the timeline uses?

What would be nice is if audiotable audio worked in the timeline by default, but given the complexity around what that audio may be maybe it’s not possible?

Let me know whats best here.