Calculating animation clip length with speed modifier

I’m delaying a camera effect until a specific player animation clip has finished. I know the clip’s length, and it’s speed has been set to 5 (not the animator speed, the clip speed).

Before, when the speed was 1, delaying the camera effect by the length of the clip worked perfectly. Now that the speed is 5, delaying the effect by dividing length by speed doesn’t appear give the proper timing.

I’ve tried looking for Unity documentation on how the speed parameter affects a clip, got nothing. I tried several different avenues to calculate the new length with AnimationStateInfo and ClipInfo. Pretty stumped on something that should be simple.

What I use is this:
float currentClipLength = (currentClip.length / animator.speed) / stateInfo.speed;
If you use asset bundle for this, there is a Unity bug where the length will be 1.0f. It is supposed to be fixed in Unity 5.4…

Short answer, use
AnimatorStateInfo stateInfo = animator.GetCurrentAnimatorStateInfo(0);
where 0 is the layer used.
Than : stateInfo.speed.