摘要:
Plural encoders operating in parallel to achieve a desired data rate have their respective outputs combined by an autonomously operating arrangement for transfer of data to a direct memory access arrangement from respective encoders in order in response to a signal asserted upon completion of encoding and output of encoded data corresponding to a predetermined portion of input data. Buffering of encoder output can be either internal or external to the encoders. Zero bytes which may be inherently generated at the beginning and end of an encoder output stream may be suppressed to improve encoded signal quality and efficiency.
摘要:
A technique for encoding macroblocks of a frame is provided which includes switching a coding decision for a macroblock from a non-intra decision to a skip macroblock decision when the absolute prediction error for the macroblock is less than a prediction error threshold and the magnitude of the motion vector for the at least one macroblock is less than a motion vector threshold. In one embodiment, the prediction error threshold is multiple programmable prediction error thresholds, which are for comparison with the absolute luminance and chrominance summation components and the maximum luminance and chrominance difference values. The motion vector threshold may be a preset value when the macroblock is to be predictive coded, and may be the magnitude of the motion vector of the previous macroblock when the macroblock is to be bi-directionally encoded.
摘要:
A control strategy is provided for dynamically encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel. The control strategy allows individual encode bit rates to be dynamically adjusted for each video data stream based in part on relative complexity of the multiple streams of video data, as well as fullness of compressed video data buffers and a channel buffer coupled between the encoders and the constant bit rate channel. The control strategy includes analyzing the multiple streams of video to determine relative complexity thereof, encoding the multiple streams of video frames in parallel, and dynamically adapting encoding of at least one stream of the video frames based on the relative complexity of the video frames. The bit rate for each stream of video frames is only changed at GOP boundaries, or if a scene change occurs. The calculated bit rate is preferably further modified based upon buffer fullness.
摘要:
A distributed control strategy is provided for dynamically encoding multiple streams of video data in parallel for multiplexing onto a constant bit rate channel. The control strategy is a single pass strategy which allows individual encode bit rates to be dynamically adjusted for each video data stream based in part on relative complexity of the multiple streams of video data, as well as fullness of compressed video data buffers coupled between the encoders and the constant bit rate channel. The control strategy includes encoding the multiple streams of video frames in parallel using multiple encoders, exchanging one or more statistics between the encode processes using an exchange interface, and dynamically adapting encoding of at least one stream of the video frames using the exchanged statistics based on relative complexity of the video frames.
摘要:
A technique is provided for encoding macroblocks of a frame of a sequence of video frames initially employing luminance data only to analyze temporal redundancy of the macroblocks within the frame. Upon deciding to code at least one macroblock as a non-intra macroblock, the technique includes considering whether to switch the coding decision for the at least one macroblock from non-intra to intra by evaluating chrominance data of the at least one macroblock. The evaluating of the chrominance data can include determining whether chrominance difference data, obtained by comparing chrominance values of a current macroblock with a reference macroblock, is greater than a user set chrominance difference threshold, and if so then the technique includes switching the macroblock coding decision. As a further qualification, the switching might occur only if the chrominance difference data is also greater than the corresponding luminance difference data.
摘要:
Method, system and computer program product are provided for adaptively encoding in hardware, software or a combination thereof a sequence of video frames in real-time. A first encoding subsystem is employed to analyze the sequence of video frames to derive information on at least one characteristic thereof, such as motion statistics, non-motion statistics, scene change statistics, or scene fade statistics. The gathered information may comprise either an intraframe characteristic or an interframe characteristic. A second encoding subsystem, coupled to the first encoding subsystem, encodes the sequence of video frames employing at least one controllable parameter. The second encoding subsystem dynamically adapts intraframe or interframe encoding of the sequence of video frames by adjusting the at least one controllable parameter used in the encoding process in response to the derived information from the first encoding subsystem.
摘要:
A method and system for encoding digital video picture data. In accordance with this method, the video picture data is partitioned into a group of blocks, at least some of those blocks are selected, one block at a time, and each of the selected blocks of data is encoded to form an encoded coefficient having an associated number of bits. The encoded coefficients are outputted, and an accumulated sum of the number of bits in the outputted encoded coefficients is kept. The outputting of the encoded coefficients is terminated at a defined time in order to prevent the accumulated sum from exceeding a given number.
摘要:
Simultaneous vertical spatial filtering and chrominance conversion is achieved with reduced data buffering and simplified filtering circuits by using a single filter stage and hybrid filter coefficients. Data latency is reduced and performance requirements are reduced while avoiding critical signal propagation paths. The filter and buffers are fully compatible with any scan format having consecutively presented lines of image data, including both progressive and interlaced scan formats.
摘要:
A technique is provided for adaptively encoding in hardware, software or a combination thereof a sequence of frames in real time, wherein one or more of the frames includes a random noise portion. The technique includes using statistics analysis to determine whether a current frame includes a random noise portion, and if so, to evaluate and dynamically encode each macroblock thereof based on activity level of the macroblock. Evaluating macroblock activity level includes determining whether its activity level exceeds a predefined threshold indicative of random noise. The macroblock is adaptively encoded by adjusting one or more coding parameters if the macroblock activity level is excessive and its target bitrate is low. For example, when the macroblock is within the random noise portion of the frame, the macroblock is biased towards being coded predictive and an adjusted quantization level is calculated to conserve bits used in encoding the macroblock, thereby moving encode bits from macroblocks within the random noise portion of the frame to macroblocks within the normal portion of the frame.
摘要:
Method, system and computer program product are provided for adaptively encoding in hardware, software or a combination thereof a series of still or partially still pictures using motion video encoding. A pre-encode statistics measurement unit is employed to derive statistics on each frame of the sequence of video frames to be encoded. The statistics are determinative of whether the frame comprises a still frame. If so, at least one controllable parameter to be used to encode the still frame is modified, and an encoding engine employs the at least one controllable parameter to encode the still frame so that pulsation artifacts are prevented between still frames of the series of still frames. Partial still picture encoding to prevent pulsation artifacts on a macroblock level is also addressed.