### DM365 开发板资料详解:Sequential JPEG 解码器功能及限制
#### 概述
本资料针对 DM365 开发板上的 Sequential JPEG 解码器进行了详细介绍。该解码器支持多种输入格式,并提供了多种配置选项,旨在满足不同应用场景的需求。此文档将深入探讨该解码器的主要特点、支持的功能以及一些限制条件。
#### 主要特点
- **eXpressDSP™ Digital Media (XDM 1.0)**:该解码器遵循 eXpressDSP™ Digital Media 1.0 规范,确保与平台的兼容性。
- **旋转和支持**: 支持图像旋转(90°、180°、270°),并支持解码区域选择。
- **接口**: 支持 IIMGDEC1 接口和 IRES 接口单独使用,但不支持同时使用。
- **环形缓冲区**: 采用环形缓冲区配置位流缓冲区,以减少缓冲区大小需求。
- **操作系统**: 已在 MontaVista® Linux® 5.0 上验证。
- **多实例支持**: 支持多个 JPEG 解码器实例,且可与其他 DM365 代码一起运行。
#### 功能支持
- **基线顺序过程**: 支持基线顺序处理,但存在以下限制:
- 不支持非交错扫描。
- 仅支持 1 和 3 组件。
- Huffman 表和量化表对于 U 和 V 组件必须相同。
- 最多支持四个 AC 和 DC DCT 系数表(每个两组)。
- **输出格式**:
- YUV 4:2:2 交错数据作为输出。
- YUV 4:2:0 半平面(NV12 格式,即 Y 平面,CbCr 交错)数据作为输出。
- **输入格式**:
- 支持 YUV 4:2:0、YUV 4:2:2、YUV 4:4:4、交错 YUV 4:2:2 以及灰度图(8x8 像素 MCU)。
- 支持 YUV 4:2:0、YUV 4:2:2 和 YUV 4:4:4 的平面格式。
- **量化表格**: 支持 8 位量化表格。
- **帧级解码**: 支持帧级别的图像解码。
- **分辨率**: 支持最高可达 (水平 MCU 大小 * 1024) * (垂直 MCU 大小 * 1024) 像素的图像解码。理论上最大值为 64 M 像素,但实际测试仅达到 64 M 像素以下。
#### 限制条件
- **扩展 DCT 基于的过程**: 不支持扩展 DCT 基于的过程。
- **无损处理**: 不支持无损处理。
- **分层处理**: 不支持分层处理。
- **渐进扫描**: 不支持渐进扫描。
- **特定输入格式**: 不支持 YUV 4:1:1 输入格式或灰度图(16x16 像素 MCU)。
- **解码图像宽度**: 不支持小于 64 像素的解码图像宽度。
- **解码图像高度**: 不支持小于 32 像素的解码图像高度。
- **源图像**: 不支持 12 位每样本的源图像。
- **内存限制**: 如果解码器内存和 I/O 缓冲区需求超过 DDR 内存可用性,则可能需要使用环形缓冲区和切片模式解码来处理更高分辨率的图像。
#### 结论
该 Sequential JPEG 解码器为 DM365 开发板提供了一种高效、灵活的图像解码解决方案。它不仅支持多种输入格式,还具有强大的配置选项,使得开发者可以根据具体应用场景进行定制化设置。然而,需要注意的是,该解码器在某些方面存在一定的限制,开发者在使用时需根据这些限制进行适当的调整。通过合理利用该解码器的特点和功能,可以有效提高基于 DM365 开发板的 IP 摄像机等网络监控应用的性能。
1