Abstract:
Presented herein are system(s), method(s), and apparatus for AC coefficient prediction. In one embodiment, there is presented a method for predicting AC coefficients for a macroblock. The method comprises determining whether a particular block is predicted from a top neighboring block or a left neighboring block; retrieving from a buffer, data from the top neighboring block or left neighboring block from which the particular block is predicted; and writing data from the particular block to the buffer.
Abstract:
Presented herein are system(s), method(s), and apparatus for DC coefficient prediction. In one embodiment, there is presented a method for predicting coefficients for a macroblock. The method comprises providing at least one coefficient prediction direction for at least one neighboring block of a particular block for predicting AC coefficients of the particular block; predicting a DC coefficient for the particular block; and overwriting a DC coefficient for a neighboring block of the particular block.
Abstract:
Presented herein is a run-level split FIFO. According to one embodiment of the present invention, there is presented a method for inverse quantizing. The method comprising receiving a data word; detecting whether the data word comprises a command or run-level data; storing the command, if the data word comprises a command; and processing the run-level data, if the data word comprises run-level data.
Abstract:
Video coding tree sub-block splitting. A parser and treeblock splitter is implemented for adaptive partitioning of treeblocks (TBs) into various respective sub-treeblocks (STBs). Such adaptation may be tailored for effectuating parallel processing in accordance with video decoding. Different respective decoding engines may each individually and respectively also perform further partitioning of the STBs into sub-STBs as well. Such adaptation of respective STB size and/or sub-STB size may be made based on local and/or remote consideration(s). For example, adaptation may be made based upon communication link and/or channel conditions, a remote characteristic (e.g., associated with a source device and/or destination device), a local characteristic (e.g., associated with operations and/or processing performed locally within a given device), and/or any other type of consideration. Different respective portions of a video signal may be processed using different respective sized STBs/sub-STBs (and different respective engines may also employ different respective sized STBs/sub-STBs).
Abstract:
Presented herein is a dual context audio parser. A header of the audio frame is provided for parsing, the header forming a portion of a particular packet. A first portion of the audio frame is provided for parsing, the first portion of the audio frames being stored in a memory. A second portion of the audio frame is provided for parsing, the second portion of the audio frame forming another portion of the particular packet, after the first portion is parsed.
Abstract:
Presented herein is a unified architecture for inverse scanning according to a plurality of scanning schemes. In one embodiment, there is presented a method for decoding video data. The method comprises receiving frequency coefficients; determining a scanning scheme associated with the frequency coefficients; receiving scaling factors associated with the frequency coefficients; ordering the scaling factors according to a first scanning scheme, wherein the scanning scheme associated with the frequency coefficients is the first scanning scheme; and ordering the scaling factors according to a second scanning scheme, wherein the scanning scheme associated with the frequency coefficients is the second scanning scheme.
Abstract:
Presented herein are optimized single inverse quantization engines for a plurality of standards. In one embodiment, there is presented a system for inverse quantizing quantized frequency coefficients. The system comprises an inverse quantizer for inverse quantizing video data encoded in accordance with a first encoding standard and for inverse quantizing video data encoded in accordance with a second encoding standard. In another embodiment, there is presented a decoder for decoding video data. The decoder comprises an inverse quantizer operable to inverse quantize video data encoded in accordance with a first encoding standard and for inverse quantizing video data encoded in accordance with a second encoding standard.
Abstract:
Aspects of the present invention may be found in a more efficient system and method of implementing Huffman decoding when audio is encoded or decoded using MPEG1 Layer 3 (MP3) or MPEG Advanced Audio Coding (AAC). Various aspects of the invention employ a unified architecture in the implementation of a Huffman decoder. Use of the unified architecture reduces the memory required to implement both MPEG1 Layer 3 (MP3) and MPEG Advanced Audio Coding (AAC) algorithms.
Abstract:
Presented herein is a direct memory access engine for providing data words in reverse order. The data words are fetched in batches comprising a predetermined number of data words starting from the last data word and proceeding to the first data word. The batches are stored in a local buffer. The contents of the local buffer are transmitted in reverse order. A set of multiplexers reverses the bit positions of the words in the local buffer.
Abstract:
Video coding tree sub-block splitting. A parser and treeblock splitter is implemented for adaptive partitioning of treeblocks (TBs) into various respective sub-treeblocks (STBs). Such adaptation may be tailored for effectuating parallel processing in accordance with video decoding. Different respective decoding engines may each individually and respectively also perform further partitioning of the STBs into sub-STBs as well. Such adaptation of respective STB size and/or sub-STB size may be made based on local and/or remote consideration(s). For example, adaptation may be made based upon communication link and/or channel conditions, a remote characteristic (e.g., associated with a source device and/or destination device), a local characteristic (e.g., associated with operations and/or processing performed locally within a given device), and/or any other type of consideration. Different respective portions of a video signal may be processed using different respective sized STBs/sub-STBs (and different respective engines may also employ different respective sized STBs/sub-STBs).