phw / peek

Simple animated GIF screen recorder with an easy to use interface
GNU General Public License v3.0
10.15k stars 318 forks source link

webm output cuts off unexpectedly #330

Open spaasis opened 6 years ago

spaasis commented 6 years ago

Peek 1.3.1 GTK 3.22.30 glib: 2.56.1 Antergos Linux with Gnome 3.28.2

Hi, I've been testing Peek this morning and noticed that the output webm length is ~half of the recording time. Some data: 10s recording -> 5s output 15s recording -> 6s output 20s recording -> 5s output 40s recording -> 16s output

The way I'm testing this is recording a stream that has the current timestamp in seconds. I don't see any noticeable speeding up in the output video, and the end timestamp is not anywhere near the one in the source video at the time of stopping the recording. Recording gifs works as expected.

I noticed that webm processing takes a fraction of the gif's. Might or might not be related.

I'll be happy to supply any logs or other data you need. Really liking the software so far, but will have to stick to recording gifs for now.

spaasis commented 6 years ago

Also, no extra messages when running via terminal

phw commented 6 years ago

That's very strange, especially as you say GIF recording works. Because under the hood GIF also records a WebM file which then gets converted into a GIF animation. There are some differences in qality settings, but that strange.

Some questions:

I noticed that webm processing takes a fraction of the gif's

That's expected. WebM is just recorded as is, while for GIF first a video is recorded and then it needs to be converted into GIF

spaasis commented 6 years ago

Okay, here's some answers

Here are two roughly 15s clips (the skipping time is mostly due to the stream being recorded. The important part is that both clips should cut off at or just before the counter hits xx.yy.15)

With ffmpeg - complete gnome-shell - skips

Both files are the same size (1,6MB) which is a bit weird

phw commented 6 years ago

Pretty weird, especially when screencast works (Peek on Gnome is using Gnome's screencast capability in the background). So far I cannot reproduce this, but I will test a bit more and also compare the default Gnome screencast settings and see if there is any difference that could be responsible.

One thing you could try is using different framerates. Is this maybe only happing on higher framerates?

spaasis commented 6 years ago

Okay, it seems to have more to do with what's on the screen (being recorded or not) than anything else (checked the framerates, no difference). I took plenty of 15s recordings from different windows (desktop background, Thunderbird, Firefox) and they're all doing fine, but if I have a video or a stream playing while I'm recording it skips quite a lot.

At the same time the gnome-shell CPU and Memory consumption go through the roof.

I have absolutely no idea how the whole screen capture can work okay, but the partial capture doesn't..

llebout commented 4 years ago

Got the same issue too

ilar commented 4 years ago

Also have this issue. Anything I can add to help narrow this issue down?

ThisGuyCodes commented 4 years ago

I have this as well. Worth noting is that mp4 recordings retain the whole thing as well (for me, don't know about OP).

I'm on Pop!_OS 20.04 (ubuntu based). Also happy to help with reproducing / logs.

MrEldritch commented 2 years ago

Hey, just noting I have the same issue - when recording WEBM output, rendered videos are always substantially shorter than the length I actually recorded. Happy to do anything I need to help reproduce. (I'm on Ubuntu 18.04.5 LTS). I just tried recording on mp4 and, sure enough, I'm not experiencing the weird cutoff there!