alvr-org / ALVR

Stream VR games from your PC to your headset via Wi-Fi
MIT License
5.49k stars 486 forks source link

Recording the game on video #2414

Open MARK2580 opened 1 month ago

MARK2580 commented 1 month ago

Description

I noticed that in the settings there is a function of constant recording of everything that happens. I just wanted to see something like Shadow Play but only for the VR headset. But in the end I get strange files with the h264 extension. If you rename them to mp4, they play, but if the recording is already 6-7 GB, it becomes completely unplayable, the processor is loaded by 100% when opened in the player. I would also like to see the recording from one eye, not stereo. scr_20_09_2024_15_37_52

0Human0 commented 1 month ago

The recording feature inside of ALVR is for Debugging purposes only. If you need to record gameplay on your PC use something like OBS Studio. https://github.com/obsproject/obs-studio

MARK2580 commented 1 month ago

The recording feature inside of ALVR is for Debugging purposes only. If you need to record gameplay on your PC use something like OBS Studio

obs/shadowplay and other programs are designed exclusively for recording "flat" games. Often VR games are either not displayed on the desktop at all or display something completely different from what you see in the VR headset.

The-personified-devil commented 1 month ago

Because the screen's quite up in your face in vr, the resolution needs to be quite high, so it doesn't look pixelated. And because it's latency critical, you have to use settings that increase bitrate and thus total recording size and obviously a high refresh rate. So dumped streams from alvr are really unsuitable for actually recording gameplay.

And adding a feature to encode the stream a second time with different settings (i.e. lower resolution, one eye, tuned settings, perhaps a more efficient codec and a lower framerate (no relevant video uploading platform takes more than 60fps anyway)) probably isn't going to happen due the high complexity of implementing it. This goes especially for merging multiple frames into one to reduce fps and only recording one of two eyes. Nevermind the increased hardware load, seeing as streaming/recording games is an intense task in and of itself, so doing both at the same time isn't an option for most people.

Now what you can do is grab the game's output window, which should be one eye or merged and lower resolution, and record it using a proper recording software like obs that supports merging frames to a lower fps and doing additional resolution downsizing. Or you could look into your headsets builtin view recording feature to see if that performs better (newer quest headsets support this for example). Also note that recording games is known for producing lots of data, so you're not gonna get around that aspect in general. And finally if you want to maximize the efficiency with recordings from alvr (and in general) you should really pick a more efficient codec such as hevc or ideally av1.

MARK2580 commented 1 month ago

Pico 4 (which I use) is great at recording video in full form, not flattened, not stereo, but almost as it would look on the desktop, the problem is that there is no background recording, so to speak. And what happens on the desktop is often just a black screen or a very small screen where nothing is visible

Linkarlos64 commented 3 weeks ago

I can capture everything thats sent to the headset (Quest 2 in this case) just fine, if you google "OBS vr plugin" you will find it on top, you only need to rearrange the scene and resolution output for ultrawide if you want to capture both eyes for 3D (Doing it in an Intel Arc a750 exporting as 3300x1080 in Obs) Screenshot_20241015_090438_YouTube