Skip to content
This repository was archived by the owner on Jul 22, 2024. It is now read-only.

Screenshots and video capture

Philip Lamb edited this page Aug 8, 2019 · 1 revision

Screenshots

Oculus

https://developer.oculus.com/documentation/mobilesdk/latest/concepts/mobile-testing-capture/

  1. Ensure your VR headset is set up for adb (i.e., your Oculus Go has Developer Mode enabled, you have adb installed, etc.).
  2. If you're inside FxR, press the controller's Oculus button to return to the Oculus OS.
  3. From the tray menu at the bottom, press the button for Sharing > Take Photo.
  4. The screenshot is taken after 5 seconds, so quickly return to FxR, and arrange the screenshot.
  5. Launch Android File Transfer on your desktop computer.
  6. Find the video in sdcard > oculus > ScreenShots (/sdcard/oculus/ScreenShots).

HTC Vive Focus / Vive Focus Plus

  1. Capture a screenshot at any time by tapping the power button (on the top of the device) and the volume down button (on the underside left-hand side of the device) simultaneously. A "snap" sound signals the screenshot has been taken.
  2. Connect the headset to your computer, and from the menu in the HMD choose "Transfer files".
  3. Launch Android File Transfer.
  4. Find the video in sdcard > Pictures > Screenshots-Flat (/sdcard/Pictures/Screenshots-Flat).

Video capture

Oculus

https://developer.oculus.com/documentation/mobilesdk/latest/concepts/mobile-testing-capture/

Note: Previous Oculus support for the adb method of capturing screenshots (adb shell setprop debug.oculus.enableVideoCapture 1 + adb shell setprop debug.oculus.enableVideoCapture 0) has been removed. You now have to manually record from Oculus' menu, Sharing > Record Video. See detailed instructions below.

  1. Ensure your VR headset is set up for adb (i.e., your Oculus Go has Developer Mode enabled, you have adb installed, etc.).
  2. If you're inside FxR, press the controller's Oculus button to return to the Oculus OS.
  3. From the tray menu at the bottom, press the button for Sharing > Record Video.
  4. Do stuff in FxR, but make sure you keep your face in the headset for the remainder of the session you want to video capture. (There is an Oculus software bug where the video file gets terminated early and corrupted if you take off the headset during a video capture without first explicitly stopping the video capture.)
  5. Press the controller's Oculus button.
  6. From the tray menu at the bottom, press the button for Sharing > Stop Video.
  7. Launch Android File Transfer on your desktop computer.
  8. Find the video in sdcard > oculus > VideoShots (/sdcard/oculus/VideoShots).

Or you can run these adb commands from your command-line terminal:

adb shell ls -al /sdcard/oculus/VideoShots
adb pull /sdcard/oculus/VideoShots

HTC Vive Focus / Vive Focus Plus

export VIDEO_FN=fxr_$(date +%F_%T) && adb shell screenrecord /sdcard/$VIDEO_FN && adb pull /sdcard/$VIDEO_FN

Capturing high-resolution videos

Each value can be set independently meaning you can change resolution without changing FPS and vice versa we default to(1024x1024 @ 60fps w/ 5000000 bitrate (5Mbps) in the absence of setprops

adb shell setprop debug.oculus.capture.width 1920 
adb shell setprop debug.oculus.capture.height 1080 
adb shell setprop debug.oculus.capture.fps 30 
adb shell setprop debug.oculus.capture.bitrate 10000000 

You probably want to change the FOV to match the 1080p resolution as well:

adb shell setprop debug.oculus.eyeFovDown 39 
adb shell setprop debug.oculus.eyeFovUp 38 
adb shell setprop debug.oculus.eyeFovOutward 50 
adb shell setprop debug.oculus.eyeFovInward 50 

You can (optionally) change the games back buffer to render 1 to 1 with capture size

adb shell setprop debug.oculus.textureWidth 1920 
adb shell setprop debug.oculus.textureHeight 1080 

Turn off foviation, dynamic clocking and bump cpu / gpu levels to max

adb shell setprop debug.oculus.foveation.level 0 
adb shell setprop debug.oculus.adaclocks.force 0 
adb shell setprop debug.oculus.cpuLevel -1 
adb shell setprop debug.oculus.gpuLevel -1 

Instructions: boot up HMD, enter those adb commands, tap the power button to power cycle the screen (just the screen, not the device). Launch your app and record. Reboot to reset these values to what they used to be.

The following setting will cause the Go to record a new clip for each new application launched.

adb shell setprop debug.oculus.enableVideoCapture 1

When capturing new pictures on the Oculus Go, make sure that the texture and video resolution are increased so that things don't look stretched in the store.

adb shell setprop debug.oculus.enableVideoCapture 1
adb shell setprop debug.oculus.videoResolution 1536
adb shell setprop debug.oculus.textureWidth 2560
adb shell setprop debug.oculus.textureHeight 1440
adb shell setprop debug.oculus.enableVideoCapture 1
adb shell setprop debug.oculus.videoResolution 1536
adb shell setprop debug.oculus.enableVideoCapture 0
mogrify -resize "2560x2560" -gravity center -crop 2560x1440+0+100 *.png
Clone this wiki locally