×

Variable bit rate encoding

  • US 8,135,061 B1
  • Filed: 10/19/2006
  • Issued: 03/13/2012
  • Est. Priority Date: 10/19/2006
  • Status: Active Grant
First Claim
Patent Images

1. A system for processing video comprising:

  • a video segmentor configured to receive a source video and to split the source video into a plurality of segments;

    a bit rate allocator comprising a complexity estimator and an allocation logic, the bit rate allocator being configured to (i) receive the plurality of segments, (ii) generate complexity information for each of the plurality of segments, and (iii) generate a plurality of target bit rates corresponding to the plurality of segments by using the complexity information, wherein the plurality of segments has a plurality of first quality levels based on the complexity information;

    wherein the allocation logic is configured to adjust the plurality of first quality levels to a plurality of second quality levels based, at least in part, on a model of a streaming video system predicting that the streaming video system can stream a sequence of a plurality of encoded segments using the plurality of second quality levels;

    wherein adjusting the plurality of first quality levels to the plurality of second quality levels includes identifying a critical point in the sequence of the plurality of encoded segments to adjust the plurality of first quality levels up to the critical point, the critical point being where the model of the stream video system predicts that a constraint is most exceeded while streaming the sequence of the plurality of encoded segments using the plurality of first quality levels;

    wherein the plurality of target bit rates are based, at least in part, on the plurality of second quality levels;

    a first encoder configured to (i) receive the plurality of segments and the plurality of target bit rates, and (ii) encode each of the plurality of segments using one of the plurality of target bit rates to generate the plurality of encoded segments; and

    an output generator configured to receive the plurality of encoded segments and generate an encoded video.

View all claims
  • 4 Assignments
Timeline View
Assignment View
    ×
    ×