Bitrate selection for video streaming

US9854020B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9854020-B1
Application numberUS-201514622292-A
CountryUS
Kind codeB1
Filing dateFeb 13, 2015
Priority dateFeb 14, 2014
Publication dateDec 26, 2017
Grant dateDec 26, 2017

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 plurality of videos associated with a plurality of video resolutions may be received. A minimum bitrate may be identified for each of the video resolutions based on a first bitrate point associated with the videos where a quality of the videos at a first video resolution that is upscaled to a second video resolution is better than a quality of the videos at the second video resolution at bitrates below the first bitrate point. Furthermore, a maximum bitrate may be identified for each of the video resolutions based on a second bitrate point where the rate of change of the quality of the videos is below a threshold value. The identified minimum bitrates and the maximum bitrates may be assigned to the video resolutions.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving a plurality of videos associated with a plurality of video resolutions; identifying, by a processing device, a minimum bitrate for each of the video resolutions based on a first bitrate point associated with the videos where a quality of the videos at a first video resolution that is upscaled to a second video resolution is better than a quality of the videos at the second video resolution at bitrates below the first bitrate point, the upscaling of the first video resolution corresponding to converting the videos from the first video resolution to the second video resolution at a client device; identifying a maximum bitrate for each of the video resolutions based on a second bitrate point where a rate of change of the quality of the videos is below a threshold value; and assigning the identified minimum bitrates and the maximum bitrates to the video resolutions. 2. The method of claim 1 , wherein the identifying of the minimum bitrate for each of the video resolutions is further based on a cumulative distribution associated with the first bitrate point of each of the videos, and wherein the identifying of the maximum bitrate for each of the video resolutions is further based on a cumulative distribution associated with the threshold value of each of the videos. 3. The method of claim 1 , further comprising: receiving, from the client device, a request for one of the videos; identifying an achievable bitrate associated with the client device; and transmitting a transcoding of the requested video based on the achievable bitrate of the client device and the minimum bitrate and maximum bitrate for one of the video resolutions. 4. The method of claim 3 , wherein the achievable bitrate of the client device is between the minimum bitrate and the maximum bitrate for the one of the video resolutions and the achievable bitrate is based on video processing and bandwidth capabilities associated with the client device. 5. The method of claim 3 , wherein the transmitting of the requested video based on the achievable bitrate of the client device and the minimum bitrate and the maximum bitrate for one of the video resolutions comprises identifying the transcoding of the requested video at a particular video resolution associated with the minimum bitrate and the maximum bitrate. 6. The method of claim 3 , further comprising: identifying a change in the achievable bitrate associated with the client device; and switching the transmitting of the requested video from the transcoding to a second transcoding based on the change in the achievable bitrate of the client device. 7. The method of claim 6 , wherein the transcoding of the requested video is at a first bitrate and a first video resolution and the second transcoding of the requested video is at a second bitrate and a second video resolution, wherein the first bitrate is different than the second bitrate and the first video resolution is different than the second video resolution. 8. A non-transitory machine-readable storage medium storing instructions which, when executed, cause a processing device to perform operations comprising: receiving a plurality of videos associated with a plurality of video resolutions; identifying a minimum bitrate for each of the video resolutions based on a first bitrate point associated with the videos where a quality of the videos at a first video resolution that is upscaled to a second video resolution is better than a quality of the videos at the second video resolution at bitrates below the first bitrate point, the upscaling of the first video resolution corresponding to converting the videos from the first video resolution to the second video resolution at a client device; identifying a maximum bitrate for each of the video resolutions based on a second bitrate point where a rate of change of the quality of the videos is below a threshold value; and assigning the identified minimum bitrates and the maximum bitrates to the video resolutions. 9. The non-transitory machine-readable storage medium of claim 8 , wherein the identifying of the minimum bitrate for each of the video resolutions is further based on a cumulative distribution associated with the first bitrate point of each of the videos, and wherein the identifying of the maximum bitrate for each of the video resolutions is further based on a cumulative distribution associated with the threshold value of each of the videos. 10. The non-transitory machine-readable storage medium of claim 8 , wherein the operations further comprise: receiving, from the client device, a request for one of the videos; identifying an achievable bitrate associated with the client device; and transmitting a transcoding of the requested video based on the achievable bitrate of the client device and the minimum bitrate and maximum bitrate for one of the video resolutions. 11. The non-transitory machine-readable storage medium of claim 10 , wherein the achievable bitrate of the client device is between the minimum bitrate and the maximum bitrate for the one of the video resolutions and the achievable bitrate is based on video processing and bandwidth capabilities associated with the client device. 12. The non-transitory machine-readable storage medium of claim 10 , wherein the transmitting of the requested video based on the achievable bitrate of the client device and the minimum bitrate and the maximum bitrate for one of the video resolutions comprises identifying the transcoding of the requested video at a particular video resolution associated with the minimum bitrate and the maximum bitrate. 13. The non-transitory machine-readable storage medium of claim 10 , the operations further comprising: identifying a change in the achievable bitrate associated with the client device; and switching the transmitting of the requested video from the transcoding to a second transcoding based on the change in the achievable bitrate of the client device. 14. The non-transitory machine-readable storage medium of claim 13 , wherein the transcoding of the requested video is at a first bitrate and a first video resolution and the second transcoding of the requested video is at a second bitrate and a second video resolution, wherein the first bitrate is different than the second bitrate and the first video resolution is different than the second video resolution. 15. A system comprising: a memory; and a processor coupled with the memory and to: identify a plurality of videos; identifying a plurality of target video resolutions associated with the videos; identify a minimum bitrate for each of the target video resolutions based on a crossover point associated with the videos, wherein the crossover point is defined by a bitrate value where a quality of the videos at a first target video resolution that is upscaled to a second target video resolution is improved over a quality of the videos at the second target video resolution at bitrates below the bitrate value that defines the crossover point, the upscaling of the first target video resolution corresponding to converting the videos from the first target video resolution to the second target video resolution at a client device; identify a maximum bitrate for each of the target video resolutions based on a point of diminishing return that is defined by a second bitrate value where a rate of change of improving quality of the videos is below a threshold value; and assign the identified minimum bitrates and the maximum bitrates to the target video resolutions. 16. The system of claim 15 , wh

Assignees

Inventors

Classifications

  • Electricity · mapped topic

  • Channel allocation (H04N21/266 takes precedence); Bandwidth allocation (H04N21/24 takes precedence {; allocation of channels according to the instantaneous demands of the users in time-division multiplex systems H04J3/1682; admission control, resource allocation in open networks H04L12/5692; arrangements for maintenance or administration in data switching networks involving bandwidth and capacity management H04L41/0896; negotiating bandwidth in wireless networks H04W28/16}) · CPC title

  • by decomposing the content in the time domain, e.g. in time segments · CPC title

  • for generating different versions · CPC title

  • H04L65/604Primary

    Electricity · mapped topic

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 US9854020B1 cover?
A plurality of videos associated with a plurality of video resolutions may be received. A minimum bitrate may be identified for each of the video resolutions based on a first bitrate point associated with the videos where a quality of the videos at a first video resolution that is upscaled to a second video resolution is better than a quality of the videos at the second video resolution at bitr…
Who is the assignee on this patent?
Google Inc
What technology area does this patent fall under?
Primary CPC classification H04L65/604. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 26 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). 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).