Budget encoding

US9749713B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9749713-B2
Application numberUS-58021209-A
CountryUS
Kind codeB2
Filing dateOct 15, 2009
Priority dateOct 15, 2009
Publication dateAug 29, 2017
Grant dateAug 29, 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 method includes receiving streaming media data having a media frame and a frame index referencing the media frame; allocating a frame budget for an output media frame by estimating a frame size of the output media frame based on the frame index; generating the output media frame in real-time by processing the media frame based on first processing parameters and, if the allocated frame budget is greater than a frame size of the processed media frame, padding the processed media frame; and providing the output media frame.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for transcoding streaming video data, the method comprising: receiving, from a data network, encoded streaming media data including a plurality of media frames and a frame index specifying an original frame size and a byte offset of individual encoded frames of the plurality of media frames; allocating a frame budget for an output media frame to generate an output frame index, by estimating a frame size of the output media frame based on a respective original frame size in the frame index; generating the output media frame in real-time by processing the media frame based on first processing parameters; in response to the allocated frame budget being greater than a frame size of the processed media frame, padding the processed media frame; in response to the allocated frame budget being less than a frame size of the processed media frame, determining second processing parameters based on the frame budget and the first processing parameters, re-processing the media frame based on the second processing parameters and, in response to the allocated frame budget being greater than a frame size of the re-processed media frame, padding the re-processed media frame; and providing the output media frame. 2. The method of claim 1 , further comprising: extracting the frame index referencing media frames presented in the streaming media data; and generating, before the output media frames are generated, the output frame index referencing the output media frames based on the allocated frame budgets and the frame index referencing the plurality of media frames. 3. The method of claim 1 , further comprising: retrieving the media frame from the streaming media data based on the frame index; decoding the media frame; and obtaining the first processing parameters based on the decoded media frame. 4. The method of claim 3 , wherein obtaining the first processing parameters includes obtaining one or more first quantization parameters used for quantizing the media frame. 5. The method of claim 1 , wherein determining the second processing parameters includes determining one or more second quantization parameters for quantizing the media frame. 6. The method of claim 1 , further comprising: compressing the output media frame using a lossless compression technique before a user device receives the output media frame. 7. The method of claim 6 , further comprising: allocating the frame budget for the output media frame based on awareness of the compressing such that the chance for the processed media frame to fit within the frame budget is improved. 8. A device coupled to receive streaming media data having a plurality of media frames and a frame index specifying an original frame size and a byte offset of individual encoded frames of the plurality of media frames, the device comprising: a frame budget algorithm module configured to allocate a frame budget for an output media frame to generate an output frame index, by estimating a frame size of the output media frame based on a respective original frame size of a respective encoded frame in the received frame index; a processing algorithm module configured to determine first processing parameters based on the frame budget and the media frame, and determine, if the output frame does not fit within the frame budget, second processing parameters based on the frame budget and the first processing parameters; a processing module configured to process the media frame based on the first processing parameters; a frame padder configured to pad the processed media frame to generate the output media frame; and a frame writer configured to provide the output media frame. 9. The device of claim 8 , further comprising: a media reader configured to receive the frame index referencing media frames presented in the streaming media data. 10. The device of claim 9 , wherein each output media frame has a corresponding frame budget. 11. The device of claim 8 , further comprising: an output-frame-index generator configured to generate, before the output media frames are generated, the output frame index referencing the output media frames based on the allocated frame budgets and the frame index referencing the plurality of media frames. 12. The device of claim 11 , the output-frame-index generator is further configured to: update the output frame index based on configuration information of the encoder. 13. The device of claim 8 , further comprising: a decoder configured to decode the media frame, and obtain information from the decoded media frame to facilitate the processing algorithm module to determine the first processing parameters. 14. The device of claim 8 , the processing algorithm module is further configured to: determine one or more first quantization parameters for quantizing the media frame. 15. The device of claim 8 , the processing algorithm module is further configured to: determine one or more second quantization parameters for quantizing the media frame. 16. The device of claim 8 , the processing module is further configured to: re-processing the media frame based on the second processing parameters such that the re-processed media frame fits within the frame budget. 17. A non-transitory computer readable medium storing instructions that, when executed, cause a computer to perform a method for transcoding streaming video data, the method, the method comprising: receiving, from a data network, encoded streaming media data including a plurality of media frames and a frame index specifying an original frame size and a byte offset of individual encoded frames of the plurality of media frame; allocating a frame budget for an output media frame to generate an output frame index, by estimating a frame size of the output media frame based on a respective original frame size in the frame index; generating the output media frame in real-time by processing the media frame based on first processing parameters; if the allocated frame budget is greater than a frame size of the processed media frame, padding the processed media frame; if the allocated frame budget is less than a frame size of the processed media frame, determining second processing parameters based on the frame budget and the first processing parameters, re-processing the media frame based on the second processing parameters and, if the allocated frame budget is greater than a frame size of the re-processed media frame, padding the re-processed media frame; and providing the output media frame.

Assignees

Inventors

Classifications

  • in combination with predictive coding · CPC title

  • Quantisation · CPC title

  • characterised by syntax aspects related to video coding, e.g. related to compression standards · CPC title

  • by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer · CPC title

  • involving a specific file format, e.g. MP4 format · 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 US9749713B2 cover?
A method includes receiving streaming media data having a media frame and a frame index referencing the media frame; allocating a frame budget for an output media frame by estimating a frame size of the output media frame based on the frame index; generating the output media frame in real-time by processing the media frame based on first processing parameters and, if the allocated frame budget …
Who is the assignee on this patent?
Melnyk Miguel, Kidd Robert, Sestrich Joseph, and 5 more
What technology area does this patent fall under?
Primary CPC classification H04N21/85406. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Aug 29 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). 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).