# US 12,192,072 B2 · Virtual reality content streaming based on quality of experience level

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,192,072 B2
- Document ID: US12192072B2
- Status: Granted
- Kind: B2
- Application number: 16/786,565
- Filed: 2020-02-10
- Published: 2021-08-12
- Granted: 2025-01-07
- Earliest claimed: 2020-02-10
- Assignees: Charter Communications Operating, LLC
- Applicants: Charter Communications Operating, LLC
- Inventors: Matthew Ringenberg; Dhananjay Lal; Dell Wolfensparger; Andrew Ip
- Web page: https://patentgrep.com/patent/US12192072B2

## CPC

- H04L 41/5067: Customer-centric QoS measurements
- G02B 27/0093: {with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking}
- G02B 27/0172: {characterised by optical features}
- G06T 19/006: {Mixed reality (object pose determination, tracking or camera calibration for mixed reality G06T7/00)}
- H04L 41/5009: Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
- H04L 43/0852: Delays
- H04L 43/0858: {One way delays}
- H04L 43/0864: Round trip delays
- H04L 47/283: in response to processing delays, e.g. caused by jitter or round trip time [RTT]
- H04N 21/21805: {enabling multiple viewpoints, e.g. using a plurality of cameras}
- H04N 21/2402: {Monitoring of the downstream path of the transmission network, e.g. bandwidth available (traffic monitoring in data switching networks H04L43/00; monitoring data switching networks utilization H04L43/0876)}
- H04N 21/4728: for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
- H04N 21/4882: {for displaying messages, e.g. warnings, reminders (arrangements for providing short real-time information to substation in data switching networks H04L12/1895)}
- H04N 21/6587: Control parameters, e.g. trick play commands, viewpoint selection
- H04N 21/816: {involving special video data, e.g 3D video}
- H04W 28/18: Negotiating wireless communication parameters
- G02B 2027/0187: {slaved to motion of at least a part of the body of the user, e.g. head, eye}
- H04L 41/5022: by giving priorities, e.g. assigning classes of service
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G02B: OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

Virtual reality content (VR content) streaming based on quality of experience level is disclosed. In response to a request from a head-mounted display device (HMDD) to serve a VR content, a computing device determines a head motion quantifier (HMQ) associated with the VR content. The computing device is configured to dynamically provide to the HMDD imagery from the VR content based on head movements of a user of the HMDD. The computing device determines a latency value associated with a round-trip time of data between the computing device and the HMDD. The computing device determines a quality of experience level of a plurality of different quality of experience levels based on the HMQ and the latency value, and performs an action based on the quality of experience level.

## Claims

### Claim 1

A method comprising:
receiving, by a computing device, a request from a head-mounted display device (HMDD) to serve first virtual reality (VR) content of a plurality of different VR contents streamable by the computing device, each respective VR content of the plurality of VR contents having a corresponding predetermined head motion quantifier (HMQ), each predetermined HMQ quantifying a rotational velocity of a head of a nominal user participating in the respective VR contents, wherein the computing device is configured to dynamically provide, to the HMDD, imagery from the VR content based on head movements of a user of the HMDD;
obtaining, by the computing device in response to the request, the predetermined HMQ associated with the first VR content;
determining, by the computing device, a latency value associated with a round-trip time of data between the computing device and the HMDD;
determining, by the computing device, a quality of experience level of a plurality of different quality of experience levels based on the predetermined HMQ and the latency value; and
performing, by the computing device, an action based on the quality of experience level.

### Claim 2 (depends on 1)

The method of claim 1 wherein the quality of experience level is an undesirable quality of experience level; and
wherein performing the action based on the quality of experience level comprises sending, to the HMDD, a message indicating that the first VR content cannot be provided to the HMDD.

### Claim 3 (depends on 1)

The method of claim 1 wherein the quality of experience level is between an undesirable quality of experience level and a desirable quality of experience level; and
wherein performing the action based on the quality of experience level comprises sending, to the HMDD, a message indicating that the first VR content can be provided to the HMDD but will not be a desirable quality of experience.

### Claim 4 (depends on 3)

The method of claim 3 wherein sending, to the HMDD, the message indicating that the first VR content can be provided to the HMDD but will not be a desirable quality of experience further comprises:
requesting a confirmation from the HMDD that the first VR content should be provided to the HMDD;
receiving, from the HMDD, the confirmation that the first VR content should be provided to the HMDD; and
in response to receiving the confirmation, begin providing imagery from the first VR content to the HMDD.

### Claim 5 (depends on 1)

The method of claim 1 wherein the quality of experience level is a desirable quality of experience level, and wherein performing the action based on the quality of experience level comprises providing the imagery from the first VR content to the HMDD.

### Claim 6 (depends on 1)

The method of claim 1 wherein:
the computing device communicates with the HMDD via a communications path that includes one or more other computing devices in a network of computing devices;
wherein the quality of experience level is an undesirable quality of experience level; and
wherein performing the action based on the quality of experience level comprises:
determining that a first computing device of the one or more other computing devices has a latency value associated with a round-trip time of data between the first computing device and the HMDD that would result in a desirable quality of experience level if the first VR content was served from the first computing device; and
transferring the request from the HMDD to serve the first VR content to the first computing device.

### Claim 7 (depends on 6)

The method of claim 6 wherein determining that the first computing device of the one or more other computing devices has the latency value associated with the round-trip time of data between the first computing device and the HMDD that would result in the desirable quality of experience level if the first VR content was served from the first computing device further comprises:
sending, by the computing device to the first computing device, a request to provide the latency value associated with the round-trip time of data between the first computing device and the HMDD; and
receiving, from the first computing device, the latency value.

### Claim 8 (depends on 6)

The method of claim 6 wherein determining that the first computing device of the one or more other computing devices has the latency value associated with the round-trip time of data between the first computing device and the HMDD that would result in the desirable quality of experience level if the first VR content was served from the first computing device further comprises:
sending, by the computing device to the first computing device and to a second computing device of the one or more other computing devices, a request to provide the latency value associated with the round-trip time of data between the first computing device and the HMDD and a latency value associated with a round-trip time of data between the second computing device and the HMDD, respectively;
receiving a first latency value from the first computing device;
receiving a second latency value from the second computing device;
determining that the first latency value would result in the desirable quality of experience level; and
determining that the second latency value would not result in the desirable quality of experience level.

### Claim 9 (depends on 6)

The method of claim 6 wherein determining that the first computing device of the one or more other computing devices has the latency value associated with the round-trip time of data between the first computing device and the HMDD that would result in the desirable quality of experience level if the first VR content was served from the first computing device further comprises:
sending, by the computing device to the first computing device and to a second computing device of the one or more other computing devices, a request to provide the latency value associated with the round-trip time of data between the first computing device and the HMDD and a latency value associated with a round-trip time of data between the second computing device and the HMDD, respectively;
receiving a first latency value from the first computing device;
receiving a second latency value from the second computing device;
determining that the first latency value and the second latency value would result in the desirable quality of experience level;
determining that the first computing device is at a higher hierarchical level in the network of computing devices; and
in response to determining that the first computing device is at a higher hierarchical level in the network of computing devices, transferring the request from the HMDD to serve the first VR content to the first computing device.

### Claim 10 (depends on 1)

The method of claim 1 wherein the computing device communicates with the HMDD via a communications path that includes one or more other computing devices in a network of computing devices;
wherein the quality of experience level is an undesirable quality of experience level; and
wherein performing the action based on the quality of experience level comprises:
transferring, to a next computing device in the communications path, the request from the HMDD to serve the first VR content.

### Claim 11 (depends on 1)

The method of claim 1 wherein determining, by the computing device, the latency value associated with the round-trip time of data between the computing device and the HMDD comprises:
sending, by the computing device, an internet control message protocol (ICMP) echo request to the HMDD;
receiving, by the computing device from the HMDD, a response to the ICMP echo request; and
determining an amount of time between sending the ICMP echo request and receiving the response to the ICMP echo request.

### Claim 12 (depends on 1)

The method of claim 1 wherein obtaining the predetermined HMQ associated with the first VR content comprises:
accessing metadata of the first VR content that identifies the predetermined HMQ associated with the first VR content.

### Claim 13

A computing device, comprising:
a memory; and
a processor device coupled to the memory configured to:
receive a request from a head-mounted display device (HMDD) to serve first virtual reality (VR) content of a plurality of different VR contents streamable by the computing device, each respective VR content of the plurality of VR contents having a corresponding predetermined head motion quantifier (HMQ), each predetermined HMQ quantifying a rotational velocity of a head of a nominal user participating in the respective VR contents, wherein the computing device is configured to dynamically provide, to the HMDD, imagery from the VR content based on head movements of a user of the HMDD;
obtain, in response to the request, the predetermined HMQ associated with the first VR content;
determine a latency value associated with a round-trip time of data between the computing device and the HMDD;
determine a quality of experience level of a plurality of different quality of experience levels based on the predetermined HMQ and the latency value; and
perform an action based on the quality of experience level.

### Claim 14 (depends on 13)

The computing device of claim 13 wherein the quality of experience level is an undesirable quality of experience level; and
wherein to perform the action based on the quality of experience level, the processor device is further configured to send, to the HMDD, a message indicating that the first VR content cannot be provided to the HMDD.

### Claim 15 (depends on 13)

The computing device of claim 13 wherein:
the computing device communicates with the HMDD via a communications path that includes one or more other computing devices in the network of computing devices;
wherein the quality of experience level is an undesirable quality of experience level; and
wherein to perform the action based on the quality of experience level, the processor device is further configured to:
determine that a first computing device of the one or more other computing devices has a latency value associated with a round-trip time of data between the first computing device and the HMDD that would result in a desirable quality of experience level if the first VR content was served from the first computing device; and
transfer the request from the HMDD to serve the first VR content to the first computing device.

### Claim 16 (depends on 13)

The computing device of claim 13 wherein the computing device communicates with the HMDD via a communications path that includes one or more other computing devices in the network of computing devices;
wherein the quality of experience level is an undesirable quality of experience level; and
wherein to perform the action based on the quality of experience level, the processor device is further configured to:
transfer, to a next computing device in the communications path, the request from the HMDD to serve the first VR content.

### Claim 17

A computer program product stored on a non-transitory computer-readable storage medium and including instructions configured to cause a processor device to:
receive a request from a head-mounted display device (HMDD) to serve first virtual reality (VR) content of a plurality of different VR contents streamable by the computing device, each respective VR content of the plurality of VR contents having a corresponding predetermined head motion quantifier (HMQ), each predetermined HMQ quantifying a rotational velocity of a head of a nominal user participating in the respective VR contents, wherein the computing device is configured to dynamically provide, to the HMDD, imagery from the VR content based on head movements of a user of the HMDD;
obtain, in response to the request, the predetermined HMQ associated with the first VR content;
determine a latency value associated with a round-trip time of data between the computing device and the HMDD;
determine a quality of experience level of a plurality of different quality of experience levels based on the predetermined HMQ and the latency value; and
perform an action based on the quality of experience level.

### Claim 18 (depends on 17)

The computer program product of claim 17 wherein the quality of experience level is an undesirable quality of experience level; and
wherein to perform the action based on the quality of experience level, the instructions further cause the processor device to send, to the HMDD, a message indicating that the first VR content cannot be provided to the HMDD.

### Claim 19 (depends on 17)

The computer program product of claim 17 wherein:
the computing device communicates with the HMDD via a communications path that includes one or more other computing devices in the network of computing devices;
wherein the quality of experience level is an undesirable quality of experience level; and
wherein to perform the action based on the quality of experience level, the instructions further cause the processor device to:
determine that a first computing device of the one or more other computing devices has a latency value associated with a round-trip time of data between the first computing device and the HMDD that would result in a desirable quality of experience level if the first VR content was served from the first computing device; and
transfer the request from the HMDD to serve the first VR content to the first computing device.
