It’s a current bug
tl;dr: use -lag-in-frames 0
as a workaround for now
I have been creating stinger transitions for my stream. These are animated transparent transitions that switch out scenes when at least one frame has no transparency.
I’ve been using Blender to create the animations, and ffmpeg to encode the images into a video. The VP9 encoder can handle transparent videos, so the command looks like:
ffmpeg -framerate 60 -f image2 -i frame%04d.png -c:v libvpx-vp9 -pix_fmt yuva420p -an -lossless 1 stinger.webm
However, my latest stinger was slightly longer than others at five seconds. I noticed that it was ending a few frames too early. Thanks to Carl on the ffmpeg-user mailing list it was pointed out that this is a known bug.
In the Trac ticket a user called User posits the problem is with lag-in-frames; by setting it to 0 the correct number of frames are output.