All Projects → alphapapa → bashcaster

alphapapa / bashcaster

Licence: GPL-3.0 license
An actually simple screen recorder for Linux

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to bashcaster

Screencast
An elementary OS app
Stars: ✭ 28 (-39.13%)
Mutual labels:  screencast
Laplace
Laplace is an open-source project to enable screen sharing directly via browser. Based on WebRTC for low latency peer-to-peer connections, and WebSocket implemented in golang for signaling.
Stars: ✭ 81 (+76.09%)
Mutual labels:  screencast
Functional intro to python
[tutorial]A functional, Data Science focused introduction to Python
Stars: ✭ 228 (+395.65%)
Mutual labels:  screencast
Advanced Directives With Angular Js
Advanced Directives with Angular JS - Code for the Screencast
Stars: ✭ 33 (-28.26%)
Mutual labels:  screencast
Bangjago Android Emulator
simple android emulator cli for mobile development
Stars: ✭ 56 (+21.74%)
Mutual labels:  screencast
Keypress Osd
This program is an On-Screen Display or a Heads-Up Display for keys. It displays every key press at a clearly visible text size. It is developed for people with poor eye sight. It is meant to aid desktop computer usage. It is especially useful while chatting or for occasional typing. The user no longer has to squint or zoom in the entire screen to see what s/he writes in small text fields.
Stars: ✭ 131 (+184.78%)
Mutual labels:  screencast
Screenity
The most powerful screen recorder & annotation tool for Chrome 🎥
Stars: ✭ 6,229 (+13441.3%)
Mutual labels:  screencast
ws-qvh
Server for streaming the screen of iOS devices over WebSocket.
Stars: ✭ 17 (-63.04%)
Mutual labels:  screencast
Emacs Gif Screencast
[MOVED TO GITLAB] One-frame-per-action GIF recording for optimal quality/size ratio
Stars: ✭ 74 (+60.87%)
Mutual labels:  screencast
Opentok Ios Sdk Samples
Example applications that use the OpenTok iOS SDK
Stars: ✭ 186 (+304.35%)
Mutual labels:  screencast
Peek
Peek makes it easy to create short screencasts of a screen area. It was built for the specific use case of recording screen areas, e.g. for easily showing UI features of your own apps or for showing a bug in bug reports. With Peek, you simply place the Peek window over the area you want to record and press "Record". Peek is optimized for generating animated GIFs, but you can also directly record to WebM or MP4 if you prefer.
Stars: ✭ 8,408 (+18178.26%)
Mutual labels:  screencast
Aperture
Record the screen on macOS
Stars: ✭ 1,051 (+2184.78%)
Mutual labels:  screencast
Universal React Tutorial
📓 How to build universal web apps with React.
Stars: ✭ 136 (+195.65%)
Mutual labels:  screencast
Divvydroid
Qt/C++ Application to screencast and remote control Android devices
Stars: ✭ 29 (-36.96%)
Mutual labels:  screencast
slip
Select and upload screenshots, gifs, and screencasts to imgur and gfycat with help of slop.
Stars: ✭ 25 (-45.65%)
Mutual labels:  screencast
Gifify
😻 Convert any video file to an optimized animated GIF.
Stars: ✭ 5,792 (+12491.3%)
Mutual labels:  screencast
Ffscreencast
ffscreencast - ffmpeg screencast/desktop-recording with video overlay and multi monitor support
Stars: ✭ 1,625 (+3432.61%)
Mutual labels:  screencast
screenkey.ahk
A tool that displays the keys that you type on the screen
Stars: ✭ 75 (+63.04%)
Mutual labels:  screencast
castty
A CLI tool to record audio-enabled screencasts of your terminal, for the web.
Stars: ✭ 109 (+136.96%)
Mutual labels:  screencast
Scrcast
Drop-in Android Screen Recording Library
Stars: ✭ 178 (+286.96%)
Mutual labels:  screencast

Bashcaster

Bashcaster is a simple script that uses ffmpeg to record screencasts to videos or GIFs. It can record the whole screen or a window. It can optionally optimize GIFs with gifsicle.

Installation

Put bashcaster.sh wherever you want.

Requirements

Bashcaster only works on X-based GUIs. It should work on any Linux distro, and all common ones should have these tools available for installation:

  • ffmpeg does all the work behind the scenes.
  • xprop and xwininfo are used to retrieve screen and window dimensions.
  • yad shows the stop-icon tray notification and confirmation dialogs.
  • slop is used when available to select rectangles, otherwise a fallback method is used.
  • gifsicle optionally optimizes GIFs.

Examples

Record a window to a GIF:

bashcaster --window output.gif

Record a window to a GIF at 15 frames per second, with the mouse cursor, optimize it, and don’t show confirmation prompts:

bashcaster -coy --window -f 15 output.gif

Record the whole screen to an MKV at 60 fps immediately, without confirmation:

bashcaster -f 60 -y output.mkv

Usage

bashcaster.sh [OPTIONS] OUTPUT-FILE

Bashcaster is a simple script that uses ffmpeg to record screencasts
to videos or GIFs.  It can record the whole screen or a window.  It
can optionally optimize GIFs with gifsicle.

OUTPUT-FILE should end with the desired video type's extension,
e.g. ".mp4" or ".gif".

Click the stop-icon tray notification to stop recording.

Options
  --debug  Print debug info
  --help   I need somebody!

  --force           Overwrite output file if it exists
  -y, --no-confirm  Don't ask for confirmation before recording

  -c, --cursor      Record mouse cursor
  -F, --fullscreen  Record the whole screen (the default)
  -R, --rectangle   Select and record a rectangle
  -W, --window      Select and record a window

  -f, --framerate NUMBER  Video framerate (default: 30)

  -l, --left   NUMBER  Video left edge position (default: 0)
  -t, --top    NUMBER  Video top edge position (default: 0)
  -h, --height NUMBER  Video height
  -w, --width  NUMBER  Video width

  --max-colors NUMBER  Limit colors in palette
  -d, --dither         Enable dithering to reduce filesize
  -o, --optimize       Optimize GIF with gifsicle

Credits

  • Inspired by Silentcast.
  • FFmpeg does all the work.
  • YAD shows dialogs and the stop button.
  • Giphy posted a helpful guide (GitHub repo) showing how to record optimized GIFs with FFmpeg.

Development

Bug reports, feature requests, suggestions — oh my!

License

GPLv3

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].