I didn't emphasize that one of my primary goals was having a transparent background for my animation. The reason was, I wanted to have the background color of the animation blend with my site's CSS color.
If I didn't misunderstand everything I read, I could get transparency on a static GIF, but not with an animated GIF or an MP4 video.
Previously, I had used an animated GIF on this site, but I could never get around the caching problem. The animation would only play for the user the first time, and the cached version would not be animated. That was what steered me toward embedding a video. My final solution was to match the CSS background color with the video background color. The match was better than I expected.
For anyone curious, here's the result on my test site: https://test.aptmaps.us/.
There's a static image that loads before the MP4 has fully downloaded. I'd be curious to know if the video fails to "play" for anyone after no more than, say, 30 seconds. The video loops every 10 seconds.
Thanks.