摘要:
Some embodiments provide a method for modifying a composite display of a first mobile device that is engaged in a video conference with a second device. The method presents, on the first device, the composite display having a first video captured by the first device and a second video captured by the second device. The method receives, at the first device, an input for modifying the composite display during the video conference. The method modifies the composite display based on the received input.
摘要:
Techniques for encoding data based at least in part upon an awareness of the decoding complexity of the encoded data and the ability of a target decoder to decode the encoded data are disclosed. In some embodiments, a set of data is encoded based at least in part upon a state of a target decoder to which the encoded set of data is to be provided. In some embodiments, a set of data is encoded based at least in part upon the states of multiple decoders to which the encoded set of data is to be provided.
摘要:
The rate controller in a digital video encoding system is responsible for allocating a bit budget for video frames to be encoded. The rate controller considers many different factors when determining the frame bit budget. One of the factors considered is the complexity of the frames being compressed. Occasionally there will be a very complex frame that is not representative of the overall video frame sequence. Such a rare complex frame may cause a disproportionate affect on the bit budget allocation. The system of the present invention limits the amount that a very complex frame can change the bit budget allocation. The rate controller of the present invention also includes a relaxation factor. The relaxation factor allows a user to determine if the rate controller should strictly allocate its bit budget or relax its standards such that the rate controller may not be so conservative when allocating bits to frames.
摘要:
This invention is directed to a video bit rate control method for encoding a video sequence based on a decoder buffer condition and a group of picture (GOP) size limitation of the encoded video sequence. The method includes iteratively adjusting a quantization parameter and/or a masking strength parameter and encoding the video sequence at the adjusted parameters until the buffer condition and GOP size limitation are satisfied. The method makes the above adjustments to avoid buffer underflow and GOP oversizing.
摘要:
A rate control system is disclosed for video coding applications. The rate controller assigns a quantization parameter for video data in a picture in response to complexity indicators indicative of spatial complexity, motion complexity and/or bits per pel of the picture. A virtual buffer based quantizer parameter is proposed based on a virtual buffer fullness analysis and a target rate estimate, which is derived from the complexity indicators. A second quantizer parameter is proposed from a linear regression analysis of quantizer parameters used to code previously coded pictures of similar type (e.g., I pictures, P pictures or B pictures). A coding policy decision unit defines a final quantizer parameter from a comparison of the two proposed quantizer parameters.
摘要:
Methods, systems, and apparatus are presented for reducing distortion in an image, such as a video image. A video image can be captured by an image capture device, e.g. during a video conferencing session. Distortion correction processing, such as the application of one or more warping techniques, can be applied to the captured image to produce a distortion corrected image, which can be transmitted to one or more participants. The warping techniques can be performed in accordance with one or more warp parameters specifying a transformation of the captured image. Further, the warp parameters can be generated in accordance with an orientation of the image capture device, which can be determined based on sensor data or can be a fixed value. Additionally or alternatively, the warp parameters can be determined in accordance with a reference image or model to which the captured image should be warped.
摘要:
Method For Implementing A Quantizer In A Multimedia Compression And Encoding System is disclosed. In the Quantizer system of the present invention, several new quantization ideas are disclosed. In one embodiment, adjacent macroblocks are grouped together into macroblock groups. The macroblock groups are then assigned a common quantizer value. The common quantizer value may be selected based upon how the macroblocks are encoded, the type of macroblocks within the macroblock group (intra-blocks or inter-blocks), the history of the motion vectors associated with the macroblocks in the macroblock group, the residuals of the macroblocks in the macroblock group, and the energy of the macroblocks in the macroblock group. The quantizer value may be adjusted in a manner that is dependent on the current quantizer value. Specifically, if the quantizer value is at the low end of the quantizer scale, then only small adjustments are made. If the quantizer value is at the high end then larger adjustments may be made to the quantizer. Finally, in one embodiment, the quantizer is implemented along with an inverse quantizer for efficient operation.
摘要:
Some embodiments of the invention provide a method of performing a Discrete Cosine Transform (“DCT”) encoding or decoding coefficients of a data array by (1) multiplying the coefficients by a scalar value before the encoding or decoding, and then (2) dividing the encoded or decoded coefficients by the scalar value. When used in conjunction with fixed-point arithmetic, this method increases the precision of the encoded and decoded results. In addition, some embodiments provide a method of performing a two-dimensional (2D) Inverse Discrete Cosine Transform (“iDCT”). This method splits a pre-multiplication operation of the iDCT into two or more separate stages. When used in conjunction with fixed-point arithmetic, this splitting increases the precision of the decoded results of the iDCT.
摘要:
A system and method using edge processing to remove blocking artifacts comprises an edge processor having an image converter for building an edge representation of a received image, a statistics analyzer for compiling a histogram containing edge intensities of the edge representation, a reference calculator for using the histogram to compute reference values corresponding to the blocking artifacts and an artifact remover for identifying and removing the blocking artifacts using the computed reference values.
摘要:
Decoding and encoding of variable length data words and data strings is accelerated by testing for and processing more than one word or string per encoding or decoding cycle. In an encoding scheme wherein fixed length data words are encoded into variable length data strings, decoding is carried out by first receiving a data stream having a plurality of encoded data strings contained therein, and then testing at least a portion of the data stream to determine whether the portion contains one of a number of selected sets of multiple data strings. If the portion of the data stream contains one of the selected sets of multiple data strings, the multiple data strings are decoded into a corresponding set of multiple data words. This decoding procedure allows a plurality of encoded data strings to be decoded in a single decoding cycle. The procedure may be implemented using either a single lookup table or a set of split-level lookup tables. The above procedure may also be applied to an encoding scheme wherein variable length data words are transformed into fixed length encoded data strings to encode the variable length data words. Furthermore, the above procedure may be applied to an encoding scheme wherein variable length data words are transformed into variable length data strings to both encode and decode the variable length data words and data strings.