当前位置:首页 > > 动态速递
[导读]HarmonyOS NEXT通过提供简单易用体验一致的生态借口,帮助开发者轻松解决不同多媒体技术开发难题。

随着技术的不断发展和多媒体的不断演进,越来越多的传统场景将有可能被颠覆,开发者们也需要不断的学和更新自己的技能,以适应新的需求和挑战。然而在开发过程中,很多开发者都会遇到“为什么我开发的相机不如系统相机的效果好?”,“为什么我的应用和其他的音乐一起发声了,我要怎么处理”以及“我应该怎么做才能在系统的播控中心里可以看到?”等问题。

对于开发者的这些疑问,HarmonyOS NEXT通过提供简单易用体验一致的生态借口,就能帮助开发者轻松解决上述问题。

三个统一,让三方相机与系统相机获取一致体验

相机应用在早期的版本开发中,开发者们能够发现三方相机和系统相机拍照的效果会有较明显的不一致,色彩/饱和度/纹理细节等方面会出现一些明显的差异。

(三方相机)

(系统相机)

出现这样的情况主要有两个原因,一个是因为系统相机采用了私有同路,从而获取了更好的拍照效果,另一个原因就是三方相机预览流拍照效果相对较差。

针对上述问题,HarmonyOS NEXT三个步骤即可解决相关问题。

第一步:统一接口,统一流程,统一效果:通过统一开发接口和流程,从而使得三方相机和系统相机获取一致的体验。

第二步:分离预览、拍照、录像,明确流定义,让正确的流做正确的事。

第三步:相机管道流水线模型。

开发者可参考下方示例代码

相机基本控制流程:

使用PreviewOutput实现相机预览

使用PhotoOutput实现相机拍照:

使用VideoOutput实现相机录像:

统一焦点处理,并发播放更有序

开发者在音视频应用开发中最常遇到的场景,就是并发播放,而并发播放一般解决思路是各个应用对焦点的申请和处理。传统的焦点管理方法更依赖应用遵守约定好的策略,如果有的应用不遵守,比如不响应或者滥用焦点,就可能会出现不发声或者乱发声的现象,影响了用户的体验。

针对上述问题,HarmonyOS NEXT进一步改进了焦点管理的设计,提供统一的焦点处理策略,用以规范应用对于焦点的使用,以达成统一的发声体验,HarmonyOS NEXT系统中的焦点管理模块儿会存储一个焦点策略表,定义了不同的场景下,哪些应用可以获取焦点进行播放,哪些应用会失去焦点而停止播放等策略。

各位开发者可通过接口的使用来感受实际处理策略。

首先,在A应用创建并使用AudioRenderer播放的时候,系统会自动为其申请焦点,此行为属于系统的行为。

当A应用播放后,系统的焦点策略会进行判断,如果A应用可以抢到焦点,那就会使得失去焦点的应用暂停播放;同时被暂停的应用也会在INTERRUPT_FORCE的回调事件中,得到暂停的状态,应用在收到这个事件后,就需要存储并更新应用内的状态。

当A应用停止播放后,之前被暂停的应用也会收到一个恢复播放的事件,这个事件会在INTERRUPT_SHARE中,应用可以进行恢复播放的操作,或者忽略,属于非强制行为。

开发者可参考下方示例代码

打通低时延通路,一套接口适配不同场景

很多开发者都知道,游戏、K歌、乐器等应用对于音频的输出时延要求很高,常规的播放通路一般只能达到60ms左右,甚至更高的时延,并不能满足这些应用的使用诉求。而HarmonyOS NEXT则为此提供了低时延通路的设计方案。

首先在系统中的普通通路之外新增一条垂直打通硬件的低时延通路,通过bypass框架层直接在DSP进行混音,达成最低20ms的音频输出时延。

其次为了简化应用的接入,通过在接口中提供不同的参数配置,就能使开发者可以用一套接口同时支持低时延和普通通路两种播放模式。

开发者们可以通过OH_AudioStreamXXX接口来进行低时延通路的创建,通过传入不同参数就可以设置低时延模式,亦可以设置普通模式,从而使用一套接口来适配不同场景。

同时,低时延模式一般采用来pull模式来获取数据,在这里提供一个callback,需要应用创建并填入。

开发者可参考下方示例代码:

播控应用控制一键直达

基于上方所述焦点管理策略,HarmonyOS NEXT解决了音视频应用并发播放的问题;而对于播放中的应用控制,系统也提供了规范支持。

首先在系统提供的C/S模式的播控管理的框架中,应用作为客户端,接入AVSession的会话端,设置必要的信息;

其次系统的播控中心获取与之对应的会话控制器,获取信息进行展示,以及对应用发送控制命令;

最后通过标准接口的接入,规范应用的播放行为;同时通过统一的播控中心的入口,就能让用户对于播放的控制做到一键直达。

开发者可参考下方示例代码:

想要跟上技术发展的步伐,开发者学新技术的同时,能够拥有开发便捷高效的工具则能达到事半功倍的效果。除了多媒体技术的开发管理,HarmonyOS NEXT也在积极为各位开发者提供其他更多技术开发解决方案,让开发者在高效开发之余也能持续拓宽视野,提高自己的创新能力。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

北京 2025年7月3日 /美通社/ -- 近日,北京积算科技有限公司(以下简称"积算科技")正式推出GPU裸金属算力服务套件,帮助客户实现并行环境的分钟级部署与出厂级性能校准,在GPU裸金属算力上...

关键字: 金属 GPU 性能优化 操作系统

上海 2025年5月20日 /美通社/ -- 2025年5月15日至18日,全球神经介入领域顶级盛会——世界神经介入治疗大会(WLNC)暨东方脑血管病大会(OCIN)于上海国际会议中心隆重举行,吸引了来自全球神经介入领...

关键字: 机器人 VI AN 操作系统

为提升鸿蒙应用开发效率,华为前不久上线了首款开发HarmonyOS应用的AI智能辅助开发助手——CodeGenie,该AI助手深度集成在DevEco Studio中,提供鸿蒙知识智能问答、鸿蒙ArkTS代码补全/生成和万...

关键字: 华为 HarmonyOS 鸿蒙生态 AI

Docker 是一种基于操作系统层级的虚拟化技术,它将软件及其依赖项打包为容器,使得应用程序可以在任何支持 Docker 的环境中运行。

关键字: Docker 操作系统

北京2025年2月28日 /美通社/ -- 日前,《服务器操作系统迁移指南》(以下简称《指南》)经中国电子工业标准化技术协会批准后正式发布,将于3月正式实施。《指南》由浪潮信息牵头,中国电子技术标准化研究院、阿里云、统信...

关键字: 操作系统 编写 CPU 内存

业界最真实、最互联、最具未来性的操作系统变得更智能、更快速、更敏锐 纽约2025年1月30日  /PRNewswire/ -- Stagwell(纳斯达克股票代码:STGW...

关键字: ASSEMBLY STAGE AI 操作系统

在Linux操作系统中,文件操作是进程与存储系统交互的重要方式。对于同一个文件,一个进程是否可以在其生命周期内多次调用open函数打开它,并进行读写操作呢?答案是肯定的。本文将深入探讨这一机制,并通过代码示例展示如何在进...

关键字: 文件 Linux 操作系统

北京2025年1月20日 /美通社/ -- 近日,微展世(北京)数字科技有限公司(简称"微展世")在北京成功举办了2025产品发布与战略签约盛典。作为微展世的重要战略合作伙伴,软通动力及其子公司鸿湖万...

关键字: 开源 操作系统 鸿蒙 OS

北京2025年1月16日 /美通社/ -- 软硬一体具身智能人形机器人是未来智能产业的重大机遇,大模型智能体应用在千行百业深入广泛推进,世界模型、具身智能也正加快从实验室走向场景应用和商业落地。软通动力聚焦人形机器人场景...

关键字: 机器人 模型 智能计算 操作系统

拉斯维加斯2025年1月11日 /美通社/ -- 2025年1月8日,于拉斯维加斯举办的消费电子展(CES)上,全球AI跨语言沟通设备领导品牌时空壶,正式发布Timekett...

关键字: 操作系统 BLE OS CE
关闭