999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

移動操作系統音頻單元設計

2017-03-06 17:33:36王佩光操李節
計算機時代 2017年2期
關鍵詞:功能系統

王佩光+操李節

摘 要: 介紹一種移動操作系統音頻模塊設計實現方法。該音頻模塊采用開源項目PulseAudio作為音頻處理單元,用ALSA與底層硬件交互,由AudioManager提供API供上層應用調用,實現操作系統的音頻通路切換與音量調節等功能。文章首先介紹音頻系統架構,然后從音頻控制單元AudioManager出發,詳細介紹系統音頻分類以及AudioManager提供給上層調用的方法,最后介紹音頻通路與音量調節的實現。

關鍵詞: 移動操作系統; 音頻模塊; AudioManager; 通路切換; 音量調節

中圖分類號:TP316 文獻標志碼:A 文章編號:1006-8228(2017)02-01-04

0 引言

音頻系統是移動操作系統不可或缺的子系統之一,它負責處理所有與聲音相關的信息,隨著移動操作系統功能設計的越來越全面和人性化,對音頻的精準控制提出了更高的要求,例如不同情況下不同的輸出方式以及不同模式下的音量調節互不影響。這就對音頻系統的功能提出了更高的要求。android系統的音頻子系統是一款成熟的音頻系統[1-3],谷歌公司為它的音頻系統設計了一套全局音頻管理器——AudioFinger,并精簡了ALSA來與硬件交互。本文所涉及的移動操作系統采用開源項目pulseaudio作為音頻處理單元,并采用ALSA與硬件交互[4-5]。

PulseAudio[6]是一個跨平臺的,可通過網絡工作的聲音服務,它的主要特點包括[7]:

⑴ 可對每一個應用程序進行音量控制;

⑵ 可擴展的插件與支持可裝載模塊架構;

⑶ 兼容性許多流行的音頻應用程序;

⑷ 支持多重音源和多重輸出;

⑸ 低延時操作和支持延遲測量;

⑹ 一個對處理器資源效率零拷貝內存架構;

⑺ 能夠發現本地網絡上使用PulseAudio的其他計算機并通過其揚聲器直接播放聲音;

⑻ 能夠改變一個應用程序的聲音輸出設備,就算這個應用程序在播放聲音(程序不需要支持這個特性,而事實上,程序甚至沒有意識到改變);

⑼ 帶有腳本功能的命令行界面;

⑽ 一個功能完善且帶有命令行重新配置功能的守護進程;

⑾ 內置采樣轉換和重采樣功能;

⑿ 能夠合并多塊聲卡成一個聲卡;

⒀ 能夠同步播放多個音頻流;

⒁ 動態檢測藍牙音頻設備;

⒂ 使全系統均衡的能力。

1 系統架構

安卓音頻系統架構從上到下可以分為5層,從上到下分別:Application、Framework、Libraries、HAL、Linux Kernel。Application為運行在最上層的各種應用,Framework是對Libraries的封裝,為上層Application的開發提供標準接口,Libraries是整個系統的核心,負責完成音頻的控制與處理。本文涉及的音頻系統在層級上與android系統大同小異,同樣分為Application、Framework、Libraries、HAL、Linux Kernel這幾層,但在Framework、Libraries擁有不同的實現方式,具體架構見圖1。

⑴ Framework

Framework層提供兩個模塊,分別為AudioManager模塊與Ngfd模塊。

AudioManager模塊的設計思想源于android系統的AudioManager類,本系統的AudioManager模塊提供了一系列與音量控制相關的方法供上層應用調用,以方便應用程序控制音量。AudioManager又分為三個模塊:Volume、Route、Profile,這三個模塊分別負責音量調節、通路以及策略。AudioManager模塊最終都是通過調用PulseAudio接口來實現對音量的控制。Ngfd模塊提供與振動相關的接口供上層應用調用。

⑵ Libraries

Libraries層提供兩個模塊,分別為PulseAudio和Profiled,其中PulseAudio為開源項目,提供音頻控制相關方法,PulseAudio具體實現方式本文不做探究,Profiled負責提供音頻策略。

2 AndroidManager方法說明

移動操作系統一般具有多種不同類型的音頻,例如:鈴聲、通知、鬧鐘、短消息等等,所以這需求音頻系統能夠對不同類型的音頻分別進行設置,為此,本文將音頻分為如下7種類型(role),放在一個枚舉類型中:

AudioManager控制整個音頻系統由一系列的方法來完成,每種方法具有自己獨特的功能,在本文所設計的音頻系統中,將方法歸結為16種,每種方法的介紹與實現如下。

⑴ Audio Role

AM_ROLE_TYPE getActiveRole()——返回當前活動的Role,其取值是AM_ROLE_TYPE枚舉類型。

⑵ 音量控制

int getVolume(AM_ROLE_TYPE role)——返回指定Role的當前音量,其取值范圍為0~100。輸入參數為Role,其取值AM_ROLE_TYPE枚舉類型。

void setVolume(AM_ROLE_TYPE role, int volume)——設置指定Role的當前音量,其取值范圍為0~100。

⑶ 音量調節

void adjustVolume(AM_ROLE_TYPE role, AM_ADJUST_DIRECTION direction)——側鍵設置音量的接口,其輸入參數除了Role外,還有一個用于指導操作的參數direction,其取值為ADJUST_LOWER,ADJUST_RAISE和ADJUST_SAME三者之一。目前系統的步長音量分為12級。

本文所述音頻系統借鑒android系統的分層架構,采用PulseAudio作為音頻處理單元,完成了音頻策略制定、情景模式切換以及音量調節功能,并提供API供上層開發人員調用。本音頻系統劃分了多種音頻類型,并制定了多種音頻通路,能滿足操作系統多樣化的音頻調節功能需求,但由于有時需要快速地在靜音、振動與正常三種模式之間切換,所以本音頻系統加入了情景模式切換功能,用戶能更便捷的在這三種模式中切換。

參考文獻(References):

[1] 楊豐盛.Android應用開發揭秘[M].機械工業出版社,2010.

[2] 王波濤.移動多媒體技術介紹[M].機械工業出版社,2011.

[3] 韓超,梁泉.Android系統級深入開發——移植與調試[M].電

子工業出版社,2010.

[4] 姚昱旻,劉衛國.Android的架構與應用開發研究[J].計算機系

統應用,2008.11:24,110-112

[5] 李楊,馮剛,李亮,羅擁華.基于Android的多媒體應用開發與

研究[J].計算機與現代化,2011.4:149-152

[6] https://wiki.archlinux.org/index.php/PulseAudio,archlinux

[7] http://www.oschina.net/p/pulseaudio,開源中國,2009.

猜你喜歡
功能系統
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關于非首都功能疏解的幾點思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
主站蜘蛛池模板: 国产成人久久综合一区| 尤物午夜福利视频| 色偷偷一区二区三区| 狠狠色丁婷婷综合久久| 91精品国产丝袜| 97视频在线观看免费视频| 国产在线观看第二页| 91视频青青草| 国产精品自在在线午夜区app| 午夜国产小视频| 亚洲最大综合网| 国产精品无码制服丝袜| 91国内在线观看| 波多野结衣视频一区二区| 91精品专区| 亚洲精品自拍区在线观看| 国产午夜精品一区二区三区软件| 九九免费观看全部免费视频| 老熟妇喷水一区二区三区| 久久亚洲天堂| 中文字幕久久波多野结衣| 久久免费看片| 丁香婷婷激情综合激情| 国产欧美日韩91| 四虎亚洲国产成人久久精品| 黄色三级网站免费| 亚洲国产成人久久77| 国产成在线观看免费视频| 欧洲精品视频在线观看| 97在线碰| h网站在线播放| 精品国产91爱| 久久天天躁狠狠躁夜夜躁| 国产大片喷水在线在线视频| 综合天天色| 欧美在线黄| 日韩免费视频播播| 久久久精品国产SM调教网站| 亚洲综合婷婷激情| 刘亦菲一区二区在线观看| 一级毛片基地| 亚洲美女高潮久久久久久久| 激情综合网激情综合| 69av免费视频| 日本爱爱精品一区二区| 久青草网站| 亚洲精品国产首次亮相| 小说 亚洲 无码 精品| 中国一级毛片免费观看| 玖玖免费视频在线观看| 国产亚洲欧美日韩在线一区二区三区| 大香伊人久久| 欧美不卡在线视频| 日韩一级二级三级| 亚洲日本www| 素人激情视频福利| 国产剧情一区二区| 秘书高跟黑色丝袜国产91在线 | a级毛片免费看| 98精品全国免费观看视频| 啊嗯不日本网站| 欧美精品亚洲日韩a| 亚洲第七页| 国产成年女人特黄特色毛片免| 婷婷亚洲视频| 欧美啪啪一区| 青青国产视频| 国产jizzjizz视频| 国产福利一区在线| 亚洲首页国产精品丝袜| 亚洲第一视频免费在线| 97精品伊人久久大香线蕉| 精品国产一区91在线| 亚洲综合久久成人AV| 精品国产一二三区| 欧美一级在线| 亚洲成人一区在线| 国产精品尹人在线观看| 丁香亚洲综合五月天婷婷| 中文字幕日韩欧美| 国产欧美日韩综合在线第一| 久久网欧美|