Andriod音訊基礎概念

2021-09-25 12:47:12 字數 750 閱讀 5767

聲音響度:(loudness)

音調:(pitch)

音色:(quality)

音訊取樣:audio sampling ,將聲波波形訊號通過adc轉換成計算機的二進位制訊號的過程。

取樣:(sampling)的核心是將連續的模擬訊號轉換為離散的數碼訊號

pcm:pulse code moduation 脈衝編碼調製

音訊幀:(frame)在實際應用中,為了音訊演算法處理方便,一般將2.5ms~60ms為單位的資料量為一幀音訊。

引數:某音訊訊號的取樣率為8khz、雙通道、位寬為16bit,則一幀音訊資料的大小為

int size = 8000hz216bit*0.02s=5120bit=640bit

asoc 被分為machine platform和codec三個部分,其中machine驅動負責platform和codec之間的耦合和裝置或板子待定的**。

platform驅動的主要作用是完成音訊資料的管理,最終通過cpu的數字音訊介面dal把音訊資料傳送給codec進行處理,最終由codec輸出驅動耳機或者是喇叭的音訊訊號。

machine:用於描述裝置元件資訊和特定的控制如耳機、外放。是指某一款機器,machine幾乎是不重複使用的,每個machine上的硬體實現可能不一樣,cpu不一樣,音訊的輸入、輸出不一樣,machine為cpu和code、輸入輸出裝置提供乙個載體。

單獨的platform和codec驅動是不能工作的,它必須由machine驅動把它們結合在一起才能完成整個音訊裝置的處理工作。

Andriod下音訊的相關操作

audiomanger物件通過getsystemservice service.audio service 獲取 audiomanger常用的幾個方法void android.media.audiomanager.adjuststreamvolume int streamtype,int direc...

ALSA 音訊概念

為了能支援2 44.1k的取樣率,系統必須支援如下的速度 圖我就不挪了 自己看原版吧 現在 alsa每秒都中斷。那麼我們每秒都需要176400byte資料準備好,才能供上乙個 雙通道 16 位 44.1k的音訊流。我們可以通過設定period size 來控制pcm中斷的產生。如果我們設定乙個16位...

Andriod 系統移植基礎

1.linux中的相關裝置驅動程式 驅動程式是硬體與上層軟體的介面,手機中需要基本的螢幕,ctp,鍵盤,音訊,攝像頭,的modem,wifi,bt 等多種裝置的驅動程式。2.andriod本地框架中的硬體抽象層。硬體抽象層工作在使用者空間,介於驅動程式與andriod系統之間。andriod系統對硬...