![內(nèi)容課件教程_第1頁(yè)](http://file4.renrendoc.com/view/846f4684d6fe0b4a11219092f135af75/846f4684d6fe0b4a11219092f135af751.gif)
![內(nèi)容課件教程_第2頁(yè)](http://file4.renrendoc.com/view/846f4684d6fe0b4a11219092f135af75/846f4684d6fe0b4a11219092f135af752.gif)
![內(nèi)容課件教程_第3頁(yè)](http://file4.renrendoc.com/view/846f4684d6fe0b4a11219092f135af75/846f4684d6fe0b4a11219092f135af753.gif)
![內(nèi)容課件教程_第4頁(yè)](http://file4.renrendoc.com/view/846f4684d6fe0b4a11219092f135af75/846f4684d6fe0b4a11219092f135af754.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
前 編寫目 適用范 相關(guān)人 Androidaudiohal層介 Androidaudiohal層功能介 Androidaudiohal層功 源碼結(jié)構(gòu)介 Androidaudio框架圖如圖2所示 audio相關(guān)術(shù)語介 模塊接口描 音頻設(shè)備定 驅(qū) 函數(shù)接口說 Android 聲音切 3G開發(fā)環(huán)境搭 藍(lán)牙通 本文檔目的是為了讓開發(fā)者了解A31系統(tǒng)框架的Androidaudio適配層,能夠在A31平臺(tái)上開發(fā)新的方案。硬件平臺(tái)A31軟件平臺(tái)exdroid4.1.1_r1-a31-v1.0及以上版本A31Android開發(fā)人員AndroidAndroidaudiohalAndroidaudiohal層是上層應(yīng)用和linux驅(qū)動(dòng)之間的紐帶,功能是:負(fù)責(zé)響應(yīng)上層命令,linuxalsa-liblinuxalsa-driver架構(gòu)實(shí)現(xiàn)控制和數(shù)據(jù)傳輸。實(shí)現(xiàn)。應(yīng)用程序只要調(diào)用Androidaudiohalalsa-lib提供API,即可以完成對(duì)底層音頻硬Androidaudiohal請(qǐng)參見《A31平臺(tái)音頻模塊開發(fā)說明文檔》AndroidaudiohalAndroidaudiohal設(shè)置多種采樣率格式(8khz,11.025KHz,12KHz,16KHz,22.05KHz,24KHz,32KHz,44.1KHz,48KHz,96KHz,192KHz);playback和record(全雙工模式)數(shù)據(jù)傳送支持resample(重采樣)功3g通話功支持功 層代碼存放在 目錄,如圖 所示1androidaudiohal1androidaudioAudioDriver:AdvancedLinuxSoundAdvancedAudioDistributionProfile(藍(lán)牙音頻傳輸高保真模式打的聽筒耳 上加了一個(gè)話筒,即帶話樣本是記頻數(shù)據(jù)最基本的單位,常見的有8位和16 該參數(shù)為1表示單聲道,2則是立體聲幀記錄了一個(gè)聲音單元,其長(zhǎng)度為樣本長(zhǎng)度與通道數(shù)采樣率每秒鐘采樣次數(shù),該次數(shù)是針對(duì)幀而言音頻設(shè)備一次處理所需要的幀數(shù),對(duì)于音頻設(shè)備的數(shù)據(jù)以及音頻數(shù)據(jù)的儲(chǔ),都是以此enumaudio_devices//outputdevicesDEVICE_OUT_EARPIECE=0x1,//聽筒DEVICE_OUT_SPEAKER0x2,//DEVICE_OUT_WIRED_HEADSET0x4,//DEVICE_OUT_WIRED_HEADPHONE0x8,//耳機(jī)(另一種耳機(jī),雙耳聽筒)DEVICE_OUT_BLUETOOTH_SCO=0x10,//藍(lán)牙SCO,用于語音通話DEVICE_OUT_BLUETOOTH_SCO_HEADSET=0x20,//藍(lán)牙SCO耳機(jī)DEVICE_OUT_BLUETOOTH_SCO_CARKIT=0x40,//藍(lán)牙SCO車載DEVICE_OUT_BLUETOOTH_A2DP=0x80,//藍(lán)牙高保真設(shè)備,用于聽音樂DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES0x100,藍(lán)牙高保真耳機(jī)DEVICE_OUT_BLUETOOTH_A2DP_SPEAKER=0x200,//藍(lán)牙高保真揚(yáng)聲器DEVICE_OUT_AUX_DIGITAL=0x400,//輔助數(shù)字輸出,DEVICE_OUT_ANLG_DOCK_HEADSET=0x800,//模擬底座DEVICE_OUT_DGTL_DOCK_HEADSET0x1000,//數(shù)字底座spdifDEVICE_OUT_DEFAULT=0x8000,}音頻設(shè)備的切換是有AudioPolicyService管理的staticintstart_call(structtuna_audio_device ;成功返回0,失敗返回-ENOMEM;-打開通話通路,如果上行和下行都可以打開返回 成功,否則返回失敗staticvoidend_call(structtuna_audio_device ;無返回關(guān)閉start_call打開通話通路 ;無返回設(shè)置通intheadset_mic_on,int ;main_mic_on主麥headset_mic_on耳麥 副麥無返根據(jù)mic驅(qū)動(dòng)的類型設(shè)置輸入的音調(diào)staticvoidforce_all_standby(structtuna_audio_device ;無返回do_output_standydo_input_standyaudioinput等staticvoidselect_mode(structtuna_audio_device ;無返回如果輸入/輸出設(shè)置改變,先關(guān)閉輸入/輸出設(shè)備,然后打開要輸入/輸出的設(shè)staticvoidselect_output_device(structtuna_audio_device ;無返回根據(jù)策略設(shè)置輸出設(shè)備的寄存器,設(shè) eq,音量大小,策略設(shè)置 ;無返回根據(jù)策略設(shè)置輸入設(shè)備的寄存器,音量大小,策略設(shè)置staticintstart_output_stream(structtuna_stream_out 輸出驅(qū)動(dòng)總指針,在adev結(jié)構(gòu)體內(nèi)成功返回0,失敗返回-ENOMEM;-驅(qū)動(dòng),開androidlinux之前重采樣的buffer:out->buffer 采樣 bitsofsample 通道成功返回0,錯(cuò)誤返回-EINVAL;-檢驗(yàn)三個(gè)輸入?yún)?shù)是否正 采樣 bitsofsample 通道錯(cuò)誤返回長(zhǎng)0,否則返回inputcheck_input_parametersperiod_sizesAudioRecordbuffer大小,單位staticintdo_output_standby(structtuna_stream_out 輸出驅(qū)動(dòng)總指針,在adev結(jié)構(gòu)體內(nèi)關(guān)閉所output通路echo等staticintout_standby(structaudio_stream 輸出驅(qū)動(dòng)總指針,在adev結(jié)構(gòu)體內(nèi)返回狀態(tài)調(diào)用do_output_standby,關(guān)閉所有output通路staticintout_set_parameters(structaudio_stream*stream,constchar 強(qiáng)制指針,其實(shí)是輸出驅(qū)動(dòng)總指針,在audioadrv結(jié)構(gòu)體 設(shè)置參數(shù)字ret,是否有這個(gè)參數(shù),本函數(shù)設(shè)置參數(shù),本函數(shù)賦值audio驅(qū)動(dòng)指針,可以供上層調(diào)staticuint32_tout_get_sample_rate(conststructaudio_stream 強(qiáng)制指針,其實(shí)是輸出驅(qū)動(dòng)總指針,在audioadrv結(jié)構(gòu)體返回采樣返回采樣率,本函數(shù)賦值audio驅(qū)動(dòng)指針,可以供上層調(diào)用staticchar*out_get_parameters(conststructaudio_stream*stream,constchar 強(qiáng)制指針,其實(shí)是輸出驅(qū)動(dòng)總指針,在audioadrv結(jié)構(gòu)體 字符串指返回字符返回字符串,本函數(shù)賦值audio驅(qū)動(dòng)指針,可以供上層調(diào)用staticssize_tout_write(structaudio_stream_out*stream,constvoid*buffer,size_tbytes) 強(qiáng)制指針,其實(shí)是輸出驅(qū)動(dòng)總指針,在audioadrv結(jié)構(gòu)體 寫指針的首 buffer返回寫的長(zhǎng)如果沒有打開audio驅(qū)動(dòng),先打開audio驅(qū)動(dòng),如果需要重采樣,進(jìn)行重采樣,如果需要進(jìn)行staticssize_tin_read(structaudio_stream_in*stream,void*buffer,size_t 強(qiáng)制指針,其實(shí)是輸出驅(qū)動(dòng)總指針,在audioadrv結(jié)構(gòu)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國(guó)臺(tái)球呢行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2030年旋轉(zhuǎn)U盤項(xiàng)目投資價(jià)值分析報(bào)告
- 2025至2030年中國(guó)擋風(fēng)板數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國(guó)不飽和聚酯板數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國(guó)三層抽屜拉籃數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025年中國(guó)追剪控制器市場(chǎng)調(diào)查研究報(bào)告
- 2025年中國(guó)碳化鎢鋼刀市場(chǎng)調(diào)查研究報(bào)告
- 福州二手房買賣合同下載2025年官方認(rèn)證版
- 廚房金屬器具的節(jié)能減排技術(shù)考核試卷
- 2025-2030年數(shù)字化溫度校驗(yàn)儀行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 基于數(shù)據(jù)驅(qū)動(dòng)的鋰離子電池剩余使用壽命預(yù)測(cè)方法研究
- 《內(nèi)臟疾病康復(fù)》課件
- 串通招投標(biāo)法律問題研究
- 高原鐵路建設(shè)衛(wèi)生保障
- 家具廠各崗位責(zé)任制匯編
- 顳下頜關(guān)節(jié)盤復(fù)位固定術(shù)后護(hù)理查房
- 硝苯地平控釋片
- 部編版語文六年級(jí)下冊(cè)全套單元基礎(chǔ)常考測(cè)試卷含答案
- 提高檢驗(yàn)標(biāo)本合格率品管圈PDCA成果匯報(bào)
- 2023年保險(xiǎn)養(yǎng)老地產(chǎn)行業(yè)分析報(bào)告
- 世界古代史-對(duì)接選擇性必修(真題再現(xiàn)) 高考?xì)v史一輪復(fù)習(xí)
評(píng)論
0/150
提交評(píng)論