IP Library Granted Patent US 12,158,872
Granted Patent B2
US 12,158,872 · App. 17/194,778 · Granted Dec 3, 2024

Dynamic buffer lookahead in adaptive streaming using machine learning

Inventor: Fengjiao Peng (New York, NY)
Assignee: Vimeo.com, Inc.
G06F16/2282G06N3/04G06N3/08
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 12,158,872
App. No.
17/194,778
Granted
Dec 3, 2024
Kind
B2
Abstract

A method and system for adaptive video streaming receives inputs by a deep learning neural network engine. The inputs may include a previous lookahead buffer size, previous download time(s), a current buffer size, next available stream size(s), a last chuck quality, a current buffer size, previous download speed(s), a previous lookahead buffer size, a number of chunks remaining, and/or network condition statistics based upon geolocation information. The inputs are processed by the deep learning neural network engine using a neural network machine learning model to adjust a capacity of a buffer lookahead.

Claims (37)

1. A method for adaptive video streaming comprising:

receiving, by a deep learning neural network engine, inputs including (a) a previous lookahead buffer size, (b) one or more previous download times, (c) a current lookahead buffer size, (d) one or more next available stream sizes, and (e) one or more network condition statistics based upon geolocation information; and

adjusting the current lookahead buffer size based on processing, by the deep learning neural network engine, the inputs using a neural network machine learning model.

2. The method of claim 1 , wherein processing the inputs using the neural network machine learning model comprises selecting a video quality.

3. The method of claim 1 , wherein the (e) one or more network condition statistics are obtained by querying a lookup table against a current geolocation.

4. The method of claim 1 , wherein the neural network machine learning model is trained using a reinforcement learning framework.

5. The method of claim 1 , wherein adjusting the current lookahead buffer size comprises adjusting a number of data chunks comprised by a lookahead buffer.

6. A method for adaptive video streaming comprising:

receiving, by a deep learning neural network engine, inputs including (a) a previous lookahead buffer size, (b) one or more previous download times, (c) a current lookahead buffer size, and (d) one or more next available stream sizes; and

adjusting the current lookahead buffer size based on processing, by the deep learning neural network engine, the inputs using a neural network machine learning model;

wherein the neural network machine learning model is trained with throughput history in prior playback sessions and real video manifests of one or more associated videos.

7. A method for adaptive video streaming comprising:

receiving as inputs, (i) a last chunk quality, (ii) a current size of a lookahead buffer, (iii) one or more previous download speeds, (iv) one or more previous download times, (v) one or more next available stream sizes, (vi) a previous size of the lookahead buffer, (vii) a number of chunks remaining and (viii) one or more network condition statistics based upon geolocation information; and

processing the inputs using a neural network machine learning model to determine a new size of the lookahead buffer.

8. The method of claim 7 , wherein the processing step further selects a video quality using the neural network machine learning model.

9. The method of claim 7 , wherein the (viii) one or more network condition statistics are obtained by querying a lookup table against a current geolocation.

10. The method of claim 7 wherein the neural network machine learning model is trained using a reinforcement learning framework.

11. A method for adaptive video streaming comprising:

receiving as inputs, (i) a last chunk quality, (ii) a current size of a lookahead buffer, (iii) one or more previous download speeds, (iv) one or more previous download times, (v) one or more next available stream sizes, (vi) a previous size of the lookahead buffer and (vii) a number of chunks remaining; and

processing the inputs using a neural network machine learning model to determine a new size of the lookahead buffer;

wherein the learning model is trained with throughput history in prior playback sessions and real video manifests of one or more associated videos.

12. A system for adaptive video streaming comprising:

a deep learning neural network engine configured to:

receive as inputs, (a) a previous lookahead buffer size, (b) one or more previous download times, (c) a current lookahead buffer size, and (d) one or more next available stream sizes; and

adjust the current lookahead buffer size based on processing the inputs using a neural network machine learning model;

wherein the neural network machine learning engine is trained using a reinforcement learning framework.

13. The adaptive video streaming system of claim 12 , wherein the deep learning neural network engine includes two convolutional layers and six dense layers.

14. The adaptive video streaming system of claim 12 , wherein the training methodology includes an actor and a critic.

15. The adaptive video streaming system of claim 14 , wherein the actor decides on an action and the critic predicts a baseline reward based on a state.

16. The adaptive video streaming system of claim 15 , wherein the actor improves upon the decided action based upon a comparison of the decided action and the baseline reward.

17. The adaptive video streaming system of claim 15 , wherein the baseline reward is based on a reward function.

18. The adaptive video streaming system of claim 17 , wherein the reward function is based on video quality, one or more quality switch counts, rebuffering, and the current buffer lookahead size.

19. The system of claim 12 , wherein adjusting the current lookahead buffer size comprises adjusting a number of data chunks comprised by a lookahead buffer.

20. A method for adaptive video streaming comprising:

transmitting to a deep learning neural network engine, inputs including (a) a previous lookahead buffer size, (b) one or more previous download times, (c) a current lookahead buffer size, and (d) one or more next available stream sizes; and

receiving, from the deep learning neural network engine, an adjusted lookahead buffer size, wherein the adjusted lookahead buffer size comprises adjustments by the deep learning neural network engine based on processing the inputs using a neural network machine learning model;

wherein the deep learning neural network engine is trained using history of prior playback sessions.

Assignments (3)
SECURITY INTEREST Recorded May 4, 2026
From: VIMEO.COM, INC.
To: INTESA SANPAOLO S.P.A., AS SECURITY AGENT
Reel/Frame 074553/0001 →
CHANGE OF NAME Recorded Jun 25, 2021
From: VIMEO, INC.
To: VIMEO.COM, INC.
Reel/Frame 056754/0261 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2021
From: PENG, FENGJIAO
To: VIMEO, INC.
Reel/Frame 055638/0947 →
Continuity (2)
Provisional Application 62986891 · Mar 9, 2020
Related Publication 20210279222A1 · Sep 9, 2021