MPEG-4 SP/ASP Decoder, Blackfin
The ADI MPEG-4 SP/ASP Decoder library for the Blackfin processor implements an MPEG-4 video decoder, which is compliant with the INTERNATIONAL STANDARD ISO/IEC14496-2, Information technology — Coding of audio-visual objects — Part 2: Visual, Third edition 2004-06-01.
- Profile: Simple Profile and Advanced Simple Profile (GMC not supported)
- Frame Types Supported: I, P, B.
- Output mode: NTSC/PAL or YUV4:2:0 planar.
- Error Resilience Tools: RVLC and VLD supported.
- Level: Up to L3 inclusive.
- Number of Reference Frames: 2.
- Entropy Decoder: VLD and RVLD.
- Motion Vector: 1 to 4 MV per Macro-block (All compensation mode supported for B frames).
- Motion Vector Accuracy: Half pel and Quarter pel.
- Release format: Object code module with C source wrapper.
- Input format: Elementary bit stream of MPEG-4 SP/ASP object (ISO/IEC 14496-2).
- Output format: ITU-R BT.656 format or YUV4:2:0 planar format when the default code is used and RGB565, RGB888 or ITU-R BT.656 format when the custom code (external post-processing API) is used.
- Frame Rate: All frame rates specified by SP and ASP standards.
- Bit Rate: All bit rates specified by SP and ASP standards.
- Multi-channel: Fully re-entrant at frame level and multi-instancing capable.
- Color Conversion using external post-processing API: Example code for RGB565, RGB888 and ITU-R BT.656 color conversion. This has a great advantage of reducing EBIU bandwidth for the transfer of YUV420 data.
- Scalar - Support for scalar code using custom post-processing API.
- Timestamp - Support for accepting the timestamp from the application. The decoder will re-order it in the display format and return the same to the application.
The code has been implemented using Instruction and Data cache. To optimize video decoding performance, internal SRAMs for Program and Data memory and Memory DMA are also utilized effectively.
|Code memory (KB)||Data RAM (MB)||L3 Memory (MB)||Output Buffer (MB)||MIPs||Test Case Description|
|ASP Average||ASP Moving Average Peak|
|99.8||18.46||1.86||2.06||33||48||QCIF, 384Kbps, 30fps|
|99.8||18.46||1.86||2.06||115||169||CIF, 1000Kbps, 30fps|
|99.8||18.46||1.86||2.06||380||537||VGA, 4 Mbps, 30fps|
- MIPS measured using different bit rates and resolution - bit rates of 384Kbps, 30 fps, 176x144 (QCIF) size sequence, 1.0Mbps, 30 fps, 352x288 (CIF) size sequence and 4.0Mbps, 30 fps, 640x480 (VGA) size sequence, ITU-R BT.656 output.
- Measurements done with CAS =3 for SDRAM, CCLK =594, SCLK =118.8 for ADSP-BF533.
- NTSC format, optimal memory layout on ADSP-BF533 processor, Advanced Simple Profile.
- Data cache and instruction cache are enabled. The cache is set in "write back" and "large cache" (DCBS=1) mode. Memory DMA is used.
- Code memory includes all the codes related to the library including 16KB of ICache.
- "Data RAM for L1" is for one instance, includes Stack, Scratch, Instance/Stage and do not include 32KB of DCache.
- "Data RAM for L3" is for one instance for a D1 frame including frame buffers for the instance.
- "Output Buffer" indicates the minimum memory (two PAL frame) required in the settings mentioned above. This is because PAL frame size is bigger than NTSC.
- 1 MB = 1024 KiB; 1 KiB = 1024 Bytes.
- MIPS number is quite similar for ADSP-BF527/BF561/BF609 processors.
- Windows XP Professional SP3 (32-bit only).
- Windows Vista Business/Enterprise/Ultimate SP2 (32-bit only). It is recommended to install the software in a non-UAC-protected location.
- Windows 7 Professional/Enterprise/Ultimate (32 and 64-bit). It is recommended to install the software in a non-UAC-protected location.
- Minimum of 2 GHz single core processor, 3.3 GHz dual core is recommended.
- Minimum of 1 GB memory (RAM), 4 GB is recommended.
- Minimum of 2 GB hard disk (HDD) space is required.
- CrossCore® Embedded Studio for Analog Devices Processors.