Jump to content

paulm

Verified Members
  • Posts

    3
  • Joined

  • Last visited

Posts posted by paulm

  1. Actually for collecting the eye data I do still use an almost unaltered eye data callback function like described in https://forum.vive.com/topic/9341-vive-eye-tracking-at-120hz/ . I do still use the timestamp which comes with it as I suppose that it is an altered system timestamp.

    Using Windows & Unity:

                    private void Update()
                    {  

                      long timestamp = 0;

                      SRanipal_Eye_API.SRanipal_GetSystemTime(ref long timestamp)

                      Vector3 headPose = Camera.main.transform.rotation.eulerAngles;

                      timestamp = SRanipalSystemToEyeTrackerTimeStamp(long timeStamp)

                    }

    I am proposing that the timestamp above can now be compared with eyeData.timestamp which you get through the eye data callback function for synchronizing purposes. Cheers. 😃

     

  2. I assume that SRanipal_Eye_API.SRanipal_GetSystemTime(ref long timestamp) gives you the you the tick count since system start.

    To get it along the EyeData.timeStamp you could use this:

    int SRanipalSystemToEyeTrackerTimeStamp(long timeStamp)
                    {
                        // Value is generated by observation
                        long maxEyeDataTimestampValue = uint.MaxValue;
                        timeStamp %= maxEyeDataTimestampValue;
                        // Magic trick to round the integer at the fourth last digit
                        timeStamp += 500;
                        // Cutting of the last three digits
                        timeStamp /= 1000;
                        return (int) timeStamp;
                    }

×
×
  • Create New...