phw / peek Goto Github PK
View Code? Open in Web Editor NEWSimple animated GIF screen recorder with an easy to use interface
License: GNU General Public License v3.0
Simple animated GIF screen recorder with an easy to use interface
License: GNU General Public License v3.0
Example: Recording a form and clicking the submit button is not possible outside of using the keyboard.
Any plans to support something like this. I'm currently reading over the code to see how complex it would be to contribute.
Thanks for a great project.
Not directly an issue but I thought I'd write down the process which can be integrated in the readme or another file for build instructions.
sudo dnf install vala gtk3-devel ffmpeg
git clone [email protected]:phw/peek.git
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr ../peek && make
./peek # Simply run from build folder
sudo make install # Install to system
# For people who prefer spending less time to build ;)
cmake -DCMAKE_INSTALL_PREFIX=/usr -GNinja ../peek
ninja-build
# or directly
sudo ninja-build install
And by the way: Awesome, Thanks a lot 🎉 !!
Could you please add this target?
Just exactly what I was looking for. :-)
I added the following entry:
http://alternativeto.net/software/peek-gif-screen-recorder-for-linux/
Please revise,
-Robert
Hi Philipp,
the follow up of ou twitter discussion. I can't install peek via the aur (using yaourt) with following error message:
==> Beginne check()...
Running tests...
Test project /tmp/yaourt-tmp-fred/aur-peek/src/peek
Start 1: test-desktop-integration
1/3 Test #1: test-desktop-integration ............................***Exception: Other 0.09 sec
Start 2: screen-recorder-test-recording-area
2/3 Test #2: screen-recorder-test-recording-area .................***Exception: Other 0.08 sec
Start 3: test-screen-recorder-command-line-screen-recorder
3/3 Test #3: test-screen-recorder-command-line-screen-recorder ...***Exception: Other 0.09 sec
0% tests passed, 3 tests failed out of 3
Total Test time (real) = 0.26 sec
The following tests FAILED:
1 - test-desktop-integration (OTHER_FAULT)
2 - screen-recorder-test-recording-area (OTHER_FAULT)
3 - test-screen-recorder-command-line-screen-recorder (OTHER_FAULT)
Errors while running CTest
make: *** [Makefile:150: test] Fehler 8
==> FEHLER: Ein Fehler geschah in check().
Breche ab...
==> FEHLER:Makepkg konnte peek nicht erstellen.
I use i3 instead of the unity desktop environment. The output gif from peek is all black except for my mouse. Using ffmpeg and x11grab independently works just fine.
This would allow us to update Peek without having to re-download its deb installer on every release.
In Shutter, you can chose specific virtual desktops and active windows for recording. This feature would be nice for Peek, too. Maybe you or someone like(s) to implement this. :)
But resizing windows should be taken care of somehow…
Hello! I wanted to use peek in my image uploader, so I was wondering is there a possibility for something like peek -o OUTPUT.gif
that will prompt to record a single gif and save it to OUTPUT.gif
Thanks!
Great app, thanks for your work.
Can we have a version option in the cli flags? (-v
, -V
, --version
...)
You need it if like me you install/update/manage applications via scripts.
Just installed. Love it. Going to use this for blogging new app features.
Would love a pause option (lock recording window size while paused, but allow recording window to be moved around) so I don't have to merge multiple gifs together myself at the end.
First of all, thanks a lot for the great work in this app and thanks for also maintaining the arch package yourself :)
I'm using Cinnamon with Arch (Antergos install) on two computers and always get a weird effect in the recorded GIF during scrolling.
Any chances you know what I may be missing?
Thanks again!
EDIT: the Link image is my desktop background
When I click save and a few kB are saved, I don't need a notification, that these 10 kB have been successfully saved. Instead it just clutters the notification overview – therefore this should be deactivated.
When you're done recording and hit "Stop", the program gives no indication that you have successfully stopped the recording and are now rendering a GIF to output. Since this can take 30+ seconds, consider maybe changing the "Stop" button to say "Rendering..." and grey it out or something.
Keep up the great work!
My system is ArchLinux x86_64 and I have installed peek via the its AUR package.
I have made 5/6 attempt to create a gif and sometimes the file created is empty.
FYI info I use the basic configuration (no change on the framerate).
Peek always renders a smaller and (in the upper left direction) displaced area of my screen. Obviously because of doubled resolution in every direction. Please fix this. :)
There's no way to record GNOME 3 top bar neither stuff that is on the upper part of the screen, due the size of the window title bar, where is located the record button. Then it's not possible to record a full screen application nor the address bar of a browser (if it's full screen), for example.
Using Peek on Ubuntu 16.04 with Unity each gif has a slim grey bar on the left and right.
Could this be removed?
So far I have manually updated this file, but it should be autogenerated during build.
Would be nice if we could draw a rectangle for blurring after recording, since many screencasts could contain private details.
As said in #3, I'm using ScreenToGif on a windows environment. It lets one edit the gif once recorded:
It is a really cool feature since you can delete the X first/last frames (we could even eventually drop the "delay in seconds before recording starts" setting), add transitions, crop the gif...
Transitions & gif cropping may be useless, but frames deleting is a must have. What do you think?
After stopping the recording, my system have a hudge load and my swap if filled up.
My system is ArchLinux x86_64 , and I have 6 G ram and 2G swap.
This project is great! Keep up the good work.
Please add a keyboard shortcut for Peek, so that all of my GIFs don't end with my cursor moving to the top middle of the window I'm recording.
Could you please implement showing the file chooser for saving the GIF directly after recording is finished? This way rendering can run in the background and we can make the next record without having to wait for the previous rendering to finish. While showing the file chooser, rendering can start in a parallel thread for further speed up. :)
peek not working in Ubuntu Gnome 14.04.5, due to the gtk problem, but if i upgrade gtk, means i update the desktop enviroment, that is a little risky.
On Gnome 3.20 Peek always starts up in the upper left corner. Also the window size is not correctly restored, it is always a bit larger than what was saved (in my tests always 30 pixels wider and 70 pixels higher).
I am not yet sure whether those changes are caused by Gtk 3.20 itself or by the also updated window manager.
Fedora 23 - Gnome
Can launch from CLI fine but it doesn't launch from app menu even though it's present.
Since rendering can take quite some time, it would be nice if the a progress bar could be implemented when rendering is done. Maybe in place of the stop button, with making the stop-button appear on mouse-over of the progress bar, or showing an (x) symbol on the right side of the bar?
Can it be?
So my area of recording was outside the screen size.
After opening peek on the terminal I saw what was the error. But it would be nice to have maybe a pop-up giving me the same message without using the terminal
[x11grab @ 0x562632890c60] Capture area 503x691 at position 869.71 outside the screen size 1366x768
:0+869,71: Invalid argument
Can you add the support for the Mir display server?
I thought, maybe it's useful to provide an option to crop the last hundreds of milliseconds (or seconds) at the end of the recording, because they often just contain moving the mouse to the „stop“ button. Or when the user sees, that nothing changed in the last seconds and therefore stops the recording, he/she can crop this superfluous part. This saves space and upload time, especially at higher resolutions like UHD or when big parts of the screen are captured.
I've noticed some minor issues in the about window while using the Arabic version of peek.
I have requested for Peek to be hosted on https://hosted.weblate.org, this will make the translation process much smoother.
Ubuntu uses libav by default. It would be nice if peek can depend on either of of them.
I don't want to install ffmpeg as it creates problems in some players (mpv, smplayer) when both of them are installed.
On high resolution displays, the GIF is rendered at native resolution by default (which is nice), but often standard definition is sufficient, is rendered faster and uses less memory (one quarter in case of UHD). Therefore it would be nice if an option could be provided for reducing the resolution from whatever resolution is used to the standard resolution.
So I'm recording some tiny GIFs (around 400px wide) at 15fps, and still get big file sizes.
Twitter sets a limit at 5mb per gif, so I can never use a gif captured with Peek. Yet, I see constantly long gifs with good quality... whats the catch?
thanks for the awesome tool :)
I've finished Italian translations, can you update the code?
I can't record my screen when I'm using Wayland.
This screen is black, see the link.
http://image.noelshack.com/fichiers/2016/41/1476636882-peek-2016-10-16-18-44.gif
Linux arch-asterix 4.7.7-1-ck #1 SMP PREEMPT Fri Oct 7 16:05:42 EDT 2016 x86_64 GNU/Linux
gnome-shell 3.22.1+2+g5a08886-1
Thank you for this awesome tool!
Same issue as on gnunn1/tilix#241
After recording the application cause lag and makes the system useless for minutes. I'm on Ubuntu 16.04 64 bit.
First, is black area in peek's window:
Second, only cursor is recorded:
kernel: 4.4.5-1
video: Radeon HD 6530D
driver: xf86-video-ati
DE: mate 1.12.1
peek's output:
ffmpeg version 3.0.1 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 5.3.0 (GCC)
configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-avisynth --enable-avresample --enable-fontconfig --enable-gnutls --enable-gpl --enable-ladspa --enable-libass --enable-libbluray --enable-libdcadec --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-shared --enable-version3 --enable-x11grab
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, x11grab, from ':0+993,560':
Duration: N/A, start: 1461039448.329935, bitrate: N/A
Stream #0:0: Video: rawvideo (BGR[0] / 0x524742), bgr0, 440x276, 15 fps, 15 tbr, 1000k tbn, 15 tbc
Output #0, avi, to '/tmp/peekCGO6FY.avi':
Metadata:
ISFT : Lavf57.25.100
Stream #0:0: Video: huffyuv (HFYU / 0x55594648), rgb24, 440x276, q=2-31, 200 kb/s, 15 fps, 15 tbn, 15 tbc
Metadata:
encoder : Lavc57.24.102 huffyuv
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo (native) -> huffyuv (native))
Press [q] to stop, [?] for help
Recording stopped15 q=-0.0 size= 8671kB time=00:00:06.46 bitrate=10983.9kbits/s speed=1.01x
frame= 105 fps= 15 q=-0.0 Lsize= 9385kB time=00:00:07.00 bitrate=10982.8kbits/s speed=1.01x
video:9377kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.086569%
On some systems the screen flickers druing recording
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.