色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

定義安卓音頻架構

星星科技指導員 ? 來源:embedded ? 作者:Rohan Nathi ? 2023-05-04 10:23 ? 次閱讀

Android操作系統已經占領了當今設備的很大一部分,包括智能手機,電視和Tab。根據Statista的數據,谷歌創建的Android移動操作系統(OS)是目前使用最廣泛的智能手機操作系統,以接近71.8%的市場份額主導移動操作系統市場。

Android 在所有硬件平臺上被廣泛采用,因為它是一個開源軟件代碼和一個定義明確的框架結構。Linux內核是Android操作系統的核心,因為它提供了硬件和各種Android組件之間的抽象。音頻處理需要大量復雜的操作和密集的算法來產生高保真音頻輸出。Android 音頻架構涉及許多復雜的軟件,必須處理許多方面,例如支持揚聲器、聽筒、耳機、HDMI、麥克風、藍牙 SCO、A2DP 等音頻硬件,以及不同的軟件應用程序,如電話、媒體播放器錄音機、VIOP 應用程序和 SIP 應用程序。本文重點介紹 Android 音頻架構中不同組件的高級功能。

安卓音頻架構概述

Android 音頻架構概述了音頻功能的實現方式,并提供了指向相關源代碼的鏈接。

poYBAGRTFwuAZm7QAAI0YWClXlc315.png

安卓音頻架構

安卓音頻APP和JAVA框架

Android 框架由一組定義明確的 Java API 組成,使開發人員能夠輕松編寫 Android 應用程序。Android 音頻應用代碼使用這組不同的多媒體 (android.media) 框架 API。在內部,這些 API 調用相應的 Java 本機接口 (JNI) 粘附軟件代碼來訪問本機組件,這些組件進一步與較低層交互以在硬件上播放音頻。

粘結 劑

進程間通信 (IPC) 是所有不同 Android 組件交換信息的重要機制。Android 進程使用名為“Binder”的特定于 Android 的 IPC 來調用另一個 Android 進程中的例程,并通過參數交換數據。上層使用 Binder API 與本機音頻服務和下層硬件層進行通信。

音頻管理器

音頻管理器是原生的Android服務,是整個音頻子系統的核心組件。從Android 7 Nougat版本開始,它不是原生媒體服務的一部分,而是在用戶空間中作為單獨的Android進程運行。它為不同的服務運行三個線程,即音頻策略、音頻投點和音頻以執行其功能。

音頻策略服務

策略決策主要包括打開新的輸入/輸出音頻流,并在通過 UI 和流音量管理更改或選擇后將音頻重新路由到不同的音頻設備。音頻策略服務處理執行這些策略決策所需的所有操作。此服務還跟蹤用戶事件和當前系統狀態,以通知音頻投點服務。

音頻投擲器服務

音頻傳票服務調用音頻硬件抽象層 (HAL) API 以與音頻硬件交互。它為上層提供了一個可訪問的界面。音頻策略服務定義的策略決策和策略由此服務執行。它還負責與音頻設備通信并維護其狀態。它處理多個音頻流(通知和音樂)的混合、音量縮放、音頻流寫入,并為媒體播放器提供寫入音頻幀等信息。

音頻服務

Audio 是 Android 8 Oreo 版本中引入的新 Android C API。它專為需要低延遲的高性能音頻應用而設計。Android 音頻應用調用音頻 API 來讀取和寫入音頻流中的數據。音頻服務處理這些低延遲音頻 API。音頻 API 中有兩種模式,即“獨占模式”,它允許客戶端應用程序代碼直接寫入與 ALSA 驅動程序共享的內存映射緩沖區,以及“共享模式”,它混合所有共享流并遵循音頻 HAL 路徑。

音頻 HAL

硬件抽象層 (HAL) 是 Android 堆棧中的一個層,它為上層運行的本機音頻服務提供標準訪問接口。音頻 HAL 將上層橋接到較低級別的音頻驅動程序實現。供應商必須使用特定的音頻驅動程序代碼實現音頻 HAL 接口。音頻 HAL 作為單獨的 Android 進程在用戶空間中運行,以執行上層所需的功能。

下面列出了音頻 HAL 提供的主要功能。

管理音頻輸入/輸出流的打開和關閉,包括設置音頻通道、采樣率和音頻格式等流參數。它還必須處理媒體播放器的不同狀態,包括播放、暫停、恢復和待機,并為硬件上寫入的音頻幀和時間戳提供反饋路徑數據。

加載需要特殊音頻處理和解碼的特定庫集,從而將原始數據發送到音頻硬件。

音頻設備接口

Android 音頻架構支持不同類型的音頻設備,包括藍牙設備、電視調諧器系統、HMDI 連接和 I2S 揚聲器。音頻 HAL 負責將音頻數據包從上層發送到這些設備。選擇特定音頻設備或將其插入 Android 硬件后,音頻策略管理器將執行一組定義并與音頻設備關聯的策略,并且所有層都配置為支持音頻數據流經它。Audio HAL 特別加載與音頻設備交互的接口代碼并對其執行讀寫操作,此接口代碼還為連接到其他 HAL 的音頻設備執行 HAL 間 IPC,例如,需要藍牙 HAL 交換數據的藍牙音頻設備。

內核驅動程序

音頻 HAL 實現具有與音頻驅動程序交互的代碼。Android 內核使用高級 Linux Sound Architecture (ALSA) 子系統,或者供應商可以引入與 HAL 無關的自定義驅動程序。Tiny ALSA是一個小型庫,用于與Linux內核中的ALSA接口,音頻HAL使用它與不同的聲卡進行交互。

Android堆棧是需要為不同的硬件平臺構建的巨大軟件代碼。理解和修改較低的Android層非常困難,因為它需要大量的調試技能。硬件級實現因每個供應商而異,需要與為上層定義的接口準確映射。代碼庫中許多未記錄的部分更加復雜且特定于供應商,并且它使用復雜的IPC機制,并在編程語言之間切換。

Softnautics使多媒體公司能夠設計和開發連接的多媒體解決方案。我們幫助客戶進行Android底層所需的不同自定義和集成,其中主要包括用戶和內核空間中的本機代碼。我們還協助客戶添加基于音頻的無線設備并將其集成到Android音頻子系統中。我們在了解 Android 架構中的不同層以進行定制和圍繞它的新設計方面擁有專業知識。我們在設計高性能媒體應用程序、構建完整的視頻管道、音頻/視頻編解碼器開發、應用程序移植等方面擁有實踐經驗。

審核編輯?:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 智能手機
    +關注

    關注

    66

    文章

    18504

    瀏覽量

    180471
  • Android
    +關注

    關注

    12

    文章

    3939

    瀏覽量

    127575
  • 操作系統
    +關注

    關注

    37

    文章

    6853

    瀏覽量

    123434
收藏 人收藏

    評論

    相關推薦

    基于Freescale MCU與Audio Codec的音頻附件設計

    音頻附件是Android Open Accessory (AOA) protocol 2.0中新增的功能,它通過標準USB Audio Class Interface將來自
    發表于 11-19 11:51 ?6312次閱讀
    基于Freescale MCU與Audio Codec的<b class='flag-5'>安</b><b class='flag-5'>卓</b><b class='flag-5'>音頻</b>附件設計

    車載系統的設計方案和注意事項

    基于系統的消費電子設備用戶希望可以在開車或乘車時使用他們的應用程序和設備功能。##整合智能設備##與
    發表于 05-19 09:59 ?4989次閱讀

    Android端自定義鈴聲 MobPush對端自定義鈴聲的教程

    如何為APP推送設置獨特的通知鈴聲呢?本次帶來的是MobPush對端自定義鈴聲的教程,快來看看吧~
    的頭像 發表于 10-21 15:34 ?1170次閱讀
    Android端自<b class='flag-5'>定義</b>鈴聲 MobPush對<b class='flag-5'>安</b><b class='flag-5'>卓</b>端自<b class='flag-5'>定義</b>鈴聲的教程

    【原創】Dex分包架構設計—實現熱修復

    【原創】Dex分包架構設計—實現熱修復回復即可獲取下載鏈接[hide=d15]鏈接:http://pan.baidu.com/s/1c2fYJZy 密碼:iw16 學習群:150923287 [/hide]
    發表于 07-26 17:50

    基于的視頻遙控小車——紅外詳解

    ,感覺這東西涉及到傅里葉變換,音頻是正弦波,紅外信號是方波,直接用音頻驅動是有誤差的吧,我也不是很懂,數學不好。網上我搜到這篇是【用實現的
    發表于 06-29 00:22

    如何看待鴻蒙系統兼容系統?

    網絡看到很多人討論鴻蒙和,有人說鴻蒙就是換皮版的,有人說鴻蒙兼容,有
    發表于 10-10 11:06

    鴻蒙 vs 六大維度對比

    以是其他(PPT里這么寫的)。微內核顯然在架構上會更有優勢,可以在速度、續航上領先。性能系統也有很多的弊端,基于開源代碼的設計,系統運行產生的垃圾文件會越來越多,時間一長,手機的性能就會明顯下降
    發表于 12-07 14:13

    支持RISC-V架構的技術剖析

    本帖最后由 jf_11671167 于 2021-10-9 10:29 編輯 關鍵詞:、玄鐵C910、虛擬機、RISC-V架構,RISC-V操作系統,IoT芯片,嵌入式操作系統,AOSP
    發表于 09-01 15:45

    系統DIY教程

    系統DIY教程,私人訂制系統功能,介紹如何增加,刪除系統功能。
    發表于 05-06 16:54 ?18次下載

    系統存在漏洞,可無需獲得用戶許可就能捕獲視頻和音頻

    手機有遭殃了,安全公司Checkmarx發現,系統存在一個漏洞,讓惡意應用無需用戶許可就能錄制視頻、拍攝照片和捕獲音頻,并將內容上傳
    的頭像 發表于 11-20 16:09 ?2715次閱讀

    鴻蒙系統是基于

    有網友詢問鴻蒙系統是基于嗎?答案:鴻蒙系統并不是基于與鴻蒙手機操作系統都是基于L
    的頭像 發表于 06-18 16:17 ?3.1w次閱讀

    鴻蒙是基于嗎 鴻蒙與區別

    很多人很好奇鴻蒙系統和卓有什么關系?鴻蒙系統是基于系統研發而成的?鴻蒙系統與系統有什么區別?下面將為大家詳細介紹鴻蒙系統與
    的頭像 發表于 07-10 09:36 ?4.6w次閱讀

    I BUS適配器BMW音頻

    電子發燒友網站提供《I BUS適配器BMW音頻.zip》資料免費下載
    發表于 08-05 10:01 ?0次下載
    I BUS適配器BMW<b class='flag-5'>安</b><b class='flag-5'>卓</b><b class='flag-5'>音頻</b>

    主板_MTK6765開發板-聯發科主板方案介紹

    主板_MTK6765開發板-搭載聯發科(MediaTek)MTK6765處理器,這款高性能ARM處理器被廣泛應用于個人移動互聯網設備和其他應用程序。MT6765采用了八核Cor
    的頭像 發表于 10-11 19:27 ?1556次閱讀
    <b class='flag-5'>安</b><b class='flag-5'>卓</b>主板_MTK6765<b class='flag-5'>安</b><b class='flag-5'>卓</b>開發板-聯發科<b class='flag-5'>安</b><b class='flag-5'>卓</b>主板方案介紹

    谷歌15將提升對助聽器支持,改善音頻體驗

    5 月 30 日,谷歌正式公布了 15 更新計劃,將大幅度提升系統對助聽器的支持程度,使其可與具備藍牙 LE 音頻技術的助聽器無縫對
    的頭像 發表于 05-30 15:11 ?1169次閱讀
    主站蜘蛛池模板: 欲插爽乱浪伦骨| 日韩黄色软件| 人与禽物videos另类| 亚洲精品成人A8198A片漫画| 草莓视频在线观看免费观看高清 | 亚洲成年人在线观看| 短篇合集纯肉高H深陷骚 | 诱人的女邻居9中文观看| 国产一区二区三区内射高清| 小学生偷拍妈妈视频遭性教育 | av老司机色爱区综合| 芒果视频看片在线观看| 中文字幕网站在线观看| 玖玖爱这里只有精品视频| 在线观看国产精美视频| 久久AV无码AV高潮AV不卡| 一个人在线观看免费视频| 久久66热在线视频精品| 在线伦理电影网| 媚药调教被撑到合不拢h| 91精品国产91| 欧美人妇无码精品久久| 成人永久免费视频| 色翁荡熄月月| 国产伦精品一区二区免费| 校园刺激全黄H全肉细节文| 国产永不无码精品AV永久| 亚洲影院在线播放| 伦理片免费秋霞e| ebc5恐怖5a26房间| 手机在线国产视频| 国产在线亚洲精品观| 在线视频免费观看| 欧美日韩高清一区二区三区| 东北疯狂xxxxbbbb中国| 亚洲AV无码一区二区色情蜜芽 | 123成人站| 情欲.美女高潮| 国产情侣真实露脸在线| 永久久久免费人妻精品| 欧美日韩精品一区二区三区四区 |