I use Linux, but I need to record the screencast of a Windows app. For this reason I run Windows as a guest OS in the VirtualBox hypervisor.

There are two options here: one is running the screencast software as an app inside the VirtualBox Windows machine; the other is to use VirtualBox native capacity to record what is runniing in its guests.

In the first case I tried with OBS recorder, which starts but warns it has not enough resources to run properly, perhaps because I misconfigured it. However, the final result is a choppy video.

Using VirtualBox native function, I get a good looking webm with these features from ffprobe:

Bitrate: 143 kb/s
Stream #0:0: Video: vp8, yuv420p(progressive), 1920x1080, SAR 1:1 DAR 16:9, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)

While the video is apparently smooth, it is missing keyframe index and it does not work properly in Blender VSE for editing.
To solve the problem I can rebuild the index with mencoder:

mencoder -forceidx input.webm -ovc copy -oac copy -o output.webm

Blender can work with it now, but the problem is that it appears several times faster. In fact, a new ffprobe shows that:

Bitrate: 440 kb/s
Stream #0:0: Video: vp8 (VP80 / 0x30385056), yuv420p(progressive), 1920x1080, 434 kb/s, 30 fps, 30 tbr, 30 tbn, 30 tbc

and the length of the new video is about one third of the original one.

Since Blender is an editor, I can easily apply a speed effect to bring the video to its original length and then re-encode the video. Now the Blender input is as it should have been, but recode the whole video, for each virtual machine clip, is very time consuming.

Is there some screencast software working decently in a virtual machine?
Is there some setting I could use with VirtualBox to have a properly indexed video?
Is there a better mencoder command (or an alternative tool) to improve the index build?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.