Linux音效卡驅動

2021-10-19 09:08:57 字數 1219 閱讀 5595

記得是初中還是高中物理,裡面說過聲音是由物體振動產生,然後通過空氣傳播到耳朵裡。

把耳朵換成咪頭,聲音振動咪頭,改變了咪頭兩端的電壓,adc再採集電壓,就記錄了音訊資料;反之,將記錄的資料通過dac轉成電壓,通過運放放大,就使喇叭振動就產生了聲音。

這整個過程,涉及聲音質量的引數有三個:

在linux音效卡驅動的發展中,最開始使用的音效卡驅動框架是oss(open sound system)。

從2.6版本開始,alsa(advanced linux sound architecture)成為linux核心中預設的標準音訊驅動程式集,oss則被標記為廢棄。

oss和alsa的主要區別:

後面編寫的驅動,將採用alsa框架。

因此,整個音效卡框架涉及的驅動可能有soc的dma、i2s、i2c以及codec驅動。

tiny4412的音效卡部分原理圖如下,所採用的codec晶元為wm8960,該電路大致可分為四部分:

① iis介面,負責exynos4412和wm8960之間的資料傳輸

function

soccodec

note

date

xi2scdclk0

mclk

系統時鐘

xi2ssclk0

bclk

資料時鐘

xi2slrck0

daclrc

左右聲道切換

xi2ssdo0_0

datdat

xi2ssdi0

adcdat

資料輸入(錄音)

② i2c介面,負責exynos4412對wm8960暫存器的配置

function

soccodec

note

control

xi2cscl0

sclk

i2c時鐘

xi2csda0

sdin

i2c資料

③ 錄音

採用咪頭和耳機介面進行錄音;

linux音效卡驅動框架 ALSA簡介

alsa的 檔案在 sound core 該目錄包含了alsa驅動的中間層,它是整個alsa驅動的核心部分 core oss 包含模擬舊的oss架構的pcm和mixer模組 core seq 有關音序器相關的 include alsa驅動的公共頭檔案目錄,該目錄的標頭檔案需要匯出給使用者空間的應用程...

linux驅動編寫(音效卡驅動之asoc移植)

linux下面的音效卡驅動很複雜,根本不是一篇部落格能夠說清楚的。所以,本片文章的目的就是讓同學門快速入門。或者,換句話說,它可以幫助大家在基本了解linux音效卡框架的條件下完成音效卡移植工作。1 linux音效卡驅動在哪個目錄 sound 2 oss alsa asoc是什麼關係 oss是最老的...

ALSA驅動Debian音效卡

在最初使用debian的時候並沒有仔細的注意過linux的音效卡驅動,雖然在早一些的時候就已經曉得了alsa是乙個相當不錯的音效卡驅動,但是因為自己的安裝使用經歷一直比較的順利,也便沒有安裝這個來驅動音效卡,但是最近幾天,debian不曉得是怎麼了,不高興的樣子,想要聽個 來輕鬆,竟然一點也唱不起來...