I film all of my 3D printing timelapses using the Octolapse plugin for Octoprint.
I run Octoprint on a Raspberry Pi 3B, and use a Logitech C920 camera. I use a Prusa i3 Mk2.5 for the majority of my timelapses.
To take higher resolution images for your timelapse, you can edit the /boot/octopi.txt file in your Octolapse installation.
I used PuTTy to SSH into my Pi to edit the octopi.txt file. There are instructions on how to configure it in the comments of the file.
The setting that I use is: camera_usb_options=”-r 1920×1080 -f 3
This takes stills at 1920×1080 resolution, and the stream preview is at 3fps. A higher framerate will result in a smoother preview stream within Octoprint, but it increases the strain on the Pi.
To get higher quality timelapses out of your camera, you need to manually adjust your camera settings inside of the Octolapse tab within Octoprint.
In order for your custom camera settings to be applied through Octolapse, you need to enable the default mjpegstreamer control.htm page.
Instructions for that are here: https://github.com/FormerLurker/Octolapse/wiki/Troubleshooting#why-cant-i-change-contrast-zoom-focus-etc
Things like contrast, brightness, focus, etc all depend on your specific setup. You will need to spend some time adjusting these to get the best results.
It is important to match your printer configuration settings in the Octolapse tab with the printer settings in your slicing software. If you run into issues with stringing, try increasing your retraction slightly and reduce the snapshot delay in Octolapse.
If you get stuttering/jittering in your timelapse, then you most likely need to increase your snapshot delay.
I record my timelapses at a fixed 30FPS, 18000K bitrate. Then I do color correction and scaling in post.
I plan to update this in the future, so that it is a bit more helpful.