• Home
Name Date Size #Lines LOC

..--

AppScope/22-Oct-2025-108104

entry/22-Oct-2025-2,5982,317

hvigor/22-Oct-2025-2221

screenshots/device/22-Oct-2025-

.gitignoreD22-Oct-2025119 1111

README.mdD22-Oct-20255 KiB9475

build-profile.json5D22-Oct-20251.1 KiB4342

hvigorfile.tsD22-Oct-2025160 31

hvigorwD22-Oct-20251.4 KiB4928

hvigorw.batD22-Oct-20251.5 KiB6547

oh-package.json5D22-Oct-2025837 2826

ohosTest.mdD22-Oct-20254.7 KiB3125

README.md

1# 音频管理
2
3### 介绍
4
5本示例主要展示了音频低时延录制和播放,AudioVivid音乐播放的相关功能:<br>
6    1. [低时延录制](https://gitee.com/openharmony/docs/blob/OpenHarmony-4.0-Release/zh-cn/application-dev/media/using-ohaudio-for-recording.md)。<br>
7    2. [低时延播放](https://gitee.com/openharmony/docs/blob/OpenHarmony-4.0-Release/zh-cn/application-dev/media/using-ohaudio-for-playback.md)。<br>
8    3. [AudioVivid播放](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/media/audio/using-ohaudio-for-playback.md).
9
10### 效果预览
11
12| 主页                                       | 录制页面                                                  |
13|------------------------------------------|-------------------------------------------------------|
14| ![Index](screenshots/device/index.jpg)   | ![PreferOutputDevice](screenshots/device/record.jpeg) |
15| 播放页面                                     | AudioVivid播放页|
16| ![Focus](screenshots/device/play.jpeg) |![AudioVivid](screenshots/device/AudioVivid.jpg)|
17
18使用说明
19
201. 弹出麦克风权限访问提示框,点击“允许”,如果点击"禁止"则不可进行录制,需要用户去设置页面给应用授权后方可正常录制
212. 在主界面点击“录制和播放”,进入音频录制界面,音频录制界面默认是普通录制界面,打开低时延录制开关可进行低时延录制
223. 点击录制按钮,开始录制,开始录制后低时延录制开关变为不可点击状态,录音时间开始计时,5s内不允许结束,30s后会自动结束录制
234. 点击暂停按钮,暂停录制,录音时间也停止计时
245. 点击继续按钮,继续录制,录音时间继续计时
256. 停止录制后,会生成录制结果,界面上有一个低时延播放开关和录制成功的音频播放器,点击低时延播放开关可打开低时延播放功能,点击播放可听到录制的音频,播放未结束之前低时延播放开关为不可点击状态
267. 点击返回按按钮回到主页
278. 点击AudioVivid播放卡片进入页面
289. 点击普通播放按钮,播放普通格式音乐
2910. 点击普通暂停按钮,暂停普通格式音乐
3011. 点击AudioVivid播放按钮,播放AudioVivid格式音乐
3112. 点击AudioVivid暂停按钮,暂停AudioVivid格式音乐
3213. 点击返回按按钮回到主页
33
34### 工程目录
35
36```
37entry/src/main/
38|---main
39|   |---cpp
40|   |   |---types
41|   |   |   |---libentry
42|   |   |   |   |---index.d.ts                     // 接口导出
43|   |   |   |   |---oh-package.json5
44|   |   |---audio.cpp                     // 调用native接口
45|   |   |---CMakeLists.txt                         // 编译脚本
46|   |---ets
47|   |   |---entryability
48|   |   |   |---EntryAbility.ets
49|   |   |---pages
50|   |   |   |---Index.ets                          // 首页
51|   |   |   |---AudioRecording.ets                 // 录制和播放页面
52|   |   |   |---AudioVividPlayback.ets                 // AudioVivid播放页面
53|   |---resources                                  // 静态资源
54|---ohosTest
55|   |---ets
56|   |   |---tests
57|   |   |   |---Ability.test.ets                   // 自动化测试用例
58```
59
60### 具体实现
61* 音频录制和播放-源码参考:[audio.cpp](entry/src/main/cpp/audio.cpp)
62    * [低时延录制开发指导文档](https://gitee.com/openharmony/docs/blob/OpenHarmony-4.0-Release/zh-cn/application-dev/media/using-ohaudio-for-recording.md)
63    * [低时延播放开发指导文档](https://gitee.com/openharmony/docs/blob/OpenHarmony-4.0-Release/zh-cn/application-dev/media/using-ohaudio-for-playback.md)
64    * [低时延录制开发示例](https://gitee.com/openharmony/multimedia_audio_framework/blob/OpenHarmony-4.0-Release/frameworks/native/ohaudio/test/example/oh_audio_capturer_test.cpp)
65    * [低时延播放开发示例](https://gitee.com/openharmony/multimedia_audio_framework/blob/OpenHarmony-4.0-Release/frameworks/native/ohaudio/test/example/oh_audio_renderer_test.cpp)
66    * [AudioVivid播放开发示例](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/media/audio/using-ohaudio-for-playback.md)
67
68### 相关权限
69
70音频录制涉及的权限包括:
71
721.允许应用使用麦克风:[ohos.permission.MICROPHONE](https://gitee.com/openharmony/docs/blob/OpenHarmony-4.0-Release/zh-cn/application-dev/security/permission-list.md#ohospermissionmicrophone)
73
74### 依赖
75
76不涉及。
77
78### 约束与限制
79
801. 本示例仅支持标准系统上运行,支持设备:RK3568(不支持低时延功能);
812. 本示例仅支持API12版本SDK,镜像版本号:OpenHarmony 5.0.0.20及之后的版本;
823. 本示例需要使用DevEco Studio 3.1.1 release (Build Version: 3.1.0.501)才可编译运行;
83
84### 下载
85
86如需单独下载本工程,执行如下命令:
87
88```
89git init
90git config core.sparsecheckout true
91echo code/DocsSample/Media/Audio/OHAudio/ > .git/info/sparse-checkout
92git remote add origin https://gitee.com/openharmony/applications_app_samples.git
93git pull origin ***(分支名)
94```