IP Library Granted Patent US 11,323,701
Granted Patent B2
US 11,323,701 · App. 16/578,237 · Granted May 3, 2022

Systems and methods for group of pictures encoding

Inventor: Eric Burns (Seattle, WA)
Assignee: Panopto, Inc.
H04N19/114H04N19/136H04N19/177H04N19/40
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,323,701
App. No.
16/578,237
Granted
May 3, 2022
Kind
B2
Abstract

Systems and methods are provided encoding a video. Video data is captured. The video data is stored in a group of pictures format, where the group of pictures format comprises a plurality of GOP files, each GOP file including exactly one group of pictures unit. The video data is encoded into a prespecified format. Encoding includes accessing the GOP files containing the video data in the group of pictures format, and encoding the video data into the prespecified format using the GOP files to generate an encoded video.

Claims (49)

1. A computer-implemented method for encoding a video, the method comprising:

receiving first encoded video data encoded from a first set of GOP units, wherein each GOP unit comprises exactly one unencoded independently coded frame and one or more unencoded dependently coded frames;

receiving second encoded video data encoded from a second set of GOP units;

receiving instructions for generating third encoded video data based on the first encoded video data and the second encoded video data, wherein the instructions identify a first transition frame from the first encoded video data and a second transition frame from the second encoded video data; and

generating the third encoded video data by

identifying a first transition GOP unit from the first set of GOP units, wherein the first transition GOP unit includes a first unencoded frame corresponding to the first transition frame;

identifying a second transition GOP unit from the second set of GOP units, wherein the second transition GOP unit includes a second unencoded frame corresponding to the second transition frame;

generating a third transition GOP unit based on the first transition GOP unit and the second transition GOP unit, wherein the third transition GOP unit includes a transition from the first unencoded frame to the second unencoded frame;

encoding a transition encoded video data based on the third transition GOP unit and

combining a subset of the first encoded video data, the transition encoded video data, and a subset of the second encoded video data to form the third encoded video data.

2. The method of claim 1 wherein the subset of the first encoded video data corresponds to video data encoded from the first set of GOP units that come before the first transition GOP unit.

3. The method of claim 1 wherein the subset of the second encoded via data corresponds to video data encoded from the second set of GOP units that come after the second transition GOP unit.

4. The method of claim 1 wherein the third transition GOP unit includes at least one frame from the first transition GOP unit and at least one frame from the second transition GOP unit.

5. The method of claim 1 wherein the subset of the first encoded video data and the subset of the second encoded video data are combined in the generated third encoded video data without re-encoding the corresponding GOP units.

6. The method of claim 1 wherein the subset of the first encoded video data and the subset of the second encoded video data correspond to GOP units that do not fall within the transition.

7. The method of claim 1 wherein the transition corresponds to a cross fade, a dissolve, a peel, a hard transition, or a wipe.

8. A non-transitory computer-readable medium containing instructions configured to cause one or more processors to perform a method for encoding a video, the method comprising:

receiving first encoded video data encoded from a first set of GOP units, wherein each GOP unit comprises exactly one unencoded independently coded frame and one or more unencoded dependently coded frames;

receiving second encoded video data encoded from a second set of GOP units;

receiving instructions for generating third encoded video data based on the first encoded video data and the second encoded video data, wherein the instructions identify a first transition frame from the first encoded video data and a second transition frame from the second encoded video data; and

generating the third encoded video data by

identifying a first transition GOP unit from the first set of GOP units, wherein the first transition GOP unit includes a first unencoded frame corresponding to the first transition frame;

identifying a second transition GOP unit from the second set of GOP units, wherein the second transition GOP unit includes a second unencoded frame corresponding to the second transition frame;

generating a third transition GOP unit based on the first transition GOP unit and the second transition GOP unit, wherein the third transition GOP unit includes a transition from the first unencoded frame to the second unencoded frame;

a transition encoded video data based on the third transition GOP unit and

combining a subset of the first encoded video data, the transition encoded video data, and a subset of the second encoded video data to form the third encoded video data.

9. The non-transitory computer-readable medium of claim 8 wherein the subset of the first encoded video data corresponds to video data encoded from the first set of GOP units that come before the first transition GOP unit.

10. The non-transitory computer-readable medium of claim 8 wherein the subset of the first encoded video data corresponds to video data encoded from a plurality of GOP units from the first set of GOP units.

11. The non-transitory computer-readable medium of claim 8 wherein the third transition GOP unit includes at least one frame from the first transition GOP unit and at least one frame from the second transition GOP unit.

12. The non-transitory computer-readable medium of claim 8 wherein the subset of the first encoded video data and the subset of the second encoded video data are combined in the generated third encoded video data without re-encoding the corresponding GOP units.

13. The non-transitory computer-readable medium of claim 8 wherein the subset of the first encoded video data and the subset of the second encoded video data correspond to GOP units that do not fall within the transition.

14. The non-transitory computer-readable medium of claim 8 wherein the transition corresponds to a cross fade, a dissolve, a peel, a hard transition, or a wipe.

15. A computer-implemented method for encoding a video, the method comprising:

receiving first encoded video data encoded from a set of GOP units, wherein each GOP unit comprises exactly one unencoded independently coded frame and one or more unencoded dependently coded frames;

receiving instructions for generating second encoded video data based on the first encoded video data, wherein the instructions identify a transition from a first time of the first encoded video data to a second time of the first encoded video data; and

generating the second encoded video data by

determining a first transition frame from the first encoded video data based on the first time;

determining a second transition frame from the first encoded video data based on the second time;

identifying a first transition GOP unit from the set of GOP units, wherein the first transition GOP unit includes a first unencoded frame corresponding to the first transition frame;

identifying a second transition GOP unit from the set of GOP units, wherein the second transition GOP unit includes a second unencoded frame corresponding to the second transition frame;

generating a third transition GOP unit based on the first transition GOP unit and the second transition GOP unit, wherein the third transition GOP unit includes a transition from the first unencoded frame to the second unencoded frame;

encoding a transition encoded video data based on the third transition GOP unit and

combining a first subset of the first encoded video data, the transition encoded video data, and a second subset of the first encoded video data to form the second encoded video data.

16. The method of claim 15 wherein the first subset of the first encoded video data corresponds to video data encoded from the set of GOP units that come before the first transition GOP unit.

17. The method of claim 15 wherein the first subset of the first encoded video data corresponds to video data encoded from one GOP unit.

18. The method of claim 15 wherein the first subset of the first encoded video data corresponds to video data encoded from a plurality of GOP units.

19. The method of claim 15 wherein the third transition GOP unit includes at least one frame from the first transition GOP unit and at least one frame from the second transition GOP unit.

20. The method of claim 15 wherein the first subset of the first encoded video data and the second subset of the first encoded video data are combined in the generated second encoded video data without re-encoding the corresponding GOP units.

21. The method of claim 15 wherein the first subset of the first encoded video data and the second subset of the first encoded video data correspond to GOP units that do not fall within the transition.

Assignments (4)
SECURITY INTEREST Recorded Jun 5, 2022
From: PANOPTO, INC.; SYMPHONY VIDEO, INC.
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 060103/0682 →
RELEASE OF SECURITY INTEREST Recorded Jun 3, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
To: PANOPTO, INC.; SYMPHONY VIDEO, INC.
Reel/Frame 060098/0724 →
SECURITY INTEREST Recorded Mar 31, 2021
From: PANOPTO, INC.; SYMPHONY VIDEO, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 055786/0301 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2020
From: BURNS, ERIC
To: PANOPTO, INC.
Reel/Frame 052868/0499 →
Continuity (4)
Continuation 15915328 · Mar 8, 2018
Continuation 14634964 · Mar 2, 2015
Provisional Application 61955946 · Mar 20, 2014
Related Publication 20200260075A1 · Aug 13, 2020