This is what I learned Blender for.
I finished this song September 8 and then thought about what a video for it should look like for a couple of weeks. I eventually decided on something close to what you see here: a beach ball being bounced by mechanical paddles in front of a movie of the beach. Why would someone do that to a ball? Nobody knows.
I decided I needed to do that in a 3D animation app. Blender, being free, was the obvious choice. But Blender is an amazingly powerful application that is almost nothing like any application I've ever used. So the learning curve is immensely high. That's why it took my basically three months to do this scene.
The movie on the screen is made from videos of the beach I took with my phone at the end of September, and a few stills from other beach trips - that was all assembled into a single video separately in Blender.
The simple fact that I wanted to be able to see that movie projecting through the air means I had to use Blender's high-quality ray tracing renderer for this. "Suspended" used Blender's real-time renderer (in high-quality mode), which looks good, but the real-time renderer can't do the atmospheric effects needed to show light passing through cloudy air. So, while "Suspended" took a bit less than 4 hours to render two minutes, this took 102 hours to render these three minutes - 4900 frames, average of 75 seconds each. Once all the frames were rendered, I composed them and the audio into the final video, also in Blender.
The rendering process happens almost entirely on the GPU, and none of the other computers in my house have GPUs that can handle the requirements. And that's why I'm never going to fix anything in it, even though there is plenty I know I should fix.