From 81aabdd9c784022be9aad0833c911f24c8f01f1b Mon Sep 17 00:00:00 2001 From: owen_creeper Date: Tue, 20 Jan 2026 16:14:02 +0800 Subject: [PATCH] fix readme Signed-off-by: owen_creeper --- README.md | 2 +- README_zh.md | 22 +++++++++++++--------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index d034c75..d5dce07 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# av_codec +# midi_framework #### Description {**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**} diff --git a/README_zh.md b/README_zh.md index 2e99e98..31be960 100644 --- a/README_zh.md +++ b/README_zh.md @@ -12,8 +12,8 @@ midi_framework 部件是一个可选系统能力,应用需要通过 SystemCapa ## 系统架构 -![midi_framework部件架构图](figures/zh-cn_image_midi_framework.png)
-**图 1** OpenHarmony MIDI 服务架构图 +
![midi_framework部件架构图](figures/zh-cn_image_midi_framework.png)

+
**图 1** OpenHarmony MIDI 服务架构图
### 模块功能说明 @@ -55,8 +55,8 @@ midi_framework 部件是一个可选系统能力,应用需要通过 SystemCapa MIDI 服务采用 **“按需启动、自动退出”** 的策略,以降低系统资源消耗。 -![服务按需启动与生命周期管理流程图](figures/zh-cn_image_midi_framework_life_cycle.png)
-**图 2** 服务按需启动与生命周期管理流程图 +
![服务按需启动与生命周期管理流程图](figures/zh-cn_image_midi_framework_life_cycle.png)

+
**图 2** 服务按需启动与生命周期管理流程图
1. **拉起服务**: * 当 **MIDI APP** 调用 `OH_MIDIClientCreate` 时,**MIDI 客户端实例管理** 模块会向 **SAMgr 服务** 查询 MIDI 服务代理。 @@ -72,8 +72,8 @@ MIDI 服务采用 **“按需启动、自动退出”** 的策略,以降低系 设备连接流程根据物理链路(USB/BLE)的不同,涉及不同的外部模块交互。 -![设备发现与连接管理流程图](figures/zh-cn_image_midi_framework_device_manage.png)
-**图 3** 设备发现与连接管理流程图 +
![设备发现与连接管理流程图](figures/zh-cn_image_midi_framework_device_manage.png)

+
**图 3** 设备发现与连接管理流程图
* **USB MIDI 设备流程**: 1. **物理接入**: USB MIDI 键盘/合成器插入,**USB 驱动** 识别硬件并上报给 **USB 服务**。 @@ -93,8 +93,8 @@ MIDI 服务采用 **“按需启动、自动退出”** 的策略,以降低系 数据传输链路涉及跨进程通信与协议适配。 -![端口管理与数据传输流程图](figures/zh-cn_image_midi_framework_data_transfer.png)
-**图 4** 端口管理与数据传输流程图 +
![端口管理与数据传输流程图](figures/zh-cn_image_midi_framework_data_transfer.png)

+
**图 4** 端口管理与数据传输流程图
1. **建立通路**: * **MIDI APP** 调用 `OH_MIDIOpenInputPort/OutputPort`。 @@ -328,7 +328,10 @@ void MIDIDemo() { ## 约束 * **硬件与内核要求** - * **USB MIDI**:OpenHarmony开发设备必须支持 USB Host 主机模式,基于当前 MIDI HDI 标准驱动依赖 alsa-libs 的实现,当前仅支持符合 **USB Audio Class (UAC)** 规范的通用免驱(Class Compliant)设备(如 USB MIDI 键盘、电子鼓)。 + * **USB MIDI**:OpenHarmony 开发设备必须支持 **USB Host 主机模式**。由于当前 MIDI HDI 驱动依赖 alsa-libs 实现,因此未开启ALSA内核选项的设备无法使用 USB MIDI 相关功能。 + * 容易遇到的问题 + * rk3568 开发板默认配置未开启 ALSA 支持,因此需参考 [alsa-libs 如何使用](https://gitcode.com/openharmony/third_party_alsa-lib#5-如何使用) 进行内核编译开关配置,重新编译并刷入内核后方可使用 USB MIDI 功能。目前仅支持符合 **USB Audio Class (UAC)** 规范的通用设备(如 USB MIDI 键盘、电子鼓)。 + * 由于编译工具更新了独立编译规范,Audio HDF 驱动层代码可能出现直接依赖其他组件(即//device/board目录下)代码文件的问题,如果想测试,可以手动将对应c文件拷贝到驱动层路径进行编译。 * **BLE MIDI**:OpenHarmony开发设备必须支持 BLE(Bluetooth Low Energy)协议。 * **驱动开发状态** @@ -343,4 +346,5 @@ void MIDIDemo() { [媒体子系统](https://gitcode.com/openharmony/docs/blob/master/zh-cn/readme/媒体子系统.md)
[drivers_interface](https://gitcode.com/openharmony/drivers_interface)
[drivers_peripheral](https://gitcode.com/openharmony/drivers_peripheral)
+[alsa-libs](https://gitcode.com/openharmony/third_party_alsa-lib)
**[midi_framework](https://gitcode.com/openharmony/midi_framework-sig)** \ No newline at end of file