A cross-platform screen capture application that is able to record a user-defined area on screen. Depending on the output format, audio (& mic) capture is also supported.
On Linux there is an awesome screen capture application (Peek) but on Windows I cannot find anything. That's why this project is created.
OK, I learned the existence of OBS Studio, and have switched to using that.
Feel free to use this app as GIF capture only, and I'll add audio capture support to Windows in the future.
ESC
: exit appF11
: toggle fullscreenCTRL
+ Global Hotkey: start/stop recording
Global Hotkey:
The program will select from (F10
, F9
, F8
, F7
, F6
) or raise error if none can be registered. See Control
on app UI for details (F10
is the default).
At most 5 instance of this application can be launched at the same time!
Current supported platforms are:
- Linux (X11 backend)
- Windows
Right now capturing on secondary monitors is not supported yet.
- Global Hotkey for Window Re-focus
- Windows Platform Support
- Fullscreen Capture
- App Icon
- Media File Multi-Access Protection
- Better UI Fonts (Hurmit Font)
- Audio Capture
- Linux
- Windows
- Microphone Support
- Linux
- Windows
- Auto fit size to match another window
- Video Formats:
- mp4
- gif
- mov
- wmv
- flv
- avi
- mpg
- webm
- apng
- Multi-monitor Support
A classic "record myself recording" with apng
format:
Windows Additional Libs
The following libs are required for Windows static build, but should all exist in a standard Windows environment:
- comdlg32.lib
- mfplat.lib
- mfuuid.lib
- strmiids.lib
- secur32.lib
- shlwapi.lib
- vfw32.lib
- ws2_32.lib
- bcrypt.lib
First pull the repo and run:
git submodule update --init --recursive
Steps for Linux
On linux, make sure ffmpeg
(version 5.0) and related libav
libraries are installed. If you are not sure:
ldconfig -p | grep libav
ldconfig -p | grep libsw
and look for the following libraries:
libavdevice
libavfilter
libavformat
libavcodec
libswresample
libswscale
libavutil
If you are not using X11, run following:
export GDK_BACKEND=x11
to force x11 backend.
Then init build files:
mkdir build
cd build
cmake ..
Build (Linux):
make -j4
Build (Windows):
cmake --build . --config Release
Executable is under bin
folder
Note that on Windows it is a static build, while on Linux it is shared