Recording part of a window

frogfish

New Member
Hi everyone,

Say I want to record this VirtualBox window, but I just want the VM part to show (no top menu or bar at the bottom):

1740736980896.png



If I right click the window capture > transform > edit transform, I can crop the capture. But then the cropped area is replaced with black space at the bottom:

1740737543189.png


How do I record part of a window without getting this black space?
 

koala

Active Member
If you crop part of the window, you're changing the aspect ratio of the content, so it's different to the default aspect ratio of 16:9. In the missing parts, there is nothing to display.
You can change the resolution in Settings > Video (both canvas and output resolution) to match the window resolution after crop, so the missing part isn't included in the video.
You can also try to make your Virtualbox window bigger (if this is possible), so the area you keep is still 16:9 ratio. Ands some VM apps allow fullscreen mode without any VM menu bar at all, so all you see is the guest window (dunno if Virtualbox provides this).

Also see:
 

AaronD

Active Member
Doesn't VirtualBox have a recording function built-in? I seem to remember it did, when I was using it. Why not use that?

some VM apps allow fullscreen mode without any VM menu bar at all, so all you see is the guest window (dunno if Virtualbox provides this).
It does. It makes it appear as if the guest OS is installed physically and the host and other guests don't exist. Of course they do, and they're still running too, and the guest in front of you still has the usual problems of being a virtual guest and not actually native...but you get the idea.
 

frogfish

New Member
Hi guys, thanks for replying. I don't want to record the VM in full screen because I don't want to have to start the recording, then set VB to full screen, then exit it to stop the recording (obviously I can't start/stop OBS from within the guest OS). I don't want the hassle of having to cut that part out and rerender the video. That's why I'm recording a non-maximized window, I'm able to record clips of just the parts I want to record. I'm recording lots of short clips.

But the problem in the OP is solved, because I found out VB lets you hide the bars are the top and bottom of the window, so that problem is dealt with.

My only problem now is that when I right click the window capture and choose "resize output (source size)", so that I don't get any black bars in the recording, the recording is a bit blurrier than the actual thing. I've tried playing with output settings (using GPU video encoder, changing the rate control to CQP, changing the CQ level), but to no avail. It's always slightly blurrier than what the actual window looks like.

So if anyone knows how to record a non-maximized window without losing quality, please let me know.

Doesn't VirtualBox have a recording function built-in? I seem to remember it did, when I was using it. Why not use that?
I tried it. The recording is black for the first couple of seconds, and its not capturing any audio from within the guest OS. I have the latest version of VB.
 

AaronD

Active Member
My only problem now is that when I right click the window capture and choose "resize output (source size)", so that I don't get any black bars in the recording, the recording is a bit blurrier than the actual thing. I've tried playing with output settings (using GPU video encoder, changing the rate control to CQP, changing the CQ level), but to no avail. It's always slightly blurrier than what the actual window looks like.

So if anyone knows how to record a non-maximized window without losing quality, please let me know.
The guest OS has a weird display size, to allow for VB's menu, the host's taskbar, etc. *That's* the original. It's not any of the standards that you're used to. Scaling at all, if you have content at exactly Nyquist, necessarily blurs it a bit.

Nyquist comes up a lot more in the context of audio, in which case you're pretty much only sampling in time. But it applies to video too, where you're sampling both in time and in space. From one pixel to its neighbor can also be considered a sample rate, and all the same math applies exactly the same way.

So if you have a single black pixel in a sea of white (common for text, even if the colors are different), then you probably won't get that sharpness back if you scale at all, even back to what it was. If you want to get back to what it was, then *every* feature everywhere must be strictly greater than (not equal to) one pixel in every direction.

And even *that* is not particularly accurate, because physical pixels have sharp boundaries so that they effectively count as many pixels all in the same area that are all controlled the same. Kinda like the squarewave example here, that is forced into perfect alignment even when the math says otherwise, and so *that* distorts the image too:
Maybe *that's* the point of stupidly-high resolutions: we don't actually see them any better, but they allow for visually-lossless manipulation. Of course, that requires, as I said above, no feature anywhere to ever use just a single pixel, but with the processing and manufacturing that we have now, it's actually becoming feasible to do that.
 
Last edited:
Top