8
$\begingroup$

I'm trying to squeeze a little better quality out of my time lapses generated by OctoPrint.

I'm using the Raspberry Pi Camera Module V2 with a Pi 3. I've already edited the Octopi config to get 720p resolution, but the encoding during time lapse rendering is horrific. Blocky as hell.

Right now the encoding is set up at 5000k. What am I doing wrong here?

$\endgroup$
  • 2
    $\begingroup$ I would say it's not a good group for such question. RaspberryPI group is even better than 3d printing $\endgroup$ – darth pixel May 3 '16 at 6:22
  • $\begingroup$ What does encoding at 5000K mean? Sounds like color temperature to me, which (unlikely) might be one cause of blockyness. $\endgroup$ – kamuro May 4 '16 at 8:25
  • $\begingroup$ @kamuro 5000k is the bit rate of the encoded video. $\endgroup$ – nscan May 4 '16 at 21:07
  • 1
    $\begingroup$ being curious: is K a unit I don't know or is some b/s for bits/second missing? $\endgroup$ – kamuro May 6 '16 at 8:55
  • $\begingroup$ I think the bits/second is missing. $\endgroup$ – nscan May 9 '16 at 1:11
3
$\begingroup$

That bitrate is pretty low, which might explain the blockiness (is that a word?).

From YouTube's upload guidelines, you are encoding at the minimum recommended bitrate for standard 720P video. Maybe you should boost to 7500K (7.5 Mbps) and see if that helps.

Also, it appears that Octopi is merely calling ffmpeg locally and returning the video. The encoding that is being used might be resulting in blockiness. If you have access to the raw photos, you could just dump them into a directory on another machine and generate a video using a less-lossy video codec. Of course, this would only work if the photos you are taking are high quality. Assuming that they are, here is a nice resource for producing videos from image sequences in ffmpeg.

Good luck!

P.S. Alternatively, if you prefer a lightweight video tool with a GUI, you could use ImageJ.

$\endgroup$
2
$\begingroup$

There's a new timelapse plugin called octolapse that may help. One of the things I noticed with the default timelapses is that lots of things change from image to image, which results in HUGE amounts of mpeg artifacts as it has to constantly redraw large parts of the screen. With octolapse and it's stabilized images the change from image to image is very minimal... mostly just the new layer. The reduction of how much stuff is moving means the same, or even lower, encoded bitrate produces far superior movies.

Compare this 11.1 MB file from the default timelapse tool: https://cabbey.smugmug.com/Fun/3D-Printing/i-9DrS42n/A

to this 6.8MB file from octolapse: https://cabbey.smugmug.com/Fun/3D-Printing/i-p3GvvhH/A

Note that these are the SAME PRINT JOB, as I had both tools recording at the same time.

$\endgroup$
  • 1
    $\begingroup$ Excellent comparison! Octolapse clearly produces a far better stable video, thanks for sharing your experience. My camera is positioned on the bed, I wonder if the impact is the same. $\endgroup$ – 0scar Jun 9 '18 at 10:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.