介绍

本示例主要展示了音频低时延录制和播放,AudioVivid音乐播放的相关功能:

  1. 低时延录制。
  2. 低时延播放。
  3. AudioVivid播放.

效果预览

在这里插入图片描述
在这里插入图片描述
使用说明

  1. 弹出麦克风权限访问提示框,点击“允许”,如果点击"禁止"则不可进行录制,需要用户去设置页面给应用授权后方可正常录制
  2. 在主界面点击“录制和播放”,进入音频录制界面,音频录制界面默认是普通录制界面,打开低时延录制开关可进行低时延录制
  3. 点击录制按钮,开始录制,开始录制后低时延录制开关变为不可点击状态,录音时间开始计时,5s内不允许结束,30s后会自动结束录制
  4. 点击暂停按钮,暂停录制,录音时间也停止计时
  5. 点击继续按钮,继续录制,录音时间继续计时
  6. 停止录制后,会生成录制结果,界面上有一个低时延播放开关和录制成功的音频播放器,点击低时延播放开关可打开低时延播放功能,点击播放可听到录制的音频,播放未结束之前低时延播放开关为不可点击状态
  7. 点击返回按按钮回到主页
  8. 点击AudioVivid播放卡片进入页面
  9. 点击普通播放按钮,播放普通格式音乐
  10. 点击普通暂停按钮,暂停普通格式音乐
  11. 点击AudioVivid播放按钮,播放AudioVivid格式音乐
  12. 点击AudioVivid暂停按钮,暂停AudioVivid格式音乐
  13. 点击返回按按钮回到主页

工程目录

entry/src/main/
|---main
|   |---cpp
|   |   |---types
|   |   |   |---libentry
|   |   |   |   |---index.d.ts                     // 接口导出
|   |   |   |   |---oh-package.json5
|   |   |---audio.cpp                     // 调用native接口
|   |   |---CMakeLists.txt                         // 编译脚本
|   |---ets
|   |   |---entryability
|   |   |   |---EntryAbility.ets
|   |   |---pages
|   |   |   |---Index.ets                          // 首页
|   |   |   |---AudioRecording.ets                 // 录制和播放页面
|   |   |   |---AudioVividPlayback.ets                 // AudioVivid播放页面
|   |---resources                                  // 静态资源
|---ohosTest               
|   |---ets
|   |   |---tests
|   |   |   |---Ability.test.ets                   // 自动化测试用例

具体实现

  • 音频录制和播放-源码参考:audioRecording.cpp
  • 低时延录制开发指导文档
  • 低时延播放开发指导文档
  • 低时延录制开发示例
  • 低时延播放开发示例
  • AudioVivid播放开发示例

相关权限

音频录制涉及的权限包括:

1.允许应用使用麦克风:ohos.permission.MICROPHONE

依赖

不涉及。

约束与限制

  1. 本示例仅支持标准系统上运行,支持设备:RK3568(不支持低时延功能);
  2. 本示例仅支持API12版本SDK,镜像版本号:OpenHarmony 5.0.0.20及之后的版本;
  3. 本示例需要使用DevEcoStudio 3.1.1 release (Build Version: 3.1.0.501)才可编译运行;

下载

如需单独下载本工程,执行如下命令:

git init
git config core.sparsecheckout true
echo code/BasicFeature/Native/Audio/ > .git/info/sparse-checkout
git remote add origin https://gitee.com/openharmony/applications_app_samples.git
git pull origin ***(分支名)

如果大家还没有掌握鸿蒙,现在想要在最短的时间里吃透它,我这边特意整理了《鸿蒙语法ArkTS、TypeScript、ArkUI等…视频教程》以及《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3

鸿蒙语法ArkTS、TypeScript、ArkUI等…视频教程:https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3

在这里插入图片描述

OpenHarmony APP应用开发教程步骤:https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3

在这里插入图片描述

《鸿蒙开发学习手册》:

如何快速入门:https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3

1.基本概念
2.构建第一个ArkTS应用
3.……

在这里插入图片描述

开发基础知识:https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3

1.应用基础知识
2.配置文件
3.应用数据管理
4.应用安全管理
5.应用隐私保护
6.三方应用调用管控机制
7.资源分类与访问
8.学习ArkTS语言
9.……

在这里插入图片描述

基于ArkTS 开发:https://docs.qq.com/doc/DZVVBYlhuRkZQZlB3

1.Ability开发
2.UI开发
3.公共事件与通知
4.窗口管理
5.媒体
6.安全
7.网络与链接
8.电话服务
9.数据管理
10.后台任务(Background Task)管理
11.设备管理
12.设备使用信息统计
13.DFX
14.国际化开发
15.折叠屏系列
16.……

在这里插入图片描述

鸿蒙生态应用开发白皮书V2.0PDF:https://docs.qq.com/doc/DZVVkRGRUd3pHSnFG

在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐