IP Library Granted Patent US 11,457,054
Granted Patent B2
US 11,457,054 · App. 17/063,439 · Granted Sep 27, 2022

Selection of resolutions for seamless resolution switching of multimedia content

Inventors: Kourosh Soroushian (San Diego, CA); Abhishek Shivadas (San Diego, CA)
Assignee: DIVX, LLC
H04L65/70H04L65/61H04N19/33H04N21/23439H04N21/234363H04N21/8456
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,457,054
App. No.
17/063,439
Granted
Sep 27, 2022
Kind
B2
Abstract

Systems and methods for the selection of resolutions for seamless resolution switching of multimedia content in accordance with embodiments of the invention are disclosed. In one embodiment of the invention, a source encoder includes a processor configured by a source encoder application to receive multimedia content, where the multimedia content comprises video data having a primary resolution and a primary sample aspect ratio and encode the video data as a set of alternative streams, where a plurality of the streams in the set of alternative streams have different maximum bitrates and resolutions, the resolution of each of the plurality of streams comprises a width and height that are both an integer number of pixels, and both the width and height of each of the plurality of streams is a common fraction of the width and height of the corresponding primary resolution.

Claims (30)

1. A source encoder including a processor and a memory readable by the processor where the memory stores an encoding application that directs the processor to receive a primary video stream and encode the primary video stream into a set of alternative video streams, where the encoding application directs the processor to:

select a primary resolution based on a given aspect ratio of the primary video stream;

determine a set of resolutions for the set of alternative video streams for the given aspect ratio from the primary resolution, wherein:

each resolution of the set of resolutions comprises a height, width, and sample aspect ratio;

the height and width of each resolution of the set of resolutions is an integer number of pixels and is less than the corresponding width and height of the primary resolution;

at least two resolutions of the set of resolutions have different sample aspect ratios; and

each resolution of the set of resolutions results in the given aspect ratio; and

encode a set of alternative video streams from the primary video stream, where each of the alternative video streams is encoded at a different resolution from the set of resolutions and a different bitrate from other video streams in the set of alternative video streams; and

generate an index file, where the index file includes a description of each of the set of alternative video streams, where the description for each alternative video stream comprises the height, the width, the bitrate, and the sample aspect ratio of the resolution at which the alternative stream is encoded.

2. The source encoder of claim 1 , wherein the set of resolutions comprises at least one resolution having a square sample aspect ratio.

3. The source encoder of claim 1 , wherein the index file is dynamically generated in response to a request for the primary video stream.

4. The source encoder of claim 1 , wherein the encoder application directs the processor to determine the set of resolutions for the set of alternative video streams by selecting the set of resolutions from a plurality of height and width combinations, wherein a height and a width for each height and width combination of the plurality of height and width combinations are each whole number fractions of the height and the width of the primary resolution by determining whether a numerator and a denominator of the whole number fraction are below a given threshold.

5. The source encoder of claim 1 , wherein the height and the width for each resolution of the set of resolutions is a multiple of 8.

6. The source encoder of claim 1 , wherein the encoding application further directs the processor to store each of the encoded set of alternative streams in a container file.

7. The source encoder of claim 6 , wherein the encoding application further directs the processor to generate a container index for the container file of each of the encoded set of alternative streams.

8. A method for encoding a primary video stream into a set of alternative video streams, where method comprises:

selecting a primary resolution based on a given aspect ratio of the primary video stream;

determining a set of resolutions for the set of alternative video streams for the given aspect ratio from the primary resolution wherein:

each resolution of the set of resolutions comprises a height, width, and sample aspect ratio;

the height and width of each resolution of the set of resolutions is an integer number of pixels and is less than the corresponding width and height of the primary resolution;

at least two resolutions of the set of resolutions have different sample aspect ratios; and

each resolution of the set of resolutions results in the given aspect ratio;

encoding a set of alternative video streams from the primary video stream, where each of the alternative video streams is encoded at a different resolution from the set of resolutions and a different bitrate from other video streams in the set of alternative video streams; and

generating an index file, where the index file includes a description of each of the set of alternative video streams, where the description for each alternative video stream comprises the height, the width, the bitrate, and the sample aspect ratio of the resolution at which the alternative stream is encoded.

9. The method of claim 8 , wherein the set of resolutions comprises at least one resolution having a square sample aspect ratio.

10. The method of claim 8 , wherein the index file is dynamically generated in response to a request for the primary video stream.

11. The method of claim 8 further comprising determining the set of resolutions for the set of alternative video streams by selecting the set of resolutions from a plurality of height and width combinations, wherein a height and a width for each height and width combination of the plurality of height and width combinations are each whole number fractions of the height and the width of the primary resolution by determining whether a numerator and a denominator of the whole number fraction are below a given threshold.

12. The method of claim 8 , wherein the height and the width for each resolution of the set of resolutions is a multiple of 8.

13. The method of claim 8 further comprising storing each of the encoded set of alternative streams in a container file.

14. The method of claim 13 further comprising generating a container index for the container file of each of the encoded set of alternative streams.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2021
From: SOROUSHIAN, KOUROSH; SHIVADAS, ABHISHEK
To: ROVI TECHNOLOGIES CORPORATION
Reel/Frame 055774/0895 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2021
From: ROVI TECHNOLOGIES CORPORATION
To: SONIC IP, INC.
Reel/Frame 055774/0931 →
CHANGE OF NAME Recorded Mar 30, 2021
From: DIVX CF HOLDINGS LLC
To: DIVX, LLC
Reel/Frame 055774/0944 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2021
From: SONIC IP, INC.
To: DIVX CF HOLDINGS LLC
Reel/Frame 055774/0948 →
Continuity (4)
Continuation 15287608 · Oct 6, 2016
Continuation 13430032 · Mar 26, 2012
Provisional Application 61529216 · Aug 30, 2011
Related Publication 20210021662A1 · Jan 21, 2021
Cited By (7)
US 12,244,878 US 12,250,404 US 12,262,051 US 12,407,906 US 12,452,328 US 12,470,781 US 12,684,093