Jump to content

screen recording multiple (isolated) browser windows simultaneously? (thought of VMs & OBS but it may not work...)

Hi...

 

Does anyone know of a good way to screen record multiple browser windows simultaneously, keeping them isolated from each other, while having the resulting video files stored in a "less public" location (like in a VM, instead of on my host OS), and be able to minimize the windows while continuing to record?  (I was going to try OBS inside VirtualBox on several VMs, then found out that VB itself has recording capability, but I doubt that'll work.)

 

 

 

I'd like to set something up where I can screen record a bunch of browser windows simultaneously, with each recording's audio and video being isolated from each other.  I had the idea of spinning up some VMs and running OBS Studio inside them to record the screen inside the VM, but apparently OBS needs GPU acceleration which isn't supported on VirtualBox.  (And even if it was, I don't have like 30 or so GPUs to pass through.)

 

I had been going to those browser sources on my phone and using the built-in screen recorder function, which works well enough -- but only for one at a time, and often I want to do like 10 or 20 or even 30 simultaneously, and for longer recordings than my phone supports.  (I would go in later and trim / delete unwanted portions / videos later.)

 

Also, due to privacy and other concerns, I don't want the recorded video files to appear on my host system, just only in the VM.  (I'll move them around later as needed.)

 

The system I'd be doing this on has a Ryzen 9 5950X, 128GB DDR4-3600, a GTX 1060 3GB, host OS (Windows 10 Pro) boots from a 1TB Silicon Power P34A80, and once I get things set up, I'd probably be putting the VMs (with the recorded videos) on one of my hard drives - most likely a 14TB 7200rpm drive. 

 

I would have thought a single thread on a 5950X would be sufficient for encoding 1080p 30fps ~4-6 Mbps (ultrafast preset most likely) x264 video, but I guess not?  It's a 16 core, 32 thread CPU, and leaving a couple threads available for various other tasks, I was hoping I could have as many as like 30 simultaneous recordings going, or would I need to limit it to 14 or 15 and ignore the SMT threads?

My original thought included trying nested virtualization, partly because I also want a one-button method to shut it all down at once without shutting down my main host OS.  (I was thinking, I could just shut down the "host VM" (or at least suspend to disk / save its state) if I needed to, for whatever reason, shut it all off without having to go through and individually shut each VM down.)  Then I would have had the sub-VMs each with a different source, with OBS running in each one to capture that window, or the entire VM.

 

As for why I would be using VMs instead of just normal native software, besides the privacy issue mentioned earlier - For one thing, I'm not aware of a way to "sandbox" the audio from one browser tab in recording software.  (If I was recording in my main host OS, it would pick up the audio from everything on my PC, not just the one browser tab.)

 

Also, I want to be able to minimize the windows or switch to other desktops while continuing to record, and the only way I can think of doing that is by doing the recording from inside a VM, and minimizing the VM itself.

 

I'd be running some flavor of Linux in the VMs.  I've done a little experimenting with various distros the past day or two, and I might go with a light distro like Lubuntu, LXLE Linux, Q4OS or Alpine Linux or something like that.  I also was trying AntiX and Tiny Core, but I still need to learn other ways of installing software when "sudo apt-get install appname" isn't supported on a particular distro.

 

 

 

Anyway, I was looking up why OBS was hitting 100% CPU usage on idle, and various forum posts & sites were telling me that OBS needs a hardware GPU, and doesn't really work properly in a VM.  Also a couple other apps like ShareX came up in my search, and I might consider something like that as well (except it won't run on Linux.)

 

Another thing that came up in my search is the factor of VirtualBox itself having a built-in recording function.  Problem is, the video files would be on the host machine (I don't want them there), and I'm not sure the quality is quite what I'd like it to be.  For example if I do 1920x1080 at 30fps (I'd like to be able to do 60fps) at max quality, it maxes out at 2048 kbps, and I was looking at doing around 4 or 6 Mbps or so.

 

Also I won't be doing this all the time, just now and then.   I do use the computer for other things as well, the recording would be primarily done when I'm not doing much else on the PC.

 

So if anyone has any ideas that would work on the hardware I already have, I'd like to know.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×