0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Smule采用Oboe音频库提升录制率

谷歌开发者 来源:Android 开发者 作者:Android 2022-08-15 11:18 次阅读

作者 / Smule 工程团队: David Gayle、Chris Manchester、Mark Gills、Trayko Traykov、Randal Leistikow、Mariya Ivanova。

Smule 采用 Oboe 音频库提升录制率

作为目前下载量排名前列的唱歌类应用,Smule Inc. 一直致力于投入大量资源来提升其应用的 Android 体验,以提高整体音频质量。具体而言就是减少延迟时间,让歌手在表演时能够通过耳机听到自己的声音。擅长音频和视频技术的团队在 2021 年很大一部分时间都忙于必需的提升工作,将逾千万 Android 用户使用的 Smule 应用从使用 OpenSL 音频 API 转换为使用 Oboe 音频库,从而使录制完成率提高了约 10% 以上。

简介

Smule Inc. 是卡拉 OK 应用的潮流企业,旗下的应用每天帮助数百万用户演唱最爱的歌曲,并分享表演。Smule 应用超越了传统的卡拉 OK,专注于共同创作,为用户创造了独一无二的机会,可以与朋友、平台上的其他歌手及其最喜欢的音乐人分享音乐和合作。而音频质量至关重要,Smule 团队在 2020 年看到了在 Android 平台提升体验的潜力。

Smule 使用的旧版 OpenSL 虽然支持全球市场的各种设备,但不太适合利用新设备的高速硬件。Smule 开发团队认为,升级音频系统是必要且合乎逻辑的改进。

Oboe 发布策略

Smule 曾面对两种可行的改进途径,第一种是针对 AAudio 进行改进,这是 Android O 中引入的高性能 Android C 音频 API,专为需要低延迟的应用而设计。第二种是采用在内部同时封装了 AAudio 和 OpenSL 的 Oboe。经过细致评估,Smule 开发团队选择了 Oboe,此方案具有易用的代码库、广泛的设备兼容性和强大的社区支持,可最大限度减少延迟时间,并充分利用可用的原生音频。

改用 Oboe 意味着在应用架构和技术上将发生重大的变化。因此,Smule 在更新过程中采取了谨慎的做法,有计划地逐步发布,首先面向少数的特定设备型号以验证质量;然后逐渐地面向更多设备 (将少数使用 Oboe 时出现问题的设备恢复到 OpenSL)。这种循序渐进、有条不紊的方法可以最大限度地降低风险,并让开发团队能够在出现设备特定问题时及时处理。

改善音频质量体验

Smule 改用 Oboe 来帮助改善应用体验。他们希望大幅降低音频播放崩溃率,消除录制时的回响和噼啪声等问题,以及减少音频延迟。在之前的推文《关于 Android 音频延迟的最新动态》中曾介绍过,二十种最热门的设备使用 Oboe 后,平均延迟时间从 2017 年的 109 毫秒减少到现在的 39 毫秒。109 毫秒的监听延迟会听到干扰现场演唱的明显回响,而延迟 39 毫秒则低于实时应用可接受的阈值。当下高端设备的延迟时间都在 22 毫秒以内,这种一致性是一大优势。

Smule 使用 Oboe 后,或许是因为延迟时间更短,歌手借助 Smule 首屈一指的音频效果演唱时能通过耳机听到自己的声音,同时又没有回响,录制完成率因此得以提升。

利用 Oboe 专用的高效协作式 GitHub 门户,Google 团队发挥了重要作用,不但帮助 Smule 实现 Oboe 集成,还为其提供重要的数据洞察和支持。两家团队通力合作,完成了迄今最大的 Oboe 部署,数百万活跃用户受益匪浅。Smule 团队解决了某些 Oboe 代码问题,而 Google 团队与部分移动设备制造商一起进一步增强了 Oboe 的兼容性。

对于歌手社区而言,音频质量至关重要,我们一起致力于帮助 Smule 提供最佳体验,并助力音乐创作,我们为此深感欣慰。

Smule 首席技术官 Eric Dumas

既然是大规模部署,自然会面临设备特定问题。例如,操作系统内置功能会导致原始音频流中出现回响声效,造成 Smule 不能正常应用自己的专利 DSP 算法和音频滤波器。Google 团队立即施以援手,迅速为开发库提供更新和补丁。Oboe 问题反馈的流程简单,描述明确,便于 Google 团队及时解决。

Smule 还克服了其他设备特定障碍,其中包括特定芯片组错误。比如,Oboe 需要单声道麦克风输入时,一些设备提供的是引入一个模拟单声道麦克风输入的立体声输入。Smule 在 Oboe 的 GitHub 中创建工单,以提供示例并使用 Oboe 测试应用重现此问题。

Google 开发的 Oboe 测试器应用工具可帮助用户在实现过程中解决和标识问题。事实证明,此工具在测试 Oboe、AAudio 和 OpenSL ES 的许多功能、测试 Android 设备,以及衡量延迟时间和故障等方面特别有用。此应用可提供大量有助于模拟绝大部分音频设置的功能。Oboe 测试器还可用于自动化测试,方法是使用 Android Intent 从 Shell 脚本启动。由于集成涉及大量设备,Smule 非常依赖自动化测试。

在 Smule 确信已解决设备特定问题,并且 Oboe 音频相当稳定后,Smule 改用大范围的对比测试发布方式。短短几周内,Smule 将使用 Oboe 的人群从目标设备的 10% 增加到 100%,这得益于 Oboe 在发布期间不断收到积极反馈和绿色 KPI 指标。

结果不言而喻,使用 Oboe 的 Smule 用户会唱更多歌,就这么简单。不重复的卡拉 OK 录制量以及合唱 (或二重奏) 增加了高达 8.07%,不重复的上传量增加了 3.84%,而演唱完成率则增加了 4.10% 以上。Smule 观察到,在 2021 年第三季度和第四季度,录制完成率增加了 10% 以上。

使用 Google 提供的 Firebase Crashlytics 工具,Smule 发现自 Oboe 全面应用以来,与音频相关的崩溃减少,应用更稳定,即便使用低端设备也如此。Smule 敬业的客服团队发现,与音频相关的投诉减少了 33%,其中包括 (非预期的) 机器人音效和回响等问题的投诉。

改用 Oboe 的决策已颇有成效。此应用不同以往,更稳定更出类拔萃,Smule 完全能够采用更新技术,进一步提升音频和硬件质量。最重要的是,Smule 用户可以更得心应手地制作音乐,这才是我们的使命。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Android
    +关注

    关注

    12

    文章

    3885

    浏览量

    126101
  • Google
    +关注

    关注

    5

    文章

    1732

    浏览量

    56949
  • 音频
    +关注

    关注

    28

    文章

    2674

    浏览量

    80339

原文标题:Smule 借助 Oboe 音频库提升用户体验,助力音乐创作 | Android 开发者故事

文章出处:【微信号:Google_Developers,微信公众号:谷歌开发者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    使用提供的esp_audio_codec 的组件时,不能将AAC音频解码回PCM音频,为什么?

    使用提供的esp_audio_codec 的组件时,能够将PCM音频编码为AAC音频,但是不能将AAC音频解码回PCM音频,是为什么导致的
    发表于 06-05 06:39

    谷歌安卓15将提升对助听器支持,改善音频体验

    5 月 30 日,谷歌正式公布了安卓 15 更新计划,将大幅度提升安卓系统对助听器的支持程度,使其可与具备蓝牙 LE 音频技术的助听器无缝对接。
    的头像 发表于 05-30 15:11 209次阅读

    音频拓展坞:提升音乐体验的必备工具

    在这个数字化的时代,我们越来越依赖电子设备来享受音乐、观看电影和玩游戏。然而,尽管科技在不断进步,但许多现代笔记本电脑和平板设备的音频输出仍然受限于其内置的扬声器或耳机插孔。为了获得更丰富、更逼真
    的头像 发表于 05-19 23:36 179次阅读
    <b class='flag-5'>音频</b>拓展坞:<b class='flag-5'>提升</b>音乐体验的必备工具

    HarmonyOS实战开发-如何实现音频低时延录制和播放,AudioVivid音乐播放的相关功能

    介绍 本示例主要展示了音频低时延录制和播放,AudioVivid音乐播放的相关功能: 低时延录制。 低时延播放。 AudioVivid播放. 效果预览 主页 录制页面 播放页
    发表于 05-11 20:26

    请问STM32F7系列可以录制视频吗?分辨多少的?

    网上几乎没人用STM32的芯片来做录制视频的,请教一下各位高手STM32F7系列可以用做录制视频吗?
    发表于 05-09 06:06

    高通推出全新S3和S5音频平台,提升中端设备音频体验

    高通技术国际有限公司今日震撼发布两款前沿音频平台——第三代高通®S3音频平台和第三代高通®S5音频平台,它们作为系列中的佼佼者,将为用户带来前所未有的音频享受。
    的头像 发表于 03-27 09:27 649次阅读

    鸿蒙实战多媒体运用:【音频组件】

    音频组件用于实现音频相关的功能,包括音频播放,录制,音量管理和设备管理。
    的头像 发表于 03-08 16:54 292次阅读
    鸿蒙实战多媒体运用:【<b class='flag-5'>音频</b>组件】

    倍思Eli Sport 1真无线耳机采用炬芯ATS3025蓝牙音频SoC,提升音质与体验

    在核心控制芯片层面,倍思选择了炬芯®ATS3025蓝牙音频SoC。该型号具有音质优良、延时低、功耗低等优点,采用CPU+DSP双核异构音频处理架构,算力强、内存丰富且易于编程开发,为耳机内部提供了强大的战略支撑。
    的头像 发表于 02-27 16:22 665次阅读

    为什么音频电路里面运放的压摆都达到甚至超过10V/us?

    请帮忙解释一下为什么音频电路里面运放的压摆都达到甚至超过10V/us比如NE5532 9V/us AD827 35V/us TL084 18V/us 而用于传感器,电压,电流,温度等小信号电路里
    发表于 11-17 12:54

    HarmonyOS音视频开发概述

    在音视频开发指导中,将介绍各种涉及音频、视频播放或录制功能场景的开发方式,指导开发者如何使用系统提供的音视频API实现对应功能。比如使用TonePlayer实现简单的提示音,当设备接收到新消息
    发表于 10-17 16:39

    K510能做哪些音频处理?支持了什么python音频处理

    麻烦问一下,K510 能做哪些音频处理?支持了什么python 音频处理?我们想用K510来做音频处理,比如GEQ,PEQ,降噪,效果器,混音等等。急盼大家回复
    发表于 09-14 07:32

    蓝牙音频设备的噪声抑制和音质提升

    蓝牙音频设备的噪声抑制和音质提升
    的头像 发表于 08-15 11:37 939次阅读
    蓝牙<b class='flag-5'>音频</b>设备的噪声抑制和音质<b class='flag-5'>提升</b>

    采用TDA1020的12w音频放大器电路图

      该12W音频放大器电路采用TDA1020音频放大器集成电路和少量电子元件设计。   TDA1020是一款单片集成12瓦音频放大器电路,采用
    发表于 08-02 18:16

    会议录播机为什么必须具备混音功能

    常规的视频会议终端设备的HDMI输出接口,只能输出远程分会场的声音,不能输出本地全向麦克风输入的音频,如果只是录制HDMI的音视频,就录制不上本地的音频
    的头像 发表于 07-24 15:50 352次阅读
    会议录播机为什么必须具备混音功能

    高通蓝牙无损解码音频解决方案

    ;基于Snapdragon Sound骁龙畅听技术的加持,其还支持超宽带语音,使其能够以无线方式带来媲美有线的通话质量;另外,其还支持立体声音频录制,针对直播、视频创作等场景应
    发表于 07-04 18:08 9次下载