Robert's blog
Robert Važan

Screencast recording on Windows

It turns out that screencast recording is not so easy. This is a short story about my experiments with screen recording.

It's 2014. Screencasts must be super easy to do. They are not. While there are some tools that work in some cases, there's nothing that wouldn't fail in my use case in one way or another.

There's CamStudio that used to be opensource. For the life of me, I cannot find the source code anymore. Its SF repository is empty. No links on the website. Nothing. They deleted the code. Latest CamStudio comes with adware-loaded installer. Talk about hijacking opensource projects.

If you manage to dodge the malware, you might be able to record video occassionally, but it's way too buggy.

There are lots of commercial packages. I've filtered out the pricey ones. Some packages are simple and cheap, but they lack some essential feature like capturing two screens or producing video file right away.

Then there's the stupid licensing. I am not going to pay twice just to use it on two computers. Why don't they just provide simple personal license that can be used on any computer? Even $1 Android apps can be used on multiple tablets as far as they share the same Google account.

Screen recorder is really trivial to write. Just use Win32 API to grab the screen into a buffer, then push the frame into ffmpeg encoder and you are done. Unfortunately I have no time left to do this. Perhaps someday else.

So what do I do? I will use the CamStudio for now. I have already clicked my way around the adware (hopefully). I just have to make sure that I don't record more than ~20 minutes using the default MS codec to avoid a bug in CamStudio.

I could use Xvid MP4 codec for longer stretches of time, but then I have to make sure to use fixed region with height and width divisible by two to avoid another bug. I cannot just select "all screens", because then I would run into another bug. And even then CamStudio crashes due to another bug, so I am stuck with MS codec and the 20-minute limitation. Oh, yeah.

If you are curious why do I need to capture multiple screens, it's pretty simple. I want to see how I work and where the time gets lost. Observations done so far are pretty interesting.