IP Library › Granted Patent US 11,743,442
Granted Patent B2
US 11,743,442 · App. 17/362,068 · Granted Aug 29, 2023

Bitstream structure for immersive teleconferencing and telepresence for remote terminals

Inventors: Rohit Abhishek (San Jose, CA); Iraj Sodagar (Los Angeles, CA)
Assignee: TENCENT AMERICA LLC
H04N13/161G06F3/012H04L65/65H04N13/111H04N19/597
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,743,442
App. No.
17/362,068
Granted
Aug 29, 2023
Kind
B2
Abstract

A method, computer program, and computer system is provided for coding viewport bitstreams. A first coded video bitstream having a segment size defined for a viewport is encoded based on a threshold corresponding to a user's head movement. A second coded video bitstream having a low resolution is encoded. The second coded video bitstream may correspond to a background having a constant segment duration or size. A streaming bitstream for decoding or rendering is created using the first coded video bitstream and the second coded bitstream.

Claims (37)

1. A method of encoding viewport bitstreams, executable by a processor, comprising:

receiving, from a video decoder, information about (i) a speed of a user's head movement while viewing video content via a user wearable device and (ii) an available bandwidth, the video content decoded by the video decoder and received over a content delivery network (CDN);

encoding a first coded video bitstream having a segment size defined for a viewport based on the available bandwidth and a head speed threshold corresponding to the speed of the user's head movement such that the segment size is inversely proportional to the speed of the user's head movement, the first coded video bitstream having a first resolution;

encoding a second coded video bitstream having a second resolution corresponding to a background having a constant segment duration or size, the second resolution being lower than the first resolution;

creating a streaming bitstream for decoding or rendering using the first coded video bitstream and the second coded video bitstream; and

transmitting, over the CDN to the video decoder, the streaming bitstream.

2. The method of claim 1 , wherein the first coded video bitstream has multiple segment sizes for the viewport.

3. The method of claim 1 , wherein the head speed threshold is dependent on the speed of the user's head movement and the available bandwidth.

4. The method of claim 3 , wherein the receiving the information about the speed of the user's head movement and the available bandwidth is via a real time transport protocol (RTP) control protocol (RTCP) feedback.

5. The method of claim 1 , wherein a margin around the viewport is requested at the same or longer segment size as the viewport.

6. The method of claim 5 , wherein based on the user's head movement being within the margin, new tiles having a longer segment are requested for updating the margin.

7. The method of claim 5 , wherein shorter segments having the first resolution are requested based on a resolution of tiles in the margin being lower than tiles in the viewport.

8. The method of claim 7 , wherein the shorter segments are requested regardless of whether the user's head movement is within the margin.

9. The method of claim 5 , wherein shorter length segments are requested based on the viewport moving beyond the margin.

10. A computer system for splitting viewport bitstreams, the computer system comprising:

one or more computer-readable non-transitory storage media configured to store computer program code; and

one or more computer processors configured to access said computer program code and operate as instructed by said computer program code, said computer program code including:

receiving code configured to cause the one or more computer processors to receive, from a video decoder, information about (i) a speed of a user's head movement while viewing video content via a user wearable device and (ii) an available bandwidth, the video content decoded by the video decoder and received over a content delivery network (CDN);

first encoding code configured to cause the one or more computer processors to encode a first coded video bitstream having a segment size defined for a viewport based on the available bandwidth and a head speed threshold corresponding to the speed of the user's head movement such that the segment size is inversely proportional to the speed of the user's head movement, the first coded video bitstream having a first resolution;

second encoding code configured to cause the one or more computer processors to encode a second coded video bitstream having a second resolution corresponding to a background having a constant segment duration or size, the second resolution being lower than the first resolution;

creating code configured to cause the one or more computer processors to create a streaming bitstream for decoding or rendering using the first coded video bitstream and the second coded video bitstream; and

transmitting code configured to cause the one or more computer processors to transmit, over the CDN to the video decoder, the streaming bitstream.

11. The computer system of claim 10 , wherein the first coded video bitstream has multiple segment sizes for the viewport.

12. The computer system of claim 10 , wherein the head speed threshold is dependent on the speed of the user's head movement and the available bandwidth.

13. The computer system of claim 12 , wherein the information about the speed of the user's head movement and the available bandwidth is received via a real-time transport protocol (RTP) control protocol (RTCP) feedback.

14. The computer system of claim 10 , wherein a margin around the viewport is requested at the same or longer segment size as the viewport.

15. The computer system of claim 14 , wherein based on the user's head movement being within the margin, new tiles having a longer segment are requested for updating the margin.

16. The computer system of claim 14 , wherein shorter segments having the first resolution are requested based on a resolution of tiles in the margin being lower than tiles in the viewport.

17. The computer system of claim 16 , wherein the shorter segments are requested regardless of whether the user's head movement is within the margin.

18. The computer system of claim 14 , wherein shorter length segments are requested based on the viewport moving beyond the margin.

19. A non-transitory computer readable medium having stored thereon a computer program for splitting viewport bitstreams, the computer program configured to cause one or more computer processors to:

receive, from a video decoder, information about (i) a speed of a user's head movement while viewing video content via a user wearable device and (ii) an available bandwidth, the video content decoded by the video decoder and received over a content delivery network (CDN);

encode a first coded video bitstream having a segment size defined for a viewport based on the available bandwidth and a head speed threshold corresponding to the speed of the user's head movement such that the segment size is inversely proportional to the speed of the user's head movement, the first coded video bitstream having a first resolution;

encode a second coded video bitstream having a second resolution corresponding to a background having a constant segment duration or size, the second resolution being lower than the first resolution;

create a streaming bitstream for decoding or rendering using the first coded video bitstream and the second coded video bitstream;

transmit, over the CDN to the video decoder, the streaming bitstream.

20. The computer readable medium of claim 19 , wherein a margin around the viewport is requested at the same or longer segment size as the viewport.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2021
From: ABHISHEK, ROHIT; SODAGAR, IRAJ
To: TENCENT AMERICA LLC
Reel/Frame 056706/0964 →
Continuity (2)
Provisional Application 63111425 · Nov 9, 2020
Related Publication 20220150460A1 · May 12, 2022