Release v2.5

Please feel free to get in touch with feedback and questions via the #pupil channel on Discord :smile:

Motivation

Pupil v2.5 focuses on further improvements to software stability. We have fixed multiple issues that prevented very old recordings from being opened in Pupil Player.

Improvements

Replacing internal GLFW bindings with pyGLFW - #2015

In this release we replaced the internal glfw.py bindings to GLFW with the external pyGLFW package. This change simplifies our dependency list, making easier to install GLFW on Windows.

New default camera intrinsics - #2023

We use camera intrinsics in multiple places to transform between the 2d distorted image space and the 3d undistorted camera space. With this release, we have updated the default scene camera intrinsics to perform this tansformation more accuractely at the image borders.

Note: Each camera is slightly different. Therefore, it is recommended to run your own camera intrinsics estimation to get the best possible transformations for your camera.

Bug Fixes

  • Fixed a crash in Pupil Player when attempting to visualize invalid data - #2021
  • Fixed an edge-case when handling recordings with negative time jumps - #2026, #2028
  • Fixed a frame drop issue on macOS when windows were occluded - #2027
  • Fixed an issue that caused instabilities when starting the Head Pose tracker - #2022
  • Surface Tracker stability improvements - #2025

Developer Notes

Improved Observable class - #2022

Improvements to the Observable class enable you to observe monkey patched methods (e.g. replaced methods that were not in the original class definition). Additionally, trying to add private methods as observers now fails with a more explicit error.

Changed Requirements

Please install the new external glfw dependency:

pip install glfw