Nucleus系統的移動(dòng)終端錄音功能設計
3 錄音功能設計
3.1 軟件設計
手機錄音的主要功能是向用戶(hù)提供使用界面、完成錄音及錄音文件的播放。從程序設計的角度看,它是通過(guò)對現有軟件中的人機界面、操作系統API的調用和對音頻設備的管理來(lái)實(shí)現的。整個(gè)錄音事件處理函數的執行流程如圖3所示。
錄音功能的事件處理模塊的主要功能是對人機界面的錄音請求進(jìn)行響應。為了實(shí)現該功能,錄音事件函數需要完成的工作包括:運行控制變量的初始化,錄音文件的創(chuàng )建,事件狀態(tài)處理器的判斷和狀態(tài)維護,進(jìn)行容錯處理,調用底層處理函數進(jìn)行錄音物理設備的控制,以及和界面模塊的通信。
3.2 軟件調試
由于移動(dòng)終端的系統資源有限而且沒(méi)有相關(guān)的編譯工具,因此嵌入式系統的開(kāi)發(fā)需要借助宿主機(通用計算機)來(lái)編譯出目標機的可執行代碼,交叉編譯是唯一可行的編譯方式。在PC機上設置serial port,把功能實(shí)現代碼分配到整個(gè)手機軟件功能的plutommi、media和llaudio文件夾下,通過(guò)使用編譯命令對各個(gè)文件夾進(jìn)行編譯來(lái)生成可執行程序并下載到手機的NOR Flash中,然后在CPU中運行。
錄音部分的軟件進(jìn)行錄音、錄音暫停、繼續錄音、播放錄音5個(gè)事件處理時(shí),軟件運行過(guò)程中錄音軟件內部的跟蹤程序通過(guò)UART口打印出來(lái)的錄音軟件動(dòng)態(tài)運行信息。當特定的按鍵事件發(fā)生后,錄音界面模塊就會(huì )向其事件處理模塊發(fā)送相應的消息,來(lái)完成事件的處理。當事件開(kāi)啟后驅動(dòng)模塊便與其事件處理模塊進(jìn)行錄音文件中的數據交互。結合對錄音軟件人機界面的仿真測試結果,可以證明整個(gè)錄音軟件播放部分代碼的設計達到了預期目標。
結 語(yǔ)
隨著(zhù)移動(dòng)通信的不斷發(fā)展以及在相應的嵌入式平臺上擴展出來(lái)的新技術(shù)不斷涌現,移動(dòng)設備中的媒體播放功能就顯得尤為重要。本文系統地分析了AMR編解碼原理及相關(guān)的錄音流程,結合錄音和播放功能的測試數據以及對數據的分析結果,可明確看到整個(gè)錄音軟件運行正確。軟件的運行情況和軟件的整體設計相一致。
評論