為android系統添加USB AUDIO設備的放音和錄音功能


http://blog.csdn.net/adits/article/details/8242146

開發環境簡介

1. 主機系統: Unbuntu10.10
2. android系統版本: 4.0.3(Linux kernel 3.0.8)

綜述

android的音頻系統非常龐大復雜:涉及到java應用程序,java框架層,JNI,本地服務(AudioFlinger和AudioPolicyService),硬件抽象層HAL,ALSA-LIB和ALSA-DRIVER。
本文將先分析音頻系統的啟動與模塊加載流程,並具體分析一個JAVA API的調用流程;最后在此基礎上自然地為android系統添加USB AUDIO設備的放音和錄音功能。
全文可分為如下幾大部分:
1. 本地服務的啟動流程分析。
1.1 AudioFlinger啟動流程及其所涉及的HAL層模塊啟動流程分析。
1.2 AudioPolicyService啟動流程及其所涉及的HAL層模塊啟動流程分析。
2. JAVA API setDeviceConnectionState()調用流程詳解,同時為android系統添加USB AUDIO設備的放音和錄音功能。
3. ALSA-LIB淺述以及asound.conf配置文件的書寫。
4. 重新獲取USB AUDIO設備的硬件參數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM