IP Library Granted Patent US 11,159,645
Granted Patent B2
US 11,159,645 · App. 16/449,258 · Granted Oct 26, 2021

Adaptive backchannel synchronization for virtual, augmented, or mixed reality (xR) applications in edge cloud architectures

Inventors: Vivek Viswanathan Iyer (Austin, TX); Michael S. Gatson (Austin, TX)
Assignee: Dell Products, L.P.
H04L67/38G06F3/012G06F3/013H04L47/32H04W4/021H04W4/027H04W56/001
View Patent ↗
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 11,159,645
App. No.
16/449,258
Granted
Oct 26, 2021
Kind
B2
Abstract

Embodiments of systems and methods for adaptive backchannel synchronization for virtual, augmented, or mixed reality (xR) applications in edge cloud architectures are described. In some embodiments, an Information Handling System (IHS) may include a memory having program instructions stored thereon that, upon execution by a processor, cause the IHS to: receive, from a first Head-Mounted Device (HMD), first Simultaneous Localization and Mapping (SLAM) data comprising a first plurality of packets; receive, from the HMD, an indication of a synchronized time; and at least one of: in response to a determination that the first SLAM data is advanced with respect to the synchronized time by a threshold value, drop one or more of the first plurality of packets; or in response to a determination that the first SLAM data is lagged with respect to the synchronized time by the threshold value, transform lagged SLAM data into current SLAM data.

Claims (61)

1. An Information Handling System (IHS), comprising:

a processor; and

a memory coupled to the processor, the memory having program instructions stored thereon that, upon execution, cause the IHS to:

receive, from a first Head-Mounted Device (HMD), first Simultaneous Localization and Mapping (SLAM) data comprising a plurality of first packets;

receive, from the first HMD, an indication of a synchronized time;

when one or more of the first packets are advanced with respect to the synchronized time by at least a threshold value, drop the one or more first packets, the threshold value indicating an amount of delay in which the first packets of the SLAM data are determined to be out of synchronization with respect to a second data stream; and

when the one or more first packets are lagged with respect to the synchronized time by at least the threshold value, transform the lagged one or more first packets into current SLAM data.

2. The IHS of claim 1 , wherein the indication of the synchronized time comprises a SLAM frame rate and a seed value.

3. The IHS of claim 1 , wherein each of the plurality of packets includes at least one SLAM landmark and a timestamp.

4. The IHS of claim 3 , wherein each of the first plurality of packets further comprises pose information.

5. The IHS of claim 3 , wherein to transform the lagged first packets into the current SLAM data, the program instructions, upon execution, further cause the IHS to apply a camera transform matrix to the lagged first packets using pose information obtained from an earlier SLAM packet.

6. The IHS of claim 1 , wherein the program instructions, upon execution, further cause the IHS to select the threshold value as: a first value in response to the IHS being a co-located IHS, a second value greater than the first value in response to the IHS being an edge server, or a third value greater than the second value in response to the IHS being a cloud server.

7. The IHS of claim 1 , wherein the threshold value is selected based upon a latency parameter associated with the IHS.

8. The IHS of claim 1 , wherein the threshold value is selected based upon a speed of movement of the first HMD.

9. The IHS of claim 1 , wherein the program instructions, upon execution, further cause the IHS to:

receive, from the first HMD, World-Facing Camera (WFC) or Gesture Recognition and Tracking (GRT) data comprising a plurality of second packets; and

when one or more of the second packets are advanced with respect to the synchronized time by at least the threshold value, drop one or more of the plurality second packets; and

when the one or more second packets are lagged with respect to the synchronized time by at least the threshold value, transform the one or more lagged second packets into current WFC or GRT data using temporal interpolation.

10. The IHS of claim 1 , wherein the program instructions, upon execution, further cause the IHS to:

receive, from the first HMD, Eye-Gaze Tracking (EGT) data comprising a second plurality of packets; and

when one or more of the second packets are advanced with respect to the synchronized time by at least the threshold value, drop the one or more second packets; and

when the one or more second packets are lagged with respect to the synchronized time by at least the threshold value, transform the one or more second packets into current EGT data using linear interpolation.

11. The IHS of claim 1 , wherein the program instructions, upon execution, further cause the IHS to:

receive, from the first HMD, audio data comprising a plurality of second packets; and

when one or more of the second packets are advanced with respect to the synchronized time by at least the threshold value, transform the one or more lagged second packets into current audio data using time scale modulation downsampling; and

when the one or more second packets are lagged with respect to the synchronized time by at least the threshold value, transform the one or more lagged second packets into current audio data using time scale modulation upsampling.

12. The IHS of claim 1 , wherein the program instructions, upon execution, further cause the IHS to:

receive, from a second HMD co-located with the first HMD, second SLAM data comprising a second plurality of packets; and

when one or more of the second packets are advanced with respect to the synchronized time by at least a second threshold value, wherein the second threshold value is larger than the first threshold value, drop one or more of the second packets; and

when the one or more second packets are lagged with respect to the other synchronized time by at least the second threshold value, transform the one or more second packets into current SLAM data.

13. A hardware memory having program instructions stored thereon that, upon execution by an Information Handling System (IHS), cause the IHS to:

receive Simultaneous Localization and Mapping (SLAM) data comprising a plurality of first packets;

select a first threshold value that indicates an amount of delay in which the first packets of the SLAM data are determined to be out of synchronization with respect to a second data stream; and

when one or more of the first packets are advanced by the selected threshold value or more, drop the one or more first packets; and

when the one or more first packets are lagged by the selected threshold value or more, transform the one or more lagged first packets into current SLAM data.

14. The hardware memory of claim 13 , wherein the program instructions, upon execution, further cause the IHS to:

receive World-Facing Camera (WFC) or Gesture Recognition and Tracking (GRT) data comprising a plurality of second packets; and

when one or more of the first packets are advanced with respect to the synchronized time by the threshold value or more, drop the one or more second packets; and

when the one or more second packets are lagged with respect to the synchronized time by the threshold value or more, transform the one or more lagged second packets into current WFC or GRT data.

15. The hardware memory of claim 13 , wherein the program instructions, upon execution, further cause the IHS to:

receive Eye-Gaze Tracking (EGT) data comprising a plurality of second packets; and

when one or more of the second packets are advanced with respect to the synchronized time by the threshold value or more, drop the one or more second packets; or

when the one or more second packets are lagged with respect to the synchronized time by the threshold value or more, transform the one or more lagged second packets into current EGT data.

16. The hardware memory of claim 13 , wherein the program instructions, upon execution, further cause the IHS to:

receive audio data; and

when the audio data is advanced or lagged with respect to the synchronized time by the threshold value or more, transform the lagged audio data into current audio data.

17. A method, comprising:

receiving, by an Information Handling System (IHS) from a Head-Mounted Device (HMD), Simultaneous Localization and Mapping (SLAM) data comprising a plurality of first packets; and

when one or more of the first packets are advanced by at least a first threshold value, dropping the one or more first packets, the first threshold value indicating an amount of delay in which the first packets of the SLAM data are determined to be out of synchronization with respect to a second data stream; and

when the one or more first packets are lagged by at least the first threshold value, transforming the one or more lagged first packets into current SLAM data.

18. The method of claim 17 , further comprising:

receiving, from the HMD, World-Facing Camera (WFC) or Gesture Recognition and Tracking (GRT) data comprising a plurality of second packets; and

when one or more of the second packets are advanced by at a second threshold value, dropping the one or more second packets; or

when the one or more second packets are lagged by at least the second threshold value, transforming the one or more lagged second packets into current WFC or GRT data.

19. The method of claim 18 , further comprising:

receiving, from the HMD, Eye-Gaze Tracking (EGT) data comprising a plurality of third packets; and

when one or more of the third packets are advanced by at least a third threshold value, dropping the one or more of third packets; and

when the one or more third packets are lagged with respect to the synchronized time by at least the third threshold value, transforming the one or more lagged third packets into current EGT data.

20. The method of claim 19 , further comprising:

receiving, from the HMD audio data comprising a plurality of fourth packets; and

when one or more of the fourth packets are advanced or lagged with by at least a fourth threshold value, synchronizing the one or more fourth packets with the SLAM data.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2019
From: IYER, VIVEK VISWANATHAN; GATSON, MICHAEL S.
To: DELL PRODUCTS, L.P.
Reel/Frame 049556/0570 →