Method And System For Optimizing Bitrate Selection

US2016100162A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016100162-A1
Application numberUS-201414508214-A
CountryUS
Kind codeA1
Filing dateOct 7, 2014
Priority dateOct 7, 2014
Publication dateApr 7, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method including encoding a video program into a plurality of video streams, each of the plurality of video streams being encoded at a corresponding one of a plurality of bitrates; providing, to a plurality of viewing clients, an option to select one of the plurality of video streams; determining a streaming capacity of each of the viewing clients; and determining an improved plurality of bitrates based on streaming capacities of the plurality of viewing clients.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method, comprising: encoding a video program into a plurality of video streams, each of the plurality of video streams being encoded at a corresponding one of a plurality of bitrates; providing, to a plurality of viewing clients, an option to select one of the plurality of video streams; determining a streaming capacity of each of the viewing clients; and determining an improved plurality of bitrates based on streaming capacities of the plurality of viewing clients. 2 . The method of claim 1 , further comprising: encoding the video program into a further plurality of video streams, each of the further plurality of video streams being encoded at a corresponding one of the optimized plurality of bitrates. 3 . The method of claim 2 , further comprising: providing, to a plurality of further viewing clients, an option to select one of the further plurality of video streams; determining a streaming capacity of each of the further viewing clients; and determining a further improved plurality of bitrates based on the streaming capacities of the plurality of further viewing clients. 4 . The method of claim 1 , further comprising: generating a further stream at a fictitious bitrate, wherein the further stream is generated based on one of the video streams, and wherein the fictitious bitrate is a bitrate that is not one of the plurality of bitrates at which the plurality of video streams are encoded, wherein the providing, to the plurality of viewing clients, an option to select one of the plurality of video streams comprises providing, to the plurality of viewing clients, an option to select the further stream. 5 . The method of claim 4 , wherein the further stream is generated by padding a selected one of the plurality of video streams with one of null data and additional data, the further stream having a fictitious bitrate that is higher than the bitrate of the selected one of the plurality of video streams. 6 . The method of claim 1 , wherein the determining the improved plurality of bitrates comprises: dividing the plurality of viewing clients into a plurality of groupings; selecting an optimal bitrate for each of the groupings; and using the optimal bitrates for each of the groupings as the plurality of bitrates. 7 . The method of claim 6 , wherein each of the plurality of groupings includes a substantially equal portion of the viewing clients. 8 . The method of claim 6 , wherein the optimal bitrate for each of the groupings is one of a slowest streaming capacity of the plurality of viewing clients in the grouping and an average of the streaming capacities of the plurality of viewing clients in the grouping. 9 . The method of claim 1 , wherein determining the streaming capacity of each of the viewing clients comprises one of A) receiving a selection of one of the video streams from each of the viewing clients, wherein the bitrate of the selected one of the video streams is used as the streaming capacity of each of the viewing clients, and B) receiving an indication of the streaming capacity from client-side equipment of each of the viewing clients. 10 . The method of claim 9 , wherein receiving the selection of one of the video streams from each of the viewing clients comprises receiving one of a user selection and a software-based selection from each of the viewing clients. 11 . A system, comprising: a video encoder encoding a source video into a plurality of video streams, each of the plurality of video streams being encoded at a corresponding one of a plurality of bitrates; and an optimization logic determining a streaming capacity of each of a plurality of viewing clients of the plurality of video streams and determining an improved plurality of bitrates based on the streaming capacities of the plurality of viewing clients, wherein the video encoder and the optimization logic are configured to be processed by one or more processors, and wherein the one or more processors are coupled to a memory. 12 . The system of claim 11 , wherein the optimization logic instructs the video encoder to encode the video program into a further plurality of video streams, each of the further plurality of video streams being encoded at a corresponding one of the improved plurality of bitrates. 13 . The system of claim 12 , wherein the optimization logic determines a streaming capacity of each of a further plurality of viewing clients of the further plurality of video streams and determines a further improved plurality of bitrates based on the streaming capacities of the plurality of further viewing clients. 14 . The system of claim 11 , wherein the video encoder generates a further stream at a fictitious bitrate, wherein the further stream is generated based on one of the video streams, and wherein the fictitious bitrate is a bitrate that is not one of the plurality of bitrates at which the video encoder encodes the plurality of video streams. 15 . The system of claim 14 , wherein the video encoder generates the further stream by padding a selected one of the plurality of video streams with one of null data and additional data, the further stream having a fictitious bitrate that is higher than the bitrate of the selected one of the plurality of video streams. 16 . The system of claim 11 , wherein the optimization logic determines the improved plurality of bitrates by: dividing the plurality of viewing clients into a plurality of groupings; selecting an optimal bitrate for each of the groupings; and using the optimal bitrates for each of the groupings as the plurality of bitrates. 17 . The system of claim 16 , wherein each of the plurality of groupings includes a substantially equal portion of the viewing clients. 18 . The system of claim 16 , wherein the optimal bitrate for each of the groupings is one of a slowest streaming capacity of the plurality of viewing clients in the grouping and an average of the streaming capacities of the plurality of viewing clients in the grouping. 19 . The system of claim 11 , wherein the optimization logic determines the streaming capacity of each of the viewing clients by one of A) receiving a selection of one of the video streams from each of the viewing clients, wherein the bitrate of the selected one of the video streams is used as the streaming capacity of each of the viewing clients, and B) receiving an indication of the streaming capacity from client-side equipment of each of the viewing clients. 20 . The system of claim 19 , wherein receiving the selection of one of the video streams from each of the viewing clients comprises receiving one of a user selection and a software-based selection from each of the viewing clients. 21 . The system of claim 11 , wherein the optimization logic comprises one of hardware, software, firmware, a codec, and a field-programmable gate array. 22 . A non-transitory computer-readable storage medium storing a set of instructions that are executable by a processor, the set of instructions, when executed by the processor, causing the processor to perform operations comprising: encoding a video program into a plurality of video streams, each of the plurality of video streams being encoded at a corresponding one of a plurality of bitrates; providing, to a plurality of viewing clients, an option to select one of the plurality of video streams; determining a streaming capacity of each of the viewing clients; and determining an improved plurali

Assignees

Inventors

Classifications

  • Availability of hardware or computational resources, e.g. encoding based on power-saving criteria · CPC title

  • the unit being bits, e.g. of the compressed video stream · CPC title

  • H04N19/115Primary

    Selection of the code volume for a coding unit prior to coding · CPC title

  • User input · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016100162A1 cover?
A method including encoding a video program into a plurality of video streams, each of the plurality of video streams being encoded at a corresponding one of a plurality of bitrates; providing, to a plurality of viewing clients, an option to select one of the plurality of video streams; determining a streaming capacity of each of the viewing clients; and determining an improved plurality of bit…
Who is the assignee on this patent?
Disney Entpr Inc
What technology area does this patent fall under?
Primary CPC classification H04N19/115. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Apr 07 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).