-y is there so that I don't have to manually say "yes, please overwrite the existing file"
both -r flags are for framerate
-start_number is probably not necessary
-i gives the filename pattern with syntax as understood by printf
-pix_fmt yuv420p is necessary because the default (maybe only for ppm?) is 444, which requires "advanced" h264 decoders on the receiving end, and twitter immediately rejects those files
-sws_flags neighbor makes sure pixels stay shark
-c:v sets the video codec to use