phw / peek

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

ANNOUNCEMENT: Deprecating the Peek project #1191

Open phw opened 1 year ago

phw commented 1 year ago

With this announcement I officially declare the Peek project deprecated. This is something I should have done for a while now, but I always told myself that I will eventually do a last release, fixing some issues. As you know this never happened.

The last release has been 2 years ago, and even then activity was not very high, while issue reported piled up. The reason for the deprecation are manifold, but I try to explain. Peek started out as a small project with two goals:

  1. To solve a personal itch for a small, simple screen recording tool that can record into animated GIF, because at the time of creation sharing proper videos often was not possible on many platforms. My main use was short videos of partial UI elements, and that is what I used Peek for.
  2. As an experiment if it would be doable to implement the single window user interface Peek provides using standard Gtk3 widgets.

I really did not expect the kind of interest Peek gained. I am very thankful to everyone who used this software and who gave me feedback.

But now I am convinced that Peek faces some issues that are not solvable. The first goal in itself has become mostly obsolete. GIF was never chosen because it is a great format for videos, indeed it is very much unsuited for the purpose. It was chosen because it provided web compatibility. And I think the web today has much better for support for video formats. I never had intended Peek to become a feature-complete screen recording tool. It had always been meant for those small, short screen captures. If it would be just about this, though, I would be happy to continue maintaining Peek as this small tool it is.

The big issue is the second goal and how Peek fails it. While I am happy the UI worked as it did, there are too many technical challenges with it that I think Peek's UI has no future. Many of these have to do with how Wayland changed the way applications are being handled. This is a list of some of the technical challenges Peek's UI faces:

Can the above be resolved? I don't think so, not with the current approach of Peek's user interface. For a proper support of screen casting solving the above issues you need a different UI, with a different way of selecting the recording area.

But developing a completely different UI is not in my interest. The whole point of Peek was to provide the UI it has. This experiment initially showed some success and found many people liking it. Thanks a lot for this support. But it has not stood the test of time and as of today this experiment is no longer successful.

Creating a new user interface would be very much a new project. There is little to reuse in Peek. If I would do it I would start a completely new project. But as I stated above I have no interest in it. There are other screen recorder exploring this space. I personally like the way Kooha is handling it. And even the built-in GNOME screen recording has become a viable option

There are additional technical issues with Peek that would need to be addressed:

These issues would be solvable, but with the problems described above I see little point in doing it.

This means this is the official end of Peek as a project. In the next days I will close the majority of issues and look over the remaining pull requests. I originally wanted to do a final release. But I feel uncomfortable releasing a software that on many systems works unreliable or not at all. If there is sufficient interest maybe we could do a small release just here for those who are really interested.

Thanks everyone. If you have suggestions for Peek alternatives please add them below.

esauvisky commented 1 year ago

Thank you for all the hard work you've put in over the years. I haven't come across anything as straightforward as Peek, but I do have a few suggestions.

For Gnome users, there's a built-in screenshot tool that's recently been updated. To be honest, the update wasn't well received, but it does have a screen recording feature. It could use some improvement in terms of design and functionality, but if you're interested, let me know and I might be able to help. Here's a demonstration of its current performance: https://user-images.githubusercontent.com/18354658/212623229-70a4618c-b14b-4ef7-ad69-d8eba43efce2.mp4

Another option is OBV. Recently, I've been using OBV for longer videos because Peek tends to crash. The catch is that it's not as easy to quickly select an area of the screen and start recording like it is with Peek. I don't have much experience with OBV, so I'm not sure if that's something that can be achieved through scripting or other means. However, if you're looking for full screen recordings, OBV is a solid choice.

I've used SimpledScreenRecording in the past, which is a middle ground between complexity and ease of use, but although never played tricks on me, I'd just go for OBS in this case.

mcmxcdev commented 1 year ago

Thanks from my side as well, this was such a helpful project with great UX! Although there are multiple tools listed as replacement, I have tried all of them and they are inferior at least for my needs e.g. recording parts of the screen.

~10k GitHub stars is a lot so maybe this project will even be forked, let's hope so!

SuperMewio commented 1 year ago

https://gifcap.dev | https://github.com/joaomoreno/gifcap - Gifcap is also pretty good, it works on wayland as well if you enable pipewire in your browser. Downside is that it needs a browser to function. You record what you need then can crop/slice out what you don't. I have not tried it with Gnome. I use it under kde wayland as there are almost no alternatives with simplicity that function correctly. Kooha, as an example, records things in slow motion when on kde with wayland. I do wish gifcap was made into an electron app as a cross platform piece of software.

Thanks for all the hard work you did!

phw commented 1 year ago

Thanks to all of you for the kind words.

~10k GitHub stars is a lot so maybe this project will even be forked, let's hope so!

Yes, it really still amazes me how many enjoyed the project. It's great to see that so many liked the minimal UI concept I aimed for. I still like it myself. But in the end it's why I delayed this step so long, always telling myself that I'll fix the bugs and things will be good. But unfortunately I really don't see a sustainable way forward, especially none that I'm doing myself.

I'm happy to support anyone who wants to fork the project, though. But whoever wants to do it, do yourself a favor and come up with a clear goal what you want to achieve and think about whether the existing code and technology of Peek is really suitable for this. My opinion is still that whatever can be done should be a new project, re-thinking both the UI and the technological base.

esauvisky commented 1 year ago

Thanks to all of you for the kind words.

~10k GitHub stars is a lot so maybe this project will even be forked, let's hope so!

Yes, it really still amazes me how many enjoyed the project. It's great to see that so many liked the minimal UI concept I aimed for. I still like it myself. But in the end it's why I delayed this step so long, always telling myself that I'll fix the bugs and things will be good. But unfortunately I really don't see a sustainable way forward, especially none that I'm doing myself.

I'm happy to support anyone who wants to fork the project, though. But whoever wants to do it, do yourself a favor and come up with a clear goal what you want to achieve and think about whether the existing code and technology of Peek is really suitable for this. My opinion is still that whatever can be done should be a new project, re-thinking both the UI and the technological base.

I'll get chased for this, but honestly, be it you or anyone else, be careful and monetize if you see your idea becomes popular. because if it does, it means it provides value, and therefore not only deserves, but requires value in return to be feasible. It's not (only) about merit, but specially to avoid sad resolutions like this exact one, so common in the open source community. Now go ahead and light up the torches, those you just paid for 😄

I'll look at the source code for the first time in a week or so, and see how daunting (or not) it looks. Forks will keep it alive. Keep up the good work, we can take care of this.

RadoRado commented 1 year ago

Just wanted to express gratitude for the great piece of software that you've built :heart:

Peek is / was part of my toolbox for a very long time & it was dead-simple to use.

If you or someone else decides to fork peek & seeks financial support - I think there are enough of us happy users, to help with that.

Cheers

hartwork commented 1 year ago

On Wayland this is no longer an option, the application does not now its position. To workaround this Peek on Wayland always runs as an X11 application with XWayland. This was ok for a while, but even XWayland will eventually go away.

@phw do you have a link with more details on that topic? I'd be curious what Wayland's motivation is there and what other options there are. I can think of a hacks without XWayland but I would like to understand the Wayland situation better.

If you have suggestions for Peek alternatives please add them below.

https://github.com/MaartenBaert/ssr works great, and any non-gif result can be converted to gif with e.g. ffmpeg. That's how I created https://github.com/hartwork/sdl_video_demo/blob/master/recording.gif .

marcel0ll commented 1 year ago

@phw thank you for your work with peek. I am sad that this is the end but totally understand your stance. I've been using peek for quite some time exactly for the minimalist UI and ease to record short UI interaction examples.

dandv commented 1 year ago

Maybe one day ChatGPT will become smart enough to be able to fix these bugs. :robot:

firatkiral commented 1 year ago

Hi,

I started cross platform version as pypeek written in Python and QT with enhanced features.

https://github.com/firatkiral/pypeek

Its also available:

Apple Store

Microsoft Store

Cheers.

MostHated commented 1 year ago

Hi, I started cross platform version as pypeek written in Python and QT with enhanced features. firatkiral/pypeek

Sorry to post this here, you don't have an issues board active. I went to try pypeek out and my DE segfaulted as soon as I tried to click on one of the buttons. Had to hotkey over to a terminal session to reboot. Just wanted to let you know. Unfortunately, none of the logs seem particularly helpful, either. Just in case it is helpful, I have included system details.

Log Messages ```log Feb 11 16:56:26 pop-os kernel: [18477.599149] show_signal_msg: 2 callbacks suppressed Feb 11 16:56:26 pop-os kernel: [18477.599151] gnome-shell[20955]: segfault at 20 ip 00007f01d5937639 sp 00007ffcbc991528 error 4 in libmutter-10.so.0.0.0[7f01d5849000+143000] Feb 11 16:56:26 pop-os kernel: [18477.599158] Code: f0 48 83 c4 08 5b 5d c3 66 0f 1f 84 00 00 00 00 00 48 83 7b 20 00 75 b9 48 8b 5b 08 48 85 db 75 f0 48 83 c4 08 31 c0 5b 5d c3 <48> 8b 04 25 20 00 00 00 0f 0b b8 01 00 00 00 c3 b8 01 00 00 00 eb Feb 11 16:56:35 pop-os xdg-desktop-por[21713]: Error reading events from display: Broken pipe Feb 11 16:56:35 pop-os remmina[21263]: Error reading events from display: Broken pipe Feb 11 16:56:35 pop-os leapd[1676]: [2023-02-11 16:56:35] [error] handle_read_frame error: websocketpp.transport:7 (End of File) Feb 11 16:56:35 pop-os leapd[1676]: [2023-02-11 16:56:35] [disconnect] Disconnect close local:[1006,End of File] remote:[1006] Feb 11 16:56:35 pop-os org.telegram.desktop.desktop[21438]: The Wayland connection broke. Did the Wayland compositor die? Feb 11 16:56:35 pop-os solaar[21291]: Error reading events from display: Broken pipe Feb 11 16:56:35 pop-os gnome-shell[21379]: (EE) failed to read Wayland events: Connection reset by peer ```
System Details ```shell OS: Pop!_OS 22.04 LTS x86_64 Host: X670E Taichi Kernel: 6.0.12-76060006-generic Uptime: 8 mins Packages: 4477 (dpkg), 43 (nix-default), 116 (flatpak), 17 (snap) Shell: zsh 5.8.1 Resolution: 2560x1080 DE: GNOME 42.5 WM: Mutter WM Theme: Pop-dark Theme: Pop-dark [GTK2/3] Icons: Flatery-Orange-Dark [GTK2/3] Terminal: alacritty CPU: AMD Ryzen 9 7950X (32) @ 5.881GHz GPU: AMD ATI Radeon RX 6900 XT GPU: AMD ATI 59:00.0 Device 164e Memory: 7210MiB / 63415MiB ```
hartwork commented 1 year ago

Okay wow! While there is no bug tracker, there is an e-mail address linked at https://pypi.org/project/pypeek/ if anyone needs it. @firatkiral I would like to second the request for opening the issue tracker. Thank you!

firatkiral commented 1 year ago

@MostHated, @hartwork issue board is there now. Thank you.

Robert-Riedl commented 1 year ago

thanks for all the hard work. I'm still on X11 because Wayland (still) sucks anyway...

dandv commented 1 year ago

@Robert-Riedl Linux in general sucks. And the security isn't what it's cracked up to be.

Robert-Riedl commented 1 year ago

as someone who has been working with Linux as a daily driver for almost 20 years soon.. I strongly disagree @dandv ...

bodqhrohro commented 1 year ago

I wouldn't even come up with an idea of a screencaster which directly produces GIFs, lol. I just made a script using ffmpeg/ImageMagick/gifsicle which converts videos to highly quantized (rather than dithered), and thus lightweight GIFs: https://gist.github.com/bodqhrohro/d71900f9d00f2acd5933abe8998bdfde

hartwork commented 1 year ago

If you have suggestions for Peek alternatives please add them below.

LIVEcap seems to play in the same realm, targets Windows and macOS (and Linux through Wine), latest release 2022-08:

nafanz commented 1 year ago

I did not expect such a turn, for me it was the most convenient option to record small areas of the screen.

Nothing can be done about the time to look for alternatives or continue to use the outdated version while it is functional.

Thank you for your work.

gort818 commented 1 year ago

@phw Thanks for all your work on peek, it has been fun. It was a pleasure contributing! I learned a lot from you. Thank you!

nicorikken commented 1 year ago

Thanks for your work on Peek, I used it a couple of times for recording a small clip for which it was great! The announcement makes it clear why this is a dead end. I hope this frees up your time and mental space for new ventures.

rzr commented 1 year ago

Would you be interested to transfer project to @abandonware org for best effort cooperative maintenance ?

https://purl.org/rzr/abandonware ?

thegrasshopper104 commented 1 year ago

Thanks for working on it all this time. Peek is my favorite screen recorder, it's sad to see it go

aMyTimed commented 1 year ago

So, Wayland has no way to get the exact window position? What if it runs under root? If I ever switch to Wayland, I'd definitely want to be able to keep having some screen recorder with a UI like Peek.

rzr commented 1 year ago

what about using rdp backend ? does it makes sense ?

taozuhong commented 1 year ago

Peek is a great Vala project on Github.com, Long live the Peek.

ars9 commented 1 year ago

It was great while it lasted!

IgorAvilaPereira commented 1 year ago

I used every day to build my gifs explanations. Thank you.

SomeTroglodyte commented 1 year ago

Alternatives for the future? A VM with an adequately older OS and Peek installed. That's how 😻 great it is.

Jbbouille commented 1 year ago

Peek served me well during a long time. I am sad, but personally thank you sir.

qelphybox commented 1 year ago

Peek is great, I use it every day for a long time. Thank you, sir!

I also can suggest fine alternative for browser https://github.com/joaomoreno/gifcap

Kyr4l commented 1 year ago

so i guess there won't be any new maintainer for this project ? what are the alternatives that just work ? Kooha is clearly not ready and lacks features, gifcap requires to run an entire browser to record GIFs, pypeek isn't ready yet either and only exists as a pip package

i guess i'll keep using peek until it stops working

t-lock commented 1 year ago

I've installed Peek as a flatpak, and will keep using it until it stops working. Thanks for this, its fantastic software!

Wohlstand commented 1 year ago

I used Peek for a while just to record short demos of various software bugs, or making small tutorials. I got some idea about different interface type:

The main purpose of this thing is recording short demos and tutorials. OBS while providing perfect full-screen or window-only recording stuff, it's not convienent for the purpose of recording short demos of a very small window area.

P.S. Seems, the Kooha implements that idea already. But, when I tried it, it doesn't work on my end (Cinnamon on Linux Mint 21.1) for unknown reason (will research this question later).

IgorAvilaPereira commented 1 year ago

I will continue using the tool until keep working well.

jjaimealeman commented 1 year ago

I, for one, will continue to use Peek v.1.5.1 until the day my system blows up.

I mod some popular discord servers and often times find that sharing my screen to better explain something is very needed.

Aside from rofi-emoji, rofi-greenclip and neovim - Peek is indeed in my Top 5 👍


Thank you for a great application Mr. Wolfer!

groovenectar commented 1 year ago

I'd like to add to the list of "thank yous"!! Really great and super useful software, and the reasons for discontinuing make sense

ablakey commented 1 year ago

Thank you SO MUCH for Peek.

Trones21 commented 1 year ago

This thread is the only reason I realized that GNOME could do video as well as screenshots! lol :facepalm: ...such a small switch

dandv commented 1 year ago

what are the alternatives that just work

@vkohaupt's vokoscreenNG

jpenalbae commented 1 year ago

Here is an quick and dirt alternative for linux on X11. It uses two bash commands: ffmpeg and slop.

I asked copilot chat to generate a bash script for the following use case:

Here you can find the result: https://gist.github.com/jpenalbae/e81d8180284539ad6a63c3f2aaf2636e

It is something like the import command to take screenshots, but to record videos instead.

patillacode commented 1 year ago

I took the liberty of refactoring your gist a bit @jpenalbae and adding support for macOS using screencapture

My solution is basically yours with slop + ffmpeg for linux and screencapture on macOS

Also, if it helps anyone, i saw this in the slop readme as an example:

#!/bin/bash
slop=$(slop -f "%x %y %w %h %g %i") || exit 1
read -r X Y W H G ID <<< $slop
ffmpeg -f x11grab -s "$W"x"$H" -i :0.0+$X,$Y -f alsa -i pulse ~/myfile.webm
melroyvandenberg commented 11 months ago

Sad day for me.

metodiew commented 8 months ago

I just want to say thank you for the project! I have used it for recording quick small videos to showcase a feature and/or a problem and it was working great. Thank you for the hard work and respect for the decision!

TurkerTunali commented 8 months ago

Thank you for all your hard work. I use it daily with my lovely 2011 computer which runs Zorin OS.

My new M2 Mac has a screen recorder tool but its file size is huge. I can't share it.

seefood commented 6 months ago

I opened a report and only then saw this "announcement". so since there is no way to pin this issue to the top, and this being the wrong place for the announcement anyway, can @phw please edit the README.md so the github page reflects the current status of the project, and then archive it so people get a clear indication this is EOL? Thanks in advance.

teodorlu commented 5 months ago

I wanted to add a thank you for Peek. I loved the interface, it let me quickly explain things with a gif/small video that I would otherwise struggle to formulate in words.

Solarunit commented 5 months ago

Just found out that Peek is dead. What a sad day, it was my favorite gif tool. Now I need a new alternative.

seefood commented 5 months ago

Seriously, WTF? I went through at least 5 or 6 screen cap programs, each is dying or deprecated for a different reason. Fact is video confferencing tools like teams and Zoom allow screen sharing, and gamers share high quality game streams, so there IS an API to do it even with Wayland, I just need an easy little FOSS tool (smaller and easier than OBS studio please) to capture 30 seconds of screen snippets to send a quick howto to a boomer relative or a demonstration of a bug to a support ticket. How is it that this is an impossible app in 2024?

melroyvandenberg commented 5 months ago

quick howto to a boomer relative

Understandable. Same here.