IP Library Patent Application 14338284
Patent Application
App. No. 14/338,284

IN-BAND LATENCY DETECTION SYSTEM

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
14/338,284
Abstract

There is disclosed an in-band latency detection system and method. The system comprises a motion sensor to detect movement and to generate motion data in response to the detected movement and a microcontroller programmed with instructions to apply a first time-stamp to the motion data. Upon receipt of rendered video including a preselected color, a color sensor for detects the preselected color of the at least one pixel and the microcontroller applies a second time-stamp to the detection of the preselected color to thereby calculate a time difference between the first time-stamp and the second time-stamp. The system further includes an output for outputting the time difference.

Claims (72)

1 . An in-band latency detection system comprising:

a motion sensor to detect movement and to generate motion data in response to the detected movement;

a microcontroller programmed with instructions to apply a first time-stamp to the motion data, transmit the motion data to a computing device for rendering video based upon the motion data for presentation on a display,

an input for receiving rendered video based upon the motion data and including at least one pixel of a preselected color, the at least one pixel distinct from the scene presented by the rendered video, for presentation on the display;

the display for presenting the rendered video;

a color sensor for detecting the preselected color of the at least one pixel;

the microcontroller further programmed with instructions to:

predict a motion of a user over an interval of time;

apply a second time-stamp to the detection of the preselected color,

calculate a time difference between the first time-stamp and the second time-stamp the time difference representative of a latency between the detected movement and presentation of the rendered video,

access a prior time difference associated with a previously received rendered video, the prior time difference representative of a latency between previous detected movement and previous presentation of associated rendered video,

apply a first weight to the time difference,

apply a second weight to the prior time difference, where the second weight is less than the first weight, and

generate a weighted average of the time difference and the prior time difference; and

in response to the weighted average exceeding a threshold, increasing the interval of time over which the user's movement is predicted.

2 . The system of claim 1 further comprising at least one processor programmed with instructions to:

generate the rendered video based upon the motion data; and

set the least one pixel in the rendered video to the predetermined color.

3 - 4 . (canceled)

5 . The system of claim 1 , wherein the predicted motion is refined by applying the weighted average to the predicted motion.

6 . The system of claim 5 , wherein the rendered video is updated based upon the refined predicted motion.

7 . The system of claim 1 , wherein the at least one pixel is a plurality of pixels that makes up a shape detectable by the color sensor in the rendered video.

8 . An in-band latency detection method comprising:

detecting movement;

generating motion data in response to the detected movement;

predict a motion of a user over an interval of time applying a first time-stamp to the motion data;

transmitting the motion data to a computing device for rendering video based upon the motion data for presentation on a display,

receiving rendered video based upon the motion data and including at least one pixel of a preselected color, the at least one pixel distinct from the scene presented by the rendered video, for presentation on the display;

presenting the rendered video on the display;

detecting the preselected color of the at least one pixel;

applying a second time-stamp to the detection of the preselected color,

calculating a time difference between the first time-stamp and the second time-stamp, the time difference representative of a latency between the detected movement and presentation of the rendered video;

accessing a prior time difference associated with a previously received rendered video, the prior time difference representative of a latency between previous detected movement and previous presentation of associated rendered video;

applying a first weight to the time difference;

applying a second weight to the prior time difference, where the second weight is less than the first weight;

generating a weighted average of the time difference and the prior time difference; and

in response to the weighted average exceeding a threshold, increasing the interval of time over which the user's movement is predicted.

9 . The method of claim 8 , further comprising:

generating the rendered video based upon the motion data; and

setting the least one pixel in the rendered video to the predetermined color.

10 - 11 . (canceled)

12 . The method of claim 8 , further comprising refining the predicted motion by applying the weighted average to the predicted motion.

13 . The method of claim 12 , wherein the rendered video is updated based upon the refined predicted motion.

14 . The method of claim 8 , wherein the at least one pixel is a plurality of pixels that makes up a shape detectable by the color sensor in the rendered video.

15 . A system for detecting latency in presenting a virtual reality environment, comprising:

a motion sensor for detecting movement and generating motion data in response to the movement;

a microcontroller for applying a first time-stamp to the motion data;

an output for transmitting the motion data to a computing device for use in connection with rendering a virtual reality environment in response to the motion data;

an input for receiving rendered video of the virtual reality environment, the rendered video generated in response to the motion data and including at least one pixel set to a predetermined color, the predetermined color selected to enable detection of the at least one pixel, within the rendered video, by a color sensor;

the color sensor for detecting the at least one pixel; and

the microcontroller further for:

predict a motion of a user over an interval of time;

applying a second time-stamp to detection of the at least one pixel,

generating a latency measurement by comparing the first time-stamp and the second time-stamp, the latency measurement representative of a latency between the detected movement and presentation of the rendered video,

accessing a prior latency measurement associated with a previously received rendered video, the prior latency measurement representative of a latency between previous detected movement and previous presentation of associated rendered video,

applying a first weight to the latency measurement,

applying a second weight to the prior latency measurement, where the second weight is less than the first weight, and

in response to the weighted average exceeding a threshold, increasing the interval of time over which a user's movement is predicted.

16 . The system of claim 15 , wherein the output is further for outputting the weighted average.

17 - 18 . (canceled)

19 . The system of claim 15 , wherein the rendered video is updated based upon the predicted motion as refined by the weighted average.

20 . The system of claim 15 , wherein the at least one pixel is a plurality of pixels that make up a shape detectable by the color sensor in the rendered video.

21 . The system of claim 1 , further comprising at least one processor programmed with instructions to:

access a threshold time difference;

determine whether the time difference exceeds the threshold time difference; and

responsive to determining the time difference exceeds the threshold time difference, mark the time difference for review.

22 . The system of claim 1 , wherein the computing device is configured to modify the rendering of a video scene based on the weighted average.

23 . The system of claim 1 , wherein the computing device is configured to:

determine whether the weighted average indicates high latency; and

responsive to determining the weighted average indicates high latency, simplify the rendering of a scene in the video to perform one or more functions, the one or more functions selected from a group consisting of: rely upon less shading, rely upon fewer light sources, reduce shadows, reduce shadow depth, lower polygon counts, increase motion prediction, and any combination thereof.

24 . The system of claim 1 , wherein the computing device is configured to modify one or more aspects of a virtual reality environment including the rendered video.

25 . The system of claim 1 , wherein the predicted motion comprises a set of coordinates of the user's orientation at the time of the weighted average.

Assignments (4)
CHANGE OF NAME Recorded Jan 31, 2023
From: OCULUS VR, LLC
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 062571/0643 →
CHANGE OF NAME Recorded Jan 31, 2023
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 062571/0818 →
MERGER AND CHANGE OF NAME Recorded Sep 5, 2014
From: OCULUS VR, INC.; INCEPTION ACQUISITION SUB II, LLC
To: OCULUS VR, LLC
Reel/Frame 033682/0292 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2014
From: PATEL, NIRAV; COOPER, LEE; AKSOY, VOLGA
To: OCULUS VR, INC.
Reel/Frame 033371/0769 →