IP Library Granted Patent US 10,785,279
Granted Patent B2
US 10,785,279 · App. 15/394,699 · Granted Sep 22, 2020

Video encoding using starve mode

Inventors: Yaming He (Redmond, WA); Zhengping Zuo (Medina, WA)
Assignee: Facebook, Inc.
H04L65/608H04L43/0864H04L65/602H04L65/607H04L65/80H04N19/107H04N19/124H04N19/132H04N19/146H04N19/164H04N19/172
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 10,785,279
App. No.
15/394,699
Granted
Sep 22, 2020
Kind
B2
Abstract

A video encoder may be put in a starve mode during a low latency operation in which the video encoder may be operated in a mode that allows video frames to be encoded without any interdependencies such as motion compensation. At least one encoding parameter of the video encoding is selected such that, for each resulting encoded video frame, the video frame fits in exactly one application layer packet.

Claims (35)

1. A computer-implemented method of operating a video encoder in a data communication network, comprising:

monitoring a network condition, wherein the monitoring includes tracking status of at least some compressed video packets generated by the video encoder and transferred to the data communication network;

deciding, based on the monitoring, to change operation of the video encoder to a starve mode in which a constrained mode of encoding is used for generating compressed video packets;

operating, in the starve mode, the video encoder to produce intra-only compressed video frames from uncompressed video frames, wherein the operating comprises:

selectively dropping at least one of the uncompressed video frames based on a detected scene change and the network condition, and

selecting an encoding parameter for the intra-only compressed video frames based on a size of a packet of transmission, wherein the encoding parameter includes a frame resolution; and

transferring, selectively based on the network condition, the compressed video frames to the data communication network.

2. The method of claim 1 , wherein the encoding parameter comprises a quantization parameter that uniformly affects encoding of an entirety of each video frame.

3. The method of claim 1 , further comprising:

simultaneously producing candidate video encoded bits at least at two different encoding parameter settings to decide which ones of the at least two different encoding parameter settings result in packets that fit within the single packet of transmission.

4. The method of claim 1 , further comprising:

operating the video encoder in the starve mode for a duration of time that is proportional to the monitored network condition.

5. The method of claim 1 , further comprising:

changing at least one of the frame resolution or frame rate of the video.

6. The method of claim 5 , wherein the frame resolution and frame rate options are stored in a look-up table.

7. The method of claim 1 , wherein the single packet of transmission comprises a packet having a length of 1200 bytes or less.

8. The method of claim 1 , further including, receiving a control packet from at least one other device indicative of the network condition.

9. The method of claim 8 , wherein, the control packet includes information about a number of lost packets.

10. The method of claim 1 , wherein the transferring is performed by refraining from re-transmission of a previously transferred packets.

11. A computer program product comprising a non-transitory computer-readable medium that stores processor-executable code for implementing a method of performing video encoding comprising:

monitoring a network condition, wherein the monitoring includes tracking status of at least some compressed video packets generated by a video encoder and transferred to a data communication network;

deciding, based on the monitoring, to change operation of the video encoder to a starve mode in which a constrained mode of encoding is used for generating compressed video packets;

operating, in the starve mode, the video encoder to produce intra-only compressed video frames from uncompressed video frames, wherein the operating comprises:

selectively dropping at least one of the uncompressed video frames based on a detected scene change and the network condition, and

selecting an encoding parameter for the intra-only compressed video frames based on a size of a packet of transmission, wherein the encoding parameter includes a frame resolution; and

transferring, selectively based on the condition of the network, the compressed video frames to the data communication network.

12. The computer program product of claim 11 , wherein the operating further comprises:

constraining a quantization parameter to produce a number of bits that fits within exactly one network packet.

13. The computer program product of claim 11 , wherein the operating further comprises:

reducing resolution of a video prior to compressing the uncompressed video frames.

14. The computer program product of claim 13 , wherein the transferring the compressed video frames comprises:

refraining from transferring at least some of the compressed video frames to the data communication network.

15. The computer program product of claim 11 , wherein the packet comprises a header field, a video data field, and an error correction coding field.

16. The computer program product of claim 11 , wherein the monitoring the network condition comprises: receiving control packets from the data communication network indicative of the condition of the data communication network.

17. The computer program product of claim 16 , wherein the control packets include information about a number of lost packets or a round-trip network delay of a previously transmitted compressed video packet.

Assignments (2)
CHANGE OF NAME Recorded Dec 1, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058294/0215 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2017
From: HE, YAMING; ZUO, ZHENGPING
To: FACEBOOK, INC.
Reel/Frame 041236/0039 →
Continuity (1)
Related Publication 20180192061A1 · Jul 5, 2018