Starting with Ubuntu 22.04 there is a default application for video recording installed. Consider using this application over Peek.
Recording
SimpleScreenRecorder
I recommend simplescreenrecorder Show archive.org snapshot , it produces an adequate output with only a few clicks. The audio recording contained some static noises, but that might be caused by my microphone.
Recording only a single screen or fixed rectangle is supported. The video quality seems quite grained when using the default settings - I found that using the MKV container, H.264 codec, "0" constant rate factor and "veryslow" preset results in the best video quality.
Peek
Note
The original peek project has been deprecated Show archive.org snapshot . If you are experiencing problems with peek, you might consider pypeek Show archive.org snapshot which has a very similar feature-set to the original peek.
If you don't insist on high the best video and you don't need audio recording, you could also use Peek Show archive.org snapshot , which is quite simple to use. It was formerly built to create animated GIFs but also supports MP4 videos. The settings are also limited. Suggested preferences:
- Open file manager after saving
- Output format: WebM
- Delay in seconds before recording starts: 2
Don't launch on laptop screen with external screens
If you are using Peek and the window launches on your laptop's screen the window bar might be cut off from. Meaning that, you will not be able to drag the window around, click close and the start/stop button.
Solution: If this is the case disable the laptop screen in Settings > Display and it launch on your external screens instead with the right window size and position.
Editing
For minor manual adjustments, you can use the ffmpeg Show archive.org snapshot command line tool. In my case, I needed to cut the screen-cast by removing the sequence from 02:36 to 05:23.
# Extract the parts you want to keep.
# * Use -ss hh:mm:ss to define the starting point of the sequence (default: 0)
# * Use -t hh:mm:ss to define the length of the sequence
ffmpeg -i screencast.webm -t 00:02:35 -c copy part1.webm
ffmpeg -i screencast.webm -ss 00:05:23 -t 00:20:00 -c copy part2.webm
# Create a textual list of all sequences
for i in {1..2}; do echo "file 'part$i.webm'" >> parts.txt; done
# Combine the
ffmpeg -f concat -safe 0 -i parts.txt -c copy edited_screencast.webm
Using the -c copy
flag make the process extremely fast since it prevents re-encoding. It also keeps the quality at the input level.
Audio Removal
Peek recordings will include any audio your device was playing during the recording. You can also use ffmpeg to remove your current techno playlist from an existing screencast:
ffmpeg -i screencast.webm -am -c copy screencast-muted.webm