IP Library Granted Patent US 10,327,046
Granted Patent B1
US 10,327,046 · App. 15/846,351 · Granted Jun 18, 2019

Method and system for generating a time-lapse video

Inventors: Bin Ni (Fremont, CA); Benoit Schillings (Los Altos Hills, CA); Stephen Lee Hodnicki (Sunnyvale, CA); Michael Chang-Chen (San Jose, CA)
Assignee: Oath Inc.
H04N21/8549G06K9/00751G11B27/031H04N21/2187H04N21/23418H04N21/23424
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,327,046
App. No.
15/846,351
Granted
Jun 18, 2019
Kind
B1
Abstract

One or more computing devices, systems, and/or methods for generating and/or presenting time-lapse videos and/or live-stream videos are provided. For example, a plurality of video frames may be extracted from a video. A first set of video frames and a second set of video frames may be identified from the plurality of video frames. The first set of video frames may be combined to generate a first time-lapse video frame and the second set of video frames may be combined to generate a second time-lapse video frame. A time-lapse video may be generated based upon the first time-lapse video frame and the second time-lapse video frame. In another example, a time-lapse video may be generated based upon a recorded video associated with a live-stream video. The time-lapse video may be presented. Responsive to a completion of the presenting the time-lapse video, the live-stream video may be presented.

Claims (75)

1. A method for generating a time-lapse video, comprising:

receiving a request to generate a time-lapse video based upon a video;

responsive to receiving the request, extracting a plurality of video frames from the video;

storing the plurality of video frames in a memory structure;

identifying a first set of video frames and a second set of video frames from the plurality of video frames, the first set of video frames comprising a first number of video frames and the second set of video frames comprising a second number of video frames;

combining the first set of video frames to generate a first time-lapse video frame;

combining the second set of video frames to generate a second time-lapse video frame; and

generating the time-lapse video based upon the first time-lapse video frame and the second time-lapse video frame.

2. The method of claim 1 , comprising:

determining the first number of video frames based upon a first value identified in a window size data structure and the second number of video frames based upon a second value identified in the window size data structure.

3. The method of claim 2 , comprising:

generating a curve based upon an analysis of the video; and

generating the window size data structure based upon the curve.

4. The method of claim 2 , comprising:

determining a third number of video frames based upon a third value identified in the window size data structure;

determining a fourth number of video frames based upon a fourth value identified in the window size data structure;

determining a fifth number of video frames based upon a fifth value identified in the window size data structure; and

identifying a first plurality of sets of video frames corresponding to the third number of video frames, a second plurality of sets of video frames corresponding to the fourth number of video frames and a third plurality of sets of video frames corresponding to the fifth number of video frames from the plurality of video frames.

5. The method of claim 4 , comprising:

combining the first plurality of sets of video frames to generate a first plurality of time-lapse video frames;

combining the second plurality of sets of video frames to generate a second plurality of time-lapse video frames; and

combining the third plurality of sets of video frames to generate a third plurality of time-lapse video frames.

6. The method of claim 5 , the time-lapse video generated based upon the first plurality of time-lapse video frames, the second plurality of time-lapse video frames and the third plurality of time-lapse video frames, the method comprising:

providing for displaying a first portion of the time-lapse video comprising the first plurality of time-lapse video frames;

providing for displaying a second portion of the time-lapse video comprising the second plurality of time-lapse video frames after the displaying the first portion of the time-lapse video; and

providing for displaying a third portion of the time-lapse video comprising the third plurality of time-lapse video frames after the displaying the second plurality of time-lapse video frames.

7. The method of claim 6 ,

the third number of video frames less than the fourth number of video frames; and

the fifth number of video frames less than the fourth number of video frames.

8. The method of claim 7 ,

the first portion of the time-lapse video comprising a representation of a first portion of the video at a first speed;

the second portion of the time-lapse video comprising a representation of a second portion of the video at a second speed; and

the third portion of the time-lapse video comprising a representation of a third portion of the video at a third speed, the first speed less than the second speed and the third speed less than the second speed.

9. The method of claim 1 ,

the first number of video frames equal to the second number of video frames.

10. The method of claim 1 ,

the first number of video frames not equal to the second number of video frames.

11. The method of claim 1 ,

the combining the first set of video frames comprising averaging the first set of video frames; and

the combining the second set of video frames comprising averaging the second set of video frames.

12. The method of claim 1 ,

the first set of video frames comprising one or more video frames that are also in the second set of video frames.

13. A method for presenting a live-stream video, comprising:

extracting a plurality of video frames from a recorded video associated with a live-stream video;

storing the plurality of video frames in a memory structure;

generating a time-lapse video based upon the plurality of video frames;

responsive to receiving a request to access the live-stream video, presenting the time-lapse video; and

responsive to a completion of the presenting the time-lapse video, presenting the live-stream video from a first starting time.

14. The method of claim 13 ,

the plurality of video frames ending with a last video frame;

the live-stream video beginning with a first live-stream video frame; and

the first live-stream video frame representing a continuation of the last video frame.

15. The method of claim 13 , the request to access the live-stream video received at a first time, the method comprising:

generating a second time-lapse video;

responsive to receiving a request to access the live-stream video at a second time, presenting the second time-lapse video; and

responsive to a completion of the presenting the second time-lapse video, presenting the live-stream video from a second starting time.

16. A computing device comprising:

a processor; and

memory comprising processor-executable instructions that when executed by the processor cause performance of operations, the operations comprising:

receiving a request to generate a time-lapse video based upon a video;

responsive to receiving the request, extracting a plurality of video frames from the video;

storing the plurality of video frames in a memory structure;

identifying a first set of video frames and a second set of video frames from the plurality of video frames, the first set of video frames comprising a first number of video frames and the second set of video frames comprising a second number of video frames;

combining the first set of video frames to generate a first time-lapse video frame;

combining the second set of video frames to generate a second time-lapse video frame; and

generating the time-lapse video based upon the first time-lapse video frame and the second time-lapse video frame.

17. The computing device of claim 16 ,

the first number of video frames equal to the second number of video frames.

18. The computing device of claim 16 ,

the first number of video frames not equal to the second number of video frames.

19. The computing device of claim 16 ,

the combining the first set of video frames comprising averaging the first set of video frames; and

the combining the second set of video frames comprising averaging the second set of video frames.

20. The computing device of claim 16 ,

the first set of video frames comprising one or more video frames that are also in the second set of video frames.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 19, 2021
From: VERIZON MEDIA INC.
To: VERIZON PATENT AND LICENSING INC.
Reel/Frame 057453/0431 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2020
From: OATH INC.
To: VERIZON MEDIA INC.
Reel/Frame 054258/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2018
From: YAHOO HOLDINGS, INC.
To: OATH INC.
Reel/Frame 045240/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2017
From: NI, BIN; SCHILLINGS, BENOIT; HODNICKI, STEPHEN LEE; CHANG-CHEN, MICHAEL
To: YAHOO HOLDINGS, INC.
Reel/Frame 044446/0152 →
Cited By (2)
US 12,518,522 US 12,538,001