openharmony_ci d6ed8850e9 !8670 merge feature/mjpeg-decoder-refactor into master
feat(camera): 实现 USB 相机 MJPEG 解码功能. Co-authored-by: Agent

Created-by: zhouge941
Commit-by: zhouge941
Merged-by: openharmony_ci
Description: ## 变更说明
https://gitcode.com/openharmony/drivers_peripheral/issues/6613
### 核心功能
- **增加mjpeg驱动侧解码**
- **MJPEG 解码器独立模块化**: 将 MJPEG 解码功能从 V4L2 节点中提取为独立模块
- **双后端支持**: 支持 FFmpeg 和 Libyuv 两种解码后端,自动选择最优方案
- **完整 UT 测试覆盖**: 新增 18 个单元测试用例,包括功能测试、性能测试、边界测试

### 技术细节
- 使用 libjpeg-turbo 在内存中动态生成测试数据,无需外部文件
- 支持多分辨率测试(QCIF/QVGA/VGA/SVGA/HD720p)
- 优化 V4L2 设备管理,支持动态设备插拔

### 测试验证
-  MJPEG 解码器 UT 编译通过
-  参数化分辨率测试通过(VGA 640x480)
-  代码规范检查通过

### 相关文件
- `vdi_base/usb_camera/pipeline_core/src/mjpeg_decoder/` - MJPEG 解码器实现
- `test/ut/usb_camera/mjpeg_decoder/` - UT 测试套件

See merge request: openharmony/drivers_peripheral!8670
2026-04-03 10:39:24 +08:00
2023-10-31 09:42:18 +08:00
2026-03-24 21:20:36 +08:00
2026-01-29 15:08:32 +08:00
2026-02-13 16:05:19 +08:00
2026-02-03 18:58:28 +08:00
2026-04-02 14:44:40 +08:00
1
2026-02-09 17:30:46 +08:00
2026-03-13 14:53:43 +08:00
2026-02-25 09:50:39 +08:00
2023-04-24 09:15:59 +00:00
2026-03-07 16:37:58 +08:00
2026-01-30 10:51:22 +08:00
api
2025-04-28 19:10:47 +08:00
2026-03-07 16:37:58 +08:00
2025-09-16 15:18:03 +08:00
2026-03-07 16:37:58 +08:00
2026-01-29 15:08:32 +08:00
2026-03-26 19:16:14 +08:00
2026-01-27 16:22:57 +08:00
1
2026-04-01 11:19:07 +08:00
2026-01-19 10:34:23 +08:00
2026-03-31 21:00:37 +08:00
2026-01-29 15:08:32 +08:00
2026-04-01 15:27:01 +08:00
2024-08-14 11:23:23 +08:00
2022-10-26 09:18:26 +08:00
2023-04-24 09:15:59 +00:00

Peripheral

Introduction

This repository stores the hardware driver interfaces (HDIs), hardware abstraction layer (HAL) implementation, driver models, and test cases related to drivers of peripherals. The directory is structured based on the driver modules. For details about each driver module, see the readme file in the sub-directory of each module.

Directory Structure

The code directory of this repository is /drivers/peripheral, which contains the following sub-directories:

  • audio: This sub-directory stores definitions of audio HDIs that can be used to manage loading and unloading of sound card drivers, create audio renderers and capturers, select an audio scene, set audio properties, set the audio volume, and start or stop audio playback and recording. For details, see the readme file in the audio sub-directory.

  • codec: This sub-directory stores definitions of codec HDIs, which allow upper-layer services to perform media codec-related operations. For details, see the readme file in the codec sub-directory.

  • display: This sub-directory stores definitions of display HDIs and their default implementations. These HDIs allow upper-layer graphics services to manage display layers, manage memory of the display module, and implement hardware acceleration. For details, see the readme file in the display sub-directory.

  • format: This sub-directory stores definitions of format HDIs, allowing upper-layer services to multiplex and demultiplex media files. For details, see the readme file in the format sub-directory.

  • input: This sub-directory stores definitions and implementation code of input HDIs, allowing upper-layer input services to perform operations for input devices, including managing input devices, controlling service flows, and reporting input events. For details, see the readme file in the input sub-directory.

  • sensor: This sub-directory stores definitions and implementation code of sensor HDIs, including obtaining sensor information, enabling or disabling a sensor, subscribing to or unsubscribing from sensor data, and setting sensor options. For details, see the readme file in the sensor sub-directory.

  • wlan: This sub-directory stores definitions and implementation code of WLAN HDIs, including creating and stopping a channel between the HAL and the WLAN driver and obtaining the WLAN features supported by the device. For details, see the readme file in the wlan sub-directory.

  • usb: This sub-directory stores definitions and implementation code of the USB DDK, including device management, device configuration, and data read/write on the USB host and USB devices. For details, see the readme file in the usb sub-directory.

  • camera: This sub-directory stores definitions and implementation code of camera HDIs, including HDI implementation for the upper-layer camera service and management of camera hardware devices. For details, see the README file in the camera sub-directory.

  • ril: This sub-directory stores definitions and implementation code of Ril HDIs, including service processing capabilities related to the call, SIM card, SMS/MMS, radio, and cellular data services. For details, see the readme file in the ril sub-directory.

Repositories Involved

Driver subsystem

drivers_framework

drivers_adapter

drivers_adapter_khdf_linux

drivers_peripheral

S
Description
暂无描述
Readme BSD-3-Clause 110 MiB
Languages
C++ 73.7%
C 26.2%