H264 HP DECODER
CODEC OVERVIEW
H264 is a widely accepted video coding standard that was jointly developed by Video Coding Experts Group (VCEG) of the ITU-T and the Moving Picture Experts Group (MPEG) of ISO/IEC. It uses state-of-the-art coding tools and provides enhanced coding efficiency for a wide range of applications, including video telephony, video conferencing, TV, storage, streaming video and many others. H.264 standard defines several profiles and levels that specify restrictions on the bit stream and hence limits the capabilities needed to decode the bit streams. High profile improves objective compression quality (especially HD video) and also improves subjective compression capability with support for quantization weighting matrices with addition of lower computational complexity.
SALIENT FEATURES
- Based on the ISO/IEC 14496-10 standard
- Optimized ASM/C implementation.
- Re-entrant implementation
- C-callable APIs
- Up to level 5 features of high profile supported.
- Progressive, interlaced, Picture Adaptive Frame Field (PicAFF), and Macro Block Adaptive Frame Field (MBAFF) type picture decoding supported.
- Multiple slices and multiple reference frames supported.
- CAVLC and CABAC decoding supported
- All intra-prediction and inter-prediction modes supported.
- Block sizes of 4×4 and 8×8 supported.
- Supports scaling matrices.
- Frame cropping supported.
- Frame width of the range of 32 to 1920 pixels supported.
- Byte-stream syntax for the input bit stream supported.
- Parsing of Supplemental Enhancement Information (SEI) and Video Usability Information (VUI) supported
- Long term reference frame and adaptive reference picture marking supported.
- Gaps in the frame number supported.
- Skipping of non reference pictures supported
- Configurable delay for display of frames supported.
- Separate quantization parameter for CB and CR chroma components supported.
- Outputs are available in YUV 420 planar formats.
- Compliant with xDM 1.0 IVIDDEC2 APIs.
TESTING FEATURES
- Implementation is tested for all JVT test streams
- Implementation is tested for wide range of non-standard test vectors for all levels
- Tested with error streams. Corrupted streams includes NAL, slice, MB level data & header corruptions.
- Tested with 3gpp error pattern corrupted streams.
- Tested for resource usage (DMA channels, params etc)
- Tested for illegal memory access by the module.
- Module is fully interruptible.
- Tested for compliance with register preservation requirements
- Tested for Input buffer corruption
- Tested for I/O buffer alignment requirements
- Tested for multi-instance implementation.
- Tested with scratch contamination at frame boundaries
- Tested for 100% code coverage
- Range validation of all API parameters
- Validated on eInfochips C6472EVM.