99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Smule采用Oboe音頻庫提升錄制率

谷歌開發(fā)者 ? 來源:Android 開發(fā)者 ? 作者:Android ? 2022-08-15 11:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者 / Smule 工程團(tuán)隊(duì): David Gayle、Chris Manchester、Mark Gills、Trayko Traykov、Randal Leistikow、Mariya Ivanova。

Smule 采用 Oboe 音頻庫提升錄制率

作為目前下載量排名前列的唱歌類應(yīng)用,Smule Inc. 一直致力于投入大量資源來提升其應(yīng)用的 Android 體驗(yàn),以提高整體音頻質(zhì)量。具體而言就是減少延遲時(shí)間,讓歌手在表演時(shí)能夠通過耳機(jī)聽到自己的聲音。擅長音頻和視頻技術(shù)的團(tuán)隊(duì)在 2021 年很大一部分時(shí)間都忙于必需的提升工作,將逾千萬 Android 用戶使用的 Smule 應(yīng)用從使用 OpenSL 音頻 API 轉(zhuǎn)換為使用 Oboe 音頻庫,從而使錄制完成率提高了約 10% 以上。

簡介

Smule Inc. 是卡拉 OK 應(yīng)用的潮流企業(yè),旗下的應(yīng)用每天幫助數(shù)百萬用戶演唱最愛的歌曲,并分享表演。Smule 應(yīng)用超越了傳統(tǒng)的卡拉 OK,專注于共同創(chuàng)作,為用戶創(chuàng)造了獨(dú)一無二的機(jī)會,可以與朋友、平臺上的其他歌手及其最喜歡的音樂人分享音樂和合作。而音頻質(zhì)量至關(guān)重要,Smule 團(tuán)隊(duì)在 2020 年看到了在 Android 平臺提升體驗(yàn)的潛力。

Smule 使用的舊版 OpenSL 雖然支持全球市場的各種設(shè)備,但不太適合利用新設(shè)備的高速硬件。Smule 開發(fā)團(tuán)隊(duì)認(rèn)為,升級音頻系統(tǒng)是必要且合乎邏輯的改進(jìn)。

Oboe 發(fā)布策略

Smule 曾面對兩種可行的改進(jìn)途徑,第一種是針對 AAudio 進(jìn)行改進(jìn),這是 Android O 中引入的高性能 Android C 音頻 API,專為需要低延遲的應(yīng)用而設(shè)計(jì)。第二種是采用在內(nèi)部同時(shí)封裝了 AAudio 和 OpenSL 的 Oboe。經(jīng)過細(xì)致評估,Smule 開發(fā)團(tuán)隊(duì)選擇了 Oboe,此方案具有易用的代碼庫、廣泛的設(shè)備兼容性和強(qiáng)大的社區(qū)支持,可最大限度減少延遲時(shí)間,并充分利用可用的原生音頻。

改用 Oboe 意味著在應(yīng)用架構(gòu)和技術(shù)上將發(fā)生重大的變化。因此,Smule 在更新過程中采取了謹(jǐn)慎的做法,有計(jì)劃地逐步發(fā)布,首先面向少數(shù)的特定設(shè)備型號以驗(yàn)證質(zhì)量;然后逐漸地面向更多設(shè)備 (將少數(shù)使用 Oboe 時(shí)出現(xiàn)問題的設(shè)備恢復(fù)到 OpenSL)。這種循序漸進(jìn)、有條不紊的方法可以最大限度地降低風(fēng)險(xiǎn),并讓開發(fā)團(tuán)隊(duì)能夠在出現(xiàn)設(shè)備特定問題時(shí)及時(shí)處理。

改善音頻質(zhì)量體驗(yàn)

Smule 改用 Oboe 來幫助改善應(yīng)用體驗(yàn)。他們希望大幅降低音頻播放崩潰率,消除錄制時(shí)的回響和噼啪聲等問題,以及減少音頻延遲。在之前的推文《關(guān)于 Android 音頻延遲的最新動(dòng)態(tài)》中曾介紹過,二十種最熱門的設(shè)備使用 Oboe 后,平均延遲時(shí)間從 2017 年的 109 毫秒減少到現(xiàn)在的 39 毫秒。109 毫秒的監(jiān)聽延遲會聽到干擾現(xiàn)場演唱的明顯回響,而延遲 39 毫秒則低于實(shí)時(shí)應(yīng)用可接受的閾值。當(dāng)下高端設(shè)備的延遲時(shí)間都在 22 毫秒以內(nèi),這種一致性是一大優(yōu)勢。

Smule 使用 Oboe 后,或許是因?yàn)檠舆t時(shí)間更短,歌手借助 Smule 首屈一指的音頻效果演唱時(shí)能通過耳機(jī)聽到自己的聲音,同時(shí)又沒有回響,錄制完成率因此得以提升。

利用 Oboe 專用的高效協(xié)作式 GitHub 門戶,Google 團(tuán)隊(duì)發(fā)揮了重要作用,不但幫助 Smule 實(shí)現(xiàn) Oboe 集成,還為其提供重要的數(shù)據(jù)洞察和支持。兩家團(tuán)隊(duì)通力合作,完成了迄今最大的 Oboe 部署,數(shù)百萬活躍用戶受益匪淺。Smule 團(tuán)隊(duì)解決了某些 Oboe 代碼問題,而 Google 團(tuán)隊(duì)與部分移動(dòng)設(shè)備制造商一起進(jìn)一步增強(qiáng)了 Oboe 的兼容性。

對于歌手社區(qū)而言,音頻質(zhì)量至關(guān)重要,我們一起致力于幫助 Smule 提供最佳體驗(yàn),并助力音樂創(chuàng)作,我們?yōu)榇松罡行牢俊?/p>

Smule 首席技術(shù)官 Eric Dumas

既然是大規(guī)模部署,自然會面臨設(shè)備特定問題。例如,操作系統(tǒng)內(nèi)置功能會導(dǎo)致原始音頻流中出現(xiàn)回響聲效,造成 Smule 不能正常應(yīng)用自己的專利 DSP 算法和音頻濾波器。Google 團(tuán)隊(duì)立即施以援手,迅速為開發(fā)庫提供更新和補(bǔ)丁。Oboe 問題反饋的流程簡單,描述明確,便于 Google 團(tuán)隊(duì)及時(shí)解決。

Smule 還克服了其他設(shè)備特定障礙,其中包括特定芯片組錯(cuò)誤。比如,Oboe 需要單聲道麥克風(fēng)輸入時(shí),一些設(shè)備提供的是引入一個(gè)模擬單聲道麥克風(fēng)輸入的立體聲輸入。Smule 在 Oboe 的 GitHub 中創(chuàng)建工單,以提供示例并使用 Oboe 測試應(yīng)用重現(xiàn)此問題。

Google 開發(fā)的 Oboe 測試器應(yīng)用工具可幫助用戶在實(shí)現(xiàn)過程中解決和標(biāo)識問題。事實(shí)證明,此工具在測試 Oboe、AAudio 和 OpenSL ES 的許多功能、測試 Android 設(shè)備,以及衡量延遲時(shí)間和故障等方面特別有用。此應(yīng)用可提供大量有助于模擬絕大部分音頻設(shè)置的功能。Oboe 測試器還可用于自動(dòng)化測試,方法是使用 Android Intent 從 Shell 腳本啟動(dòng)。由于集成涉及大量設(shè)備,Smule 非常依賴自動(dòng)化測試。

在 Smule 確信已解決設(shè)備特定問題,并且 Oboe 音頻相當(dāng)穩(wěn)定后,Smule 改用大范圍的對比測試發(fā)布方式。短短幾周內(nèi),Smule 將使用 Oboe 的人群從目標(biāo)設(shè)備的 10% 增加到 100%,這得益于 Oboe 在發(fā)布期間不斷收到積極反饋和綠色 KPI 指標(biāo)。

結(jié)果不言而喻,使用 Oboe 的 Smule 用戶會唱更多歌,就這么簡單。不重復(fù)的卡拉 OK 錄制量以及合唱 (或二重奏) 增加了高達(dá) 8.07%,不重復(fù)的上傳量增加了 3.84%,而演唱完成率則增加了 4.10% 以上。Smule 觀察到,在 2021 年第三季度和第四季度,錄制完成率增加了 10% 以上。

使用 Google 提供的 Firebase Crashlytics 工具,Smule 發(fā)現(xiàn)自 Oboe 全面應(yīng)用以來,與音頻相關(guān)的崩潰減少,應(yīng)用更穩(wěn)定,即便使用低端設(shè)備也如此。Smule 敬業(yè)的客服團(tuán)隊(duì)發(fā)現(xiàn),與音頻相關(guān)的投訴減少了 33%,其中包括 (非預(yù)期的) 機(jī)器人音效和回響等問題的投訴。

改用 Oboe 的決策已頗有成效。此應(yīng)用不同以往,更穩(wěn)定更出類拔萃,Smule 完全能夠采用更新技術(shù),進(jìn)一步提升音頻和硬件質(zhì)量。最重要的是,Smule 用戶可以更得心應(yīng)手地制作音樂,這才是我們的使命。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    3973

    瀏覽量

    130221
  • Google
    +關(guān)注

    關(guān)注

    5

    文章

    1789

    瀏覽量

    59010
  • 音頻
    +關(guān)注

    關(guān)注

    30

    文章

    3042

    瀏覽量

    83435

原文標(biāo)題:Smule 借助 Oboe 音頻庫提升用戶體驗(yàn),助力音樂創(chuàng)作 | Android 開發(fā)者故事

文章出處:【微信號:Google_Developers,微信公眾號:谷歌開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Arm精銳超級分辨技術(shù)助力提升游戲性能

    去年夏天,Arm 推出了 Arm 精銳超級分辨技術(shù) (Arm Accuracy Super Resolution, Arm ASR) 的早期采用計(jì)劃,這是一項(xiàng)從 AMD 超級分辨銳畫技術(shù) 2
    的頭像 發(fā)表于 04-21 13:52 ?455次閱讀
    Arm精銳超級分辨<b class='flag-5'>率</b>技術(shù)助力<b class='flag-5'>提升</b>游戲性能

    藍(lán)牙音頻模組中模擬音頻和數(shù)字音頻如何選擇?

    藍(lán)牙模塊中我們常說的模擬音頻和數(shù)字音頻,是指兩種不同的信號處理技術(shù),它們都可以實(shí)現(xiàn)聲音的錄制、存儲、編輯、壓縮或播放,但也有一些區(qū)別和特點(diǎn)。本文將為您深入解析藍(lán)牙數(shù)字音頻和模擬
    的頭像 發(fā)表于 04-17 15:55 ?316次閱讀
    藍(lán)牙<b class='flag-5'>音頻</b>模組中模擬<b class='flag-5'>音頻</b>和數(shù)字<b class='flag-5'>音頻</b>如何選擇?

    支持多臺機(jī)統(tǒng)一管控可同時(shí)錄制6間會議室的錄播主機(jī)

    其最為突出的優(yōu)勢在于具備6通道視頻輸入功能,不僅每一路皆支持內(nèi)嵌音頻輸入錄制,更特別的是,還支持對每一路分別進(jìn)行配音,能夠錄制為6個(gè)不同音頻各自獨(dú)立的音視頻文件,這一特性完美實(shí)現(xiàn)了同時(shí)
    的頭像 發(fā)表于 02-22 09:32 ?613次閱讀
    支持多臺機(jī)統(tǒng)一管控可同時(shí)<b class='flag-5'>錄制</b>6間會議室的錄播主機(jī)

    如何提升音頻音質(zhì)?比特和采樣是關(guān)鍵!

    在挑選音響、聲卡、耳機(jī)等音頻設(shè)備時(shí),我們都會特別關(guān)注其音質(zhì)表現(xiàn)——這關(guān)乎到我們聆聽音樂、觀看電影等娛樂體驗(yàn)的質(zhì)量。實(shí)際上,我們可以在音頻設(shè)備中看到一些名詞標(biāo)注:比特、采樣……這兩個(gè)
    的頭像 發(fā)表于 02-05 17:26 ?3084次閱讀
    如何<b class='flag-5'>提升</b><b class='flag-5'>音頻</b>音質(zhì)?比特<b class='flag-5'>率</b>和采樣<b class='flag-5'>率</b>是關(guān)鍵!

    谷歌Pixel Recorder應(yīng)用用戶參與度顯著提升

    Google Pixel 的 Recorder 應(yīng)用允許用戶錄制、轉(zhuǎn)錄、保存和共享音頻。為了讓用戶更輕松地管理和回顧自己的錄音,Recorder 的開發(fā)者將目光鎖定在功能強(qiáng)大的設(shè)備端大語言模型
    的頭像 發(fā)表于 11-15 13:46 ?707次閱讀

    《DNK210使用指南 -CanMV版 V1.0》第二十九章 音頻錄制實(shí)驗(yàn)

    ,因?yàn)楸緦?shí)驗(yàn)需要錄制音頻數(shù)據(jù)。再接著構(gòu)造了一個(gè)Audio對象,Audio對象與文件系統(tǒng)中的音頻文件進(jìn)行綁定。接下來根據(jù)定義的采樣、錄制時(shí)間
    發(fā)表于 10-26 14:16

    采用TLV320AIC3106實(shí)現(xiàn)4路音頻輸入,4路音頻輸出,對應(yīng)的管腳該如何分配?

    您好!請問,我想采用TLV320AIC3106實(shí)現(xiàn)4路音頻輸入(即兩路均為左右聲道的音頻輸入),4路音頻輸出(即兩路均為左右聲道的音頻輸出
    發(fā)表于 10-25 07:14

    synopsys 的design ware:DW_fpv_div,浮點(diǎn)數(shù)除法器,默認(rèn)32位下,想提升覆蓋(TMAX),如果用功能case去提升覆蓋呢?

    ,覆蓋只有微微的提升,請問是否要遍歷很多數(shù)才能提升覆蓋嗎?一般這種浮點(diǎn)數(shù)有什么方法去跑嗎? 每個(gè)數(shù)都跑豈不是天文數(shù)字,本人剛接觸不久,請大佬指教下,謝謝
    發(fā)表于 10-15 18:38

    dm368錄制音視頻后用vlc播放不同步是怎么回事?

    目前我們用其他的開發(fā)板 能夠錄制音視頻,但是用vlc播放的時(shí)候發(fā)現(xiàn)每次都是視頻播放完成了音頻還要播放一會,隨著錄制時(shí)間加上,延后的這個(gè)時(shí)間也會變長 請問有知道怎么回事的嗎?
    發(fā)表于 10-15 06:56

    TLV320AIC3254具有6路的語音錄制功能,可否生成6路完全獨(dú)立的音頻文件?

    您好,請問下TLV320AIC3254具有6路的語音錄制功能,請問下,可否生成6路完全獨(dú)立的音頻文件?由于每個(gè)拾音器是分別放置于不同的位置。謝謝。
    發(fā)表于 10-12 08:58

    使用adau1961 codec進(jìn)行錄音,發(fā)現(xiàn)錄制音頻文件噪聲非常大,請問有什么辦法可以優(yōu)化嗎?

    (1)我這邊使用adau1961 codec進(jìn)行錄音,發(fā)現(xiàn)錄制音頻文件噪聲非常大,請問有什么辦法可以優(yōu)化么,我這邊已經(jīng)排除MIC導(dǎo)入噪聲的可能,實(shí)際使用AMIC。 (2)我這邊使用tas2505作為pa接speaker播放一個(gè)wav文件,發(fā)現(xiàn)同樣噪聲非常大,請問有改善的
    發(fā)表于 10-12 07:35

    TLV320AIC3254用作音頻采集,芯片的ADC的分辨是多少位的呢?

    用作音頻采集,芯片的ADC的分辨是多少位的呢?查看了一些資料和CS都沒介紹到這一塊。
    發(fā)表于 10-10 07:23

    高分辨音頻和傳統(tǒng)音頻區(qū)別

    高分辨音頻通過更高的采樣和比特深度,提供了更高的音質(zhì)和更豐富的聽覺體驗(yàn),而傳統(tǒng)音頻則可能在音質(zhì)和細(xì)節(jié)上有所妥協(xié)。
    的頭像 發(fā)表于 09-04 16:20 ?1639次閱讀
    高分辨<b class='flag-5'>率</b><b class='flag-5'>音頻</b>和傳統(tǒng)<b class='flag-5'>音頻</b>區(qū)別

    百問網(wǎng)全志系列開發(fā)板音頻ALSA配置步驟詳解

    系統(tǒng)會分配一定存儲位來記錄聲波的振幅,一般稱之為采樣分辯或者采樣精度,采樣精度越高,聲音還原時(shí)就會越細(xì)膩。 ?數(shù)字音頻涉及到的概念非常多,對于在Linux下進(jìn)行音頻編程的程序員來說,最重
    發(fā)表于 08-13 09:56

    為什么采用30.72MHz作為最小采樣

    本文介紹了為什么采用30.72MHz作為最小采樣。
    的頭像 發(fā)表于 08-07 17:35 ?1104次閱讀
    為什么<b class='flag-5'>采用</b>30.72MHz作為最小采樣<b class='flag-5'>率</b>