SightLab STLB / JSON
SightLab Configuration Settings (.stlb)
SightLab stores experiment setup in a JSON file with the .stlb
extension. The file contains a dictionary called trialSettings
. Each key in this dictionary is either the string "DEFAULT"
or a trial number (e.g., "1"
, "2"
, ...). The "DEFAULT"
entry defines default values used when new trials are created. Every trial entry stores the same set of keys so settings can vary per trial.
Global and Per-Trial Settings
Parameter | Data Type | Logical Role |
---|---|---|
SCREEN_RECORD |
bool (viz.ON /viz.OFF ) |
Enable video recording. Stored per trial but typically global. |
NUMBER_OF_TRIALS |
int |
Total trial count for the experiment (global). |
RANDOM_TRIALS |
bool |
Whether to randomize trial order (global flag copied per trial). |
DATA_SAVING |
str (PER_TRIAL or COMBINED ) |
Controls how trial data files are generated. |
TRACKING |
bool |
Toggle tracking data logging. Saved per trial. |
TRIAL_LABEL |
str |
Label/name for the trial. |
BIOPAC |
bool |
Enable Biopac acquisition. Global flag copied to each trial. |
DWELL_TIME |
float |
Default dwell-time threshold in seconds. |
DISPERSION_THRESHOLD |
int /float |
Dispersion threshold for fixation detection. |
DURATION_THRESHOLD |
float |
Minimum fixation duration in seconds. |
NOISE_REDUCTION |
int /float |
Eye-tracker noise reduction setting. |
AVATAR_HEAD |
str or null |
Avatar head model to load. |
AVATAR_RIGHT_HAND |
str or null |
Right hand model path. |
AVATAR_LEFT_HAND |
str or null |
Left hand model path. |
RECENT_CONFIG |
str |
Name of the most recently used config file. |
GAZE_POINT |
str or null |
Model used to visualize gaze. |
MODE |
str (MODEL_3D or MEDIA_360 ) |
Scene type for the trial. |
ENVIRONMENT |
str or null |
Environment/media file name for the trial. |
ENVIRONMENT_DIRECTORY |
str |
Directory containing environment or media files. |
START_CONDITION |
list [condition, value] |
Defines how the trial begins. |
END_CONDITION |
list [condition, value] |
Defines how the trial ends. |
TRIAL_SETUP |
dict |
Object mapping: {TARGET, VISIBLE, GRAB} booleans. |
MEDIA_SETUP |
dict |
Media options like {MEDIA_TYPE, MEDIA_FORMAT} . |
CLIENT_INFO |
dict |
Multi-user info: {SERVER_LIST, SERVER_NAME, FIRST_NAME, SHOW_NAME} . |
REGIONS_OF_INTEREST |
dict |
ROI per trial: [position, radius/size, alpha, color, name] . |
SCENE_SETUP |
dict |
Scene options from ADDITIONAL_SETTINGS . |
AUTO_ASSIGN |
bool (client mode only) |
Auto-assign client IDs in multi-user setups. |
Additional Settings (SCENE_SETUP
)
The SCENE_SETUP
dictionary contains ADDITIONAL_SETTINGS
from settings.py
:
Key | Data Type | Purpose |
---|---|---|
Console |
bool |
Toggle the on-screen console. |
Gaze Path Visible |
bool |
Show gaze path visualization. |
File Locations
Configuration files are stored under the sightlab_configs
folder.
The most recently used file is saved as:
recent_config.stlb
(single-user)recent_config_server.stlb
orrecent_config_client.stlb
(multi-user)
New .stlb
files are created when saving a project.
Usage
On launch, SightLab loads recent_config.stlb
if available and populates trialSettings
.
When saving, the current trialSettings
dictionary is written to a .stlb
file using json.dump
.