InvalidCastException: Unable to cast object of type 'SignalReceiver' to type 'CinemachineBrain'

Our Android player is hitting an exception in the Timeline package code, and we need some help understanding why. We are using a Timeline, and eventually, sometimes, the exception is raised from CinemachineMixer.ProcessFrame when trying to cast the playerData argument:

        public override void ProcessFrame(Playable playable, FrameData info, object playerData)
        {
            base.ProcessFrame(playable, info, playerData);

            // Get the brain that this track controls.
            // Older versions of timeline sent the gameObject by mistake.
            GameObject go = playerData as GameObject;
            if (go == null)
                mBrain = (CinemachineBrain)playerData;

Unity 2020.3.16f1, Cinemachine 2.7.8

This looks to be a Timeline bug. Can you file a bug report with a repro project?

We don’t know how to repro it yet; we discovered the exception in a released player via our logging agregator. Any clues as to how it might happen might help a repro. I don’t follow the code that feeds the wrong object to this method, as it is quite complicated.