Readit News logoReadit News
monster_group · 3 years ago
On Linux you can just use "SimpleScreenRecorder". It allows recording video of a single window (with audio from mic). I use it at work to create demos. My video demos are better than most others' because the video does not contain the whole screen (unlike many other demos) and my videos are accompanied by audio narration so demo can be watched independently later. Mac users often ask me how I create my demo videos.
RamRodification · 3 years ago
I've lived through decades of running into software with names like "Easy Driver Finder", "Quick PDF joiner", "Simple Disk Partitioner" and such, which so often turn out to be crap/non-free/unusable trial version/malware. This has conditioned me to automatically dismiss things named in this fashion. Though I suspect this is mainly an issue in the Windows world.

I don't fault the author of SimpleScreenRecorder at all. Objectively it's the perfect name for the tool. I just realized how sad this is that my mind went straight to "Oh, sounds like one of those shit apps".

This one looks really good though!

marcodiego · 3 years ago
> I've lived through decades of running into software with names like "Easy Driver Finder", "Quick PDF joiner", "Simple Disk Partitioner" and such, which so often turn out to be crap/non-free/unusable trial version/malware.

I have a few friends who use windows. They live in this weird world where everything they call "free" is a trap. They are usually very impressed when I show them repositories and flathub.

makeworld · 3 years ago
This looks like a nice tool, thanks. Although worth noting it only records a screen region, so if you move the window it won't follow it.

Deleted Comment

iheredia · 3 years ago
Nice! If I understand correctly, this script assumes that the window will remain in the same place until the end of the recording, right? I'm not saying that's wrong. Specially if you know that the window won't move, then it's a good solution
p4bl0 · 3 years ago
Or you can just use OBS which makes all this really easy ^^.

But it was nice to learn about hk !

2Gkashmiri · 3 years ago
OBS is awful if all your work is about "screen recording".

take a look at simplescreenrecorder. it just works and i can record, save and upload a file in as much time as it takes for the recording.

this takes almost no resources while OBS is a resource hog, unless you are streaming, there is absolutely no reason to use OBS.

jenscow · 3 years ago
OBS can record an actual window, rather than an area on the screen. That is, you can move the window or cover it while recording, and you will only get the window contents.

But yeh, it's heavy. I tend to use peek for quick ones.

asicsp · 3 years ago
I use SimpleScreenRecorder (which is also mentioned in the footnote of the article). It really is simple to use and light weight.

I used to manually select area to record (with border outside the window to record) until I searched and found a solution using ffmpeg to add the border. So, now I just use the select window option. I also use Auto-Editor (https://github.com/WyattBlue/auto-editor) to prune silent portions.

themoonisachees · 3 years ago
I find the resource -hogging of obs really goes away once you start using hardware encoding. Not available on old cards, but the performance overhead is minimal.
snvzz · 3 years ago
>OBS is a resource hog

I'm confused, as it is super lightweight.

Most of its resource usage is from video encoding. You can lower the quality, exchange bitrate for cpu while keeping the quality, or even use hardware encoding.

smcameron · 3 years ago
> unless you are streaming, there is absolutely no reason to use OBS.

Not true in my experience. Simplescreenrecorder was not capable of recording (without streaming) full screen opengl games with sound at acceptable quality last time I tried it, OBS is the only thing I've found that will do this apart from hardware based recorders. To be fair, the last time I tried simplescreenrecorder was several years ago, perhaps it has improved in the meantime.

DoctorOW · 3 years ago
VLC has a feature for this as well. That's my go-to since it's usually already on my machine no matter which I'm using
spicybright · 3 years ago
Why is that the case? I only do screen recordings and it's a fantastic tool for it.

I haven't used SSR before, but I'm not even seeing a meter for adjusting your microphone volume.

sorenjan · 3 years ago
Ffmpeg can capture a single window on Windows, weirdly I can't find an equally simple way of doing it on Linux.

ffmpeg -f gdigrab -framerate 30 -i title=Calculator output.mkv

https://trac.ffmpeg.org/wiki/Capture/Desktop

capableweb · 3 years ago
On Linux I use the following shell-function, can't remember the source of it though, probably somewhere on Stack Overflow:

    $ which capture_window
    
    capture_window () {
     save_dir="$(mktemp -d)"
     filename="$save_dir/$(date +%Y-%m-%d_%H-%M_%S).mp4"
     ffmpeg -f x11grab -framerate 25 $(xwininfo | gawk 'match($0, /-geometry ([0-9]+x[0-9]+).([0-9]+).([0-9]+)/, a)\
          { print "-video_size " a[1] " -i +" a[2] "," a[3] }') $filename
     echo "Saved as \"$filename\""
    }

JustSomeNobody · 3 years ago
Here's a link to an article where they provide a shell script to easily do it:

https://tratt.net/laurie/blog/2022/making_a_video_of_a_singl...

Cloudef · 3 years ago
Pipewire allows this relatively easily
capableweb · 3 years ago
Correct me if I'm wrong, but Pipewire would allow applications to implement this functionality "relatively easily", but it doesn't actually provide any end-user tooling itself for this, right?
Cloudef · 3 years ago
Any gstreamer program should work as long as you have pipewire gst plugin installed (including building your own gst pipeline). Note that pipewire needs to be either supported by the program for video capture, or you need to use compositor that exposes every window as a pipewire video source.
orsel · 3 years ago
If you're looking to record terminals, https://asciinema.org/
marcodiego · 3 years ago
Kazam has the option to record a single window. It can also optionally capture microphone and speakers audio and mouse.
hauxir · 3 years ago
created a webapp for this exact purpose:

https://screencap.video

capableweb · 3 years ago
Unfortunately, doesn't seem to work...

    Uncaught (in promise) DOMException: MediaRecorder constructor: video/webm;codecs=h264 indicates an unsupported codec screencap.video:123
    Uncaught TypeError: mediaRecorder is undefined
Mozilla/5.0 (X11; Linux x86_64; rv:103.0) Gecko/20100101 Firefox/103.0