360 Media
See the tutorial below on a step by step guide on using 360 Media with SightLab
Additional information is on the Creating a New Scene Page
Note: As of SightLab 2.8.11 there is now support for up to 8k 360 video (mono or stereo). If your hardware struggles with playback of 8k you can also downscale the video by adding this code at the top of your script (before importing sightlab utils)
import sightlab_utils.panorama_utils as panorama_utils
# Halve 8K → 4K before uploading to the GPU
panorama_utils.DOWNSCALE_TARGET = (3840, 1920)
As of SightLab 2.4, you can also view the regions with their name tag in the replay

Changing the rotation of the 360 Media
Add this code before calling sightlab on the main script:
import sightlab_utils.panorama_utils as panorama_utils
_orig_MonoSphere_init = panorama_utils.MonoSphere.__init__
def _patched_MonoSphere_init(self, *args, **kwargs):
_orig_MonoSphere_init(self, *args, **kwargs)
self.setEuler([180, 0, 0])
panorama_utils.MonoSphere.__init__ = _patched_MonoSphere_init
And this on the replay
def ontrialchanged():
env = replay.sceneObjects[MEDIA_OBJECT]
env.setEuler(180,0,0)
viz.callback(TRIAL_LOADED_EVENT, ontrialchanged)
env = replay.sceneObjects[MEDIA_OBJECT]
env.setEuler(180,0,0)