pupil-labs/pupil: Pupil Capture, Player, and Service release
Authors/Creators
- Moritz Kassner1
- Pablo Prietz2
- Patrick Fürst3
- Will1
- Roman Roibu2
- Marc Tonsen
- Patrick Faion2
- Ching
- Michael Barz
- Windson yang4
- Emre D.2
- Rafael Picanço5
- ckbaumann
- Sarah Leu
- Andrew Xia6
- Nathakit Sae-Tan2
- fneitzel7
- Polynomdivision
- Chadwick Boulay8
- majoge
- helei0147
- Toshi Kurauchi9
- Tobias Fischer10
- Patrick Burke11
- Manuel Spitschan12
- Ignacio Freiberg13
- Felix Lange
- Evan
- Christopher Gundler
- Aeefire
- 1. Pupil Labs
- 2. @pupil-labs
- 3. @crate
- 4. unicooo
- 5. Imagine Tecnologia Comportamental
- 6. @limebike
- 7. eye square GmbH
- 8. The Ottawa Hospital Research Institute
- 9. @Insper
- 10. Imperial College London
- 11. OFFIS, Institut für Informatik
- 12. University of Oxford
- 13. Toptal
Description
We are pleased to announce the release of Pupil v1.16!
Download the latest bundle and let us know what you think via the #pupil channel on Discord :smile:
Features Pupil Invisible Support - #1596, #1623Preparing for the upcoming public release of Pupil Invisible (PI), we are adding support for recordings made with PI in Pupil Player.
You will be able to download the raw recording from Pupil Cloud or copy them directly from the Companion device. Drag and drop the recordings onto Pupil Player as usual.
Most features of Player will support recordings made with PI. Currently not supported are: The iMotions exporter and blink detector.
Surface Tracker <!-- This was released in v1.15 #### Added Surface Definition Backwards Compatibility - [#1586](https://github.com/pupil-labs/pupil/pull/1586) We made changes to the surface definition import so that old surface definitions created with a Pupil version pre-Apriltags can be re-used with the new version. --> Removed Robust Detection from SurfaceTracker - #1600The robust detection mode was a remnant of the legacy surface marker system. The new Apriltags markers are by default more robust than even the old robust detection mode. This option did not have an effect anymore, so it was removed.
Bugfixes Disabled Hardware Timestamps on Windows Operating System - #1621In the past we have received multiple reports of timestamps being out of sync on Windows. After some testing we discovered that the timestamps from the hardware were not always reliable on Windows. The exact cause of this is still unknown but we have disabled the use of hardware timestamps on Windows for now. We are now using software timestamps with an appropriate offset-mapping.
Improved Eye Overlay Visualizations - #1609Previously, the Eye Overlay plugin would always display the closest eye frame to the current playback position. Therefore, in cases where the eye camera disconnected during a recording, the eye video was visualized incorrectly. Instead, now, we show a gray frame to indicate missing data.
Smaller Fixes- Fixed minor performance issues in Apriltag surface marker detector
- Fixed broken SurfaceTracker heatmap rendering when no gaze data is available - #1584
- Fixed SurfaceTracker timeline drawing performance issues - #1595
- Fixed issues with EyeMovementDetector when using inconsistent 3D gaze data - #1587
- Fixed UI/UX issues when editing surfaces in SurfaceTracker - #1591
- Fixed flickering surface markers - #1600
- Updated the app icons for the Windows bundles to the latest design
- Fixed incorrect handling of missing projection matrices for HMD - #1603
- Fixed performance-related crashes of the SurfaceTracker on Windows - #1605, #1606
- Improved user feedback when opening invalid recordings - #1585
- Fixed crashing offline detection in recordings with timing irregularities - #1615
- Improved user feedback when trying to load an unknown plugin - #1613
- Fixed a crash when trying to use Pupil Invisible with Capture - #1620
- Fixed a crash when setting color values for CircleViz to 1.0 - #1624
- Improved user feedback when recording from Pupil Mobile without TimeSync - #1629
- Updated
pyndsidependency to v1.0pip install git+https://github.com/pupil-labs/pyndsi -U - Added
packagingdependencypip install packaging
Instead of writing videos with equally distant presentation timestamps, Capture now saves videos with their original timing. This means, that newly recorded videos can be played back correctly in VLC without having to export them first with Pupil Player.
Recording Info FilesDue to slight differences in how Capture, Mobile and Invisible store recording meta info, we introduced a unified recording meta info file for Pupil Player: info.player.json. When opening a recording made with Pupil Mobile, Pupil Invisible, or older versions of Pupil Capture, we are transforming the recording into the new format (as we did before already) and aggregate all necessary meta infos in info.player.json without changing the original meta info file. The original meta info files will be renamed in order to uniquely identify the origin of this meta info:
- Older versions of Pupil Capture*:
info.csv->info.old_style.csv - Pupil Mobile:
info.csv->info.mobile.csv - Pupil Invisible:
info.json->info.invisible.json
*Note that e.g. when a Pupil Mobile recording has been opened in an older version of Pupil Player before, we also rename to info.old_style.csv as the original info.csv will have been adjusted by Player before.
You can read about the exact specification of the new info.player.json format here.
Custom plugin classes don't have to rely on underscores in their names anymore for displaying them nicely in the UI. You can now name your plugin classes in accordance with PEP 8 - Class Names:
class MyAwesomePlugin(Analysis_Plugin_Base):
@classmethod
def parse_pretty_class_name(cls) -> str:
return "Awesome Plugin"
Note that currently all existing pupil classes (e.g. Analysis_Plugin_Base) keep their names with underscores for backward compatibility.
Hey - you're reading the developer notes, so this is for you! We're looking to hire developers to contribute to Pupil source code. If you love Python and enjoy writing code that is a joy to read, get in touch. Experience with the scientific Python stack is a plus, but not required. We have a lot of exciting projects in the pipeline.
We are also looking for Dev Ops engineers that have experience with kubernetes, docker, and server-side Python.
Send an email to jobs@pupil-labs.com with a CV to start a discussion. We look forward to hearing from you.
Files
pupil-labs/pupil-v1.16.zip
Files
(13.3 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:78453733f255953f80f6cbc4898d17e2
|
13.3 MB | Preview Download |
Additional details
Related works
- Is supplement to
- https://github.com/pupil-labs/pupil/tree/v1.16 (URL)