After recording a GIF, the file is played correctly for about 2 seconds before freezing, then it continues with a lot of cuts. Downsampling solves this; changing the framerate does not (no effect, it still has this problem); changing the size of the window that records the GIF also has no effect, only increasing downsampling does. However, many times, it isn't an option to have the GIF at a smaller image size.
A few questions to narrow this down:
peek -b ffmpeg
make any difference?1 & 2: Installed the flatpak package on Debian 9 with GNOME on X, but it also happens under Wayland; I can reproduce this on Fedora Workstation as well.
The recorded WebM has the same freezing and glitching the GIF has.
Videos recorded with the built-in screen recorder are perfect. Yes, they appear at ~/Videos
I tested with both gnome-shell and ffmpeg backends by specifying them in the command. One backend records the video just fine: gnome-shell. But ffmpeg doesn't. This made me realize I was only having this problem with other DEs, because here with GNOME the gnome-shell backend is the default, so it works out-of-the-box.
By choosing ffmpeg or using a different DE, the videos end up corrupted, freezing and jumping scenes in a predictable way. I mean, it freezes always at the same time of playback, jumps through a lot of scenes and then resumes when it's almost ending. It's not random, it happens in the same way every time.
- Did you record on Gnome or some other DE?
I am using XFCE. More specifically, the version from Linux Mint 18.3.
- Wayland or X?
X.
- Does recording a WebM have the same effect?
Yes. The same freezing effect.
- If on Gnome X11 session, does starting Peek with peek -b ffmpeg make any difference?
Even though I'm not on Gnome, I tried the command; the backend doesn't record the GIF just fine. No success.
I have the same problem on Xubuntu 18.04 recording Gifs and Webms with relative high fps
Gif @ 24 fps using Peek (installed)
Gif @ 24 fps using Peek (Appimage)
I also have the same issue on Arch Linux + lightdm + i3wm. Thanks for the tip with downsampling, this is the only way to record smooth gifs currently.
For reference, here is what happens when I record the same actions with downsampling of 2 and 1. I'm doing _exactly the same actions_ on both gifs, but notice how half of my steps are simply gone from the high-quality gif, e.g. it froze and skipped opening of the menu.
I'm attaching the original gif.zip in case you want to analyze them, because I think Github might tamper with pictures after uploading.
Having the same exact issue on Elementary OS + Gala
Same issue here:
peek 1.3.1
Archlinux
AwesomeWM 4.2
xorg-server 1.20.0
nvidia 396.24
Exactly the same issue either under Archlinux (KDE 5.13; xorg-server 1.20.0-9; xf86-video-intel) and under Antergos (with an NVIDIA driver).
Same issue as well in both Webm and Gif formats. Even using high-res gifs.
Peek (flatpack) 1.3.1
Linux Mint 18.3 kernel 4.15.0-24-generic
Cinnamon: 3.6.7+sylvia
Xserver-xorg-core: 1.18.4-0ubuntu0.7
Nvidia drivers: 384.130
Any news on this?
Are there any improves on this? I still have this problem :/
I have the same problem (Antergos/Arch user here on X), but even with downsampling, and it's present on all file types. I think it has to do with the way Peek captures windows.
I still have this issue with 1.4.0
I am also experiencing this, manjaro linux install peek from AUR, use lightdm for login and i3-gaps for WM
$ pacman -Qi xorg-server lightdm peek i3-gaps
Name : xorg-server
Version : 1.20.7-1
Description : Xorg X server
Architecture : x86_64
URL : https://xorg.freedesktop.org
Licenses : custom
Groups : xorg
Provides : X-ABI-VIDEODRV_VERSION=24.0 X-ABI-XINPUT_VERSION=24.1 X-ABI-EXTENSION_VERSION=10.0 x-server
Depends On : libepoxy libxfont2 pixman xorg-server-common libunwind dbus libgl xf86-input-libinput nettle
libpciaccess libdrm libxshmfence
Optional Deps : None
Required By : None
Optional For : None
Conflicts With : nvidia-utils<=331.20 glamor-egl xf86-video-modesetting
Replaces : glamor-egl xf86-video-modesetting
Installed Size : 3.50 MiB
Packager : Philip Mueller <[email protected]>
Build Date : Tue 14 Jan 2020 06:27:33 AM MST
Install Date : Wed 12 Feb 2020 10:22:42 AM MST
Install Reason : Explicitly installed
Install Script : Yes
Validated By : Signature
Name : lightdm
Version : 1:1.30.0-2
Description : A lightweight display manager
Architecture : x86_64
URL : https://www.freedesktop.org/wiki/Software/LightDM/
Licenses : GPL3 LGPL3
Groups : None
Provides : None
Depends On : glib2 libgcrypt libx11 libxcb libxdmcp libxklavier pam polkit
Optional Deps : accountsservice: Enhanced user accounts handling [installed]
lightdm-gtk-greeter: GTK greeter
xorg-server-xephyr: LightDM test mode
Required By : lightdm-slick-greeter
Optional For : None
Conflicts With : None
Replaces : None
Installed Size : 1959.00 KiB
Packager : Maxime Gauduin <[email protected]>
Build Date : Fri 17 May 2019 08:59:29 AM MDT
Install Date : Wed 12 Feb 2020 10:22:20 AM MST
Install Reason : Installed as a dependency for another package
Install Script : No
Validated By : Signature
Name : peek
Version : 1.4.0-1
Description : Simple screen recorder with an easy to use interface
Architecture : x86_64
URL : https://github.com/phw/peek
Licenses : GPL3
Groups : None
Provides : None
Depends On : gtk3 libkeybinder3 ffmpeg
Optional Deps : gst-plugins-good: Recording under Gnome Shell [installed]
gst-plugins-ugly: MP4 output under Gnome Shell [installed]
gifski: High quality GIF animations with thousands of colors
Required By : None
Optional For : None
Conflicts With : None
Replaces : None
Installed Size : 897.00 KiB
Packager : Filipe Laíns <[email protected]>
Build Date : Tue 24 Sep 2019 04:58:34 AM MDT
Install Date : Wed 12 Feb 2020 10:32:45 AM MST
Install Reason : Explicitly installed
Install Script : No
Validated By : Signature
Name : i3-gaps
Version : 4.17.1-1
Description : A fork of i3wm tiling window manager with more features, including gaps
Architecture : x86_64
URL : https://github.com/Airblader/i3
Licenses : BSD
Groups : i3
Provides : i3-wm
Depends On : xcb-util-keysyms xcb-util-wm libev yajl startup-notification pango perl xcb-util-cursor
xcb-util-xrm libxkbcommon-x11
Optional Deps : rxvt-unicode: The terminal emulator used in the default config. [installed]
dmenu: As menu. [installed]
i3lock: For locking your screen. [installed]
i3status: To display system information with a bar. [installed]
perl-json-xs: For i3-save-tree
perl-anyevent-i3: For i3-save-tree
Required By : i3exit manjaro-i3-settings
Optional For : None
Conflicts With : i3-wm
Replaces : None
Installed Size : 1552.00 KiB
Packager : Morten Linderud <[email protected]>
Build Date : Sun 01 Sep 2019 05:10:28 AM MDT
Install Date : Wed 12 Feb 2020 10:22:21 AM MST
Install Reason : Installed as a dependency for another package
Install Script : No
Validated By : Signature
Unfortunately, other filetypes are not an option as gif is the only one GH accepts and that is my primary use :/
I can also confirm that the suggested
If on Gnome X11 session, does starting Peek with peek -b ffmpeg make any difference?
does not make a difference in my case
For anyone looking for a temporary solution, here's a script I pieced together that will generate a palette for the gif, and then create a gif from a given video file (tested and working with webm).
#! /bin/bash
echo ">> Generation Palette.."
ffmpeg -i "$1" -vf palettegen "${1%.*}.png"
echo ">> Done!"
echo ">> Creating gif..."
ffmpeg -y -i "$1" -i "${1%.*}.png" -filter_complex paletteuse -r 10 "${1%.*}.gif"
echo ">> Done!"
echo ">> Cleaning up..."
rm "${1%.*}.png"
rm "$1"
echo ">> Done!"
can't remember where the palette generation technique was sourced from
edit: this would probably need some tweaking if you like to put periods in your filenames such as: poor.name.choice.webm
Most helpful comment
1 & 2: Installed the flatpak package on Debian 9 with GNOME on X, but it also happens under Wayland; I can reproduce this on Fedora Workstation as well.
The recorded WebM has the same freezing and glitching the GIF has.
Videos recorded with the built-in screen recorder are perfect. Yes, they appear at ~/Videos
I tested with both gnome-shell and ffmpeg backends by specifying them in the command. One backend records the video just fine: gnome-shell. But ffmpeg doesn't. This made me realize I was only having this problem with other DEs, because here with GNOME the gnome-shell backend is the default, so it works out-of-the-box.
By choosing ffmpeg or using a different DE, the videos end up corrupted, freezing and jumping scenes in a predictable way. I mean, it freezes always at the same time of playback, jumps through a lot of scenes and then resumes when it's almost ending. It's not random, it happens in the same way every time.