(干貨)Ai音箱和Linux音頻驅(qū)動小談

前言

今天跟王總聊天镣典,他狠狠地(形容詞)叼了我镊叁,他說你為什么不寫一些比較牛逼的文章,為什么總是寫一些教別人如何安裝軟件团秽,如何打開軟件的文章主胧,你還妄想用這樣的文章拉攏人心叭首,你是不是腦子進水,是不是腦子進水踪栋,是不是腦子進水焙格,王總連續(xù)說了幾次腦子進水,我當(dāng)時是羞愧萬分夷都,我不知道如何去表達我當(dāng)時的窘境眷唉,我只能默默的低頭跟王總說,我水平太差囤官,我水平太差冬阳,我水平太差,然后王總又跟我說當(dāng)時他在華為做開發(fā)治拿,linux相關(guān)的問題從不過夜摩泪,一年升一個級別,我們在愉快的交談中結(jié)束了午飯時間劫谅,所以我想了很久见坑,有必要結(jié)合AI音箱寫一下Android音頻方面的知識

最近音頻方面的開發(fā)非常火熱捏检,也出現(xiàn)了一些非常牛逼的公司荞驴,訊飛占領(lǐng)老大位置,思必馳贯城,云之聲都有非常完善的AI音箱方案

????對應(yīng)的產(chǎn)品有熊楼,小愛音箱,小度能犯,叮咚鲫骗,天貓精靈,斐訊踩晶,市場一片火熱执泰,做好一個AI音箱,電聲方面的知識是必不可少的渡蜻,我這篇文章主要也是從這個為入口講一些這方面的知識术吝。

正文

一、音頻基礎(chǔ)

(1)采樣率(samplerate)

采樣就是把模擬信號數(shù)字化的過程茸苇,不僅僅是音頻需要采樣排苍,所有的模擬信號都需要通過采樣轉(zhuǎn)換為可以用0101來表示的數(shù)字信號,示意圖如下所示:


藍色代表模擬音頻信號学密,紅色的點代表采樣得到的量化數(shù)值淘衙。采樣頻率越高,紅色的間隔就越密集腻暮,記錄這一段音頻信號所用的數(shù)據(jù)量就越大幔翰,同時音頻質(zhì)量也就越高漩氨。

根據(jù)奈奎斯特理論,采樣頻率只要不低于音頻信號最高頻率的兩倍遗增,就可以無損失地還原原始的聲音。

通常人耳能聽到頻率范圍大約在20Hz~20kHz之間的聲音款青,為了保證聲音不失真做修,采樣頻率應(yīng)在40kHz以上。常用的音頻采樣頻率有:8kHz抡草、11.025kHz饰及、22.05kHz、16kHz康震、37.8kHz燎含、44.1kHz、48kHz腿短、96kHz屏箍、192kHz等。

(2)量化精度(位寬)

上圖中橘忱,每一個紅色的采樣點赴魁,都需要用一個數(shù)值來表示大小,這個數(shù)值的數(shù)據(jù)類型大小可以是:4bit钝诚、8bit颖御、16bit、32bit等等凝颇,位數(shù)越多潘拱,表示得就越精細,聲音質(zhì)量自然就越好拧略,當(dāng)然芦岂,數(shù)據(jù)量也會成倍增大。

常見的位寬是:8bit 或者 16bit

(3)聲道數(shù)(channels)

由于音頻的采集和播放是可以疊加的辑鲤,因此盔腔,可以同時從多個音頻源采集聲音,并分別輸出到不同的揚聲器月褥,故聲道數(shù)一般表示聲音錄制時的音源數(shù)量或回放時相應(yīng)的揚聲器數(shù)量弛随。單聲道(Mono)和雙聲道(Stereo)比較常見,顧名思義宁赤,前者的聲道數(shù)為1舀透,后者為2

二、Android Audio框架

Android用的是C/S的框架决左,就是一個client,一個service,中間是一個HAL作為統(tǒng)一的接口愕够,HAL往下就會到tinyalsa,tinyalsa是alsa的裁剪版本走贪,后面對應(yīng)的就是驅(qū)動層了。



三惑芭、I2S接口介紹

I2S總線標準:I2S(Inter-IC Sound Bus)是飛利浦公司為數(shù)字音頻設(shè)備之間的音頻數(shù)據(jù)傳輸而制定的一種總線標準坠狡。在飛利浦公司的I2S標準中,既規(guī)定了硬件接口規(guī)范遂跟,也規(guī)定了數(shù)字音頻數(shù)據(jù)的格式逃沿。I2S有3個主要信號:

串行時鐘 SCLK:也叫做位時鐘BCLK,即對應(yīng)數(shù)字音頻的每一位數(shù)據(jù)幻锁,SCLK的頻率=2×采樣頻率×采樣位數(shù)?,現(xiàn)在問題來了凯亮,有人會問這些東西到底是什么意思呢?其實哄尔,I2S一般是傳輸立體聲假消,有兩個聲道channel,采樣頻率指得是采樣數(shù)率岭接,多久去采集一個點富拗,每個點是幾個bit組成。

幀時鐘LRCK:用于切換左右聲道的數(shù)據(jù)亿傅,LRCK為“0”表示正在傳輸?shù)氖亲舐暤赖臄?shù)據(jù)媒峡,為“1”表示正在傳輸?shù)氖怯衣暤赖臄?shù)據(jù)。LRCLK == FS,就是采樣頻率

串行數(shù)據(jù)SDATA:就是用二進制補碼表示的音頻數(shù)據(jù)葵擎,有時為了使系統(tǒng)間能夠更好的同步谅阿,還需要另外傳輸一個信號MCLK,稱為主時鐘酬滤,也叫系統(tǒng)時鐘(System Clock)签餐,是采樣頻率的256或384倍

I2S不同的標準介紹:I2S主要是針對ADC和主控,如果ADC設(shè)置的I2S標準和主控的不一致,那么錄音肯定是要出問題的,正常使用的時候氮采,會涉及1bit delay,大家在量I2S波形的時候也可以看出來

BCLK計算:BCLK =LRCLKxbitsxch冠摄,Ch 默認是2,我們現(xiàn)在用的是8ch的數(shù)據(jù)几缭,但是我們用的是4個數(shù)據(jù)線河泳,這時候計算的時候ch還是用2來計算

BCLK =16K x 32bitsx2ch = 1.024M

????????注意:我們在使用CX20810 ADC芯片的時候,CX20810現(xiàn)在是市面上做AI音響用的主流芯片年栓,像叮咚叮咚就是用這個拆挥,里面介紹一個TDM 模式,這個也是一個I2S的標準某抓,不過這個標準是一個DATA線傳8ch的數(shù)據(jù)


四纸兔、TINYALSA子系統(tǒng)

(1)代碼介紹

目前l(fā)inux中主流的音頻體系結(jié)構(gòu)是ALSA(Advanced Linux Sound Architecture)惰瓜,ALSA在內(nèi)核驅(qū)動層提供了alsa-driver,在應(yīng)用層提供了alsa-lib汉矿,應(yīng)用程序只需要調(diào)用alsa-lib(libtinyalsa.so)提供的API就可以完成對底層硬件的操作崎坊。說的這么好,但是Android中沒有使用標準的ALSA负甸,而是一個ALSA的簡化版叫做tinyalsa流强。Android中使用tinyalsa控制管理所有模式的音頻通路,我們也可以使用tinyalsa提供的工具進行查看呻待、調(diào)試。

tinycap.c 實現(xiàn)錄音相關(guān)代碼? tinycap

Tinyplay.c 實現(xiàn)放音相關(guān)代碼 tinyplay

Pcm.c 與驅(qū)動層alsa-driver調(diào)用接口队腐,為audio_hw提供api接口

Tinymix 查看和設(shè)置混音器 tinymix

Tinypcminfo.c 查看聲卡信息tinypcminfo

(2)音頻幀(frame)

這個概念在應(yīng)用開發(fā)中非常重要蚕捉,網(wǎng)上很多文章都沒有專門介紹這個概念。

音頻跟視頻很不一樣柴淘,視頻每一幀就是一張圖像迫淹,而從上面的正玄波可以看出,音頻數(shù)據(jù)是流式的为严,本身沒有明確的一幀幀的概念敛熬,在實際的應(yīng)用中,為了音頻算法處理/傳輸?shù)姆奖愕诠桑话慵s定俗成取2.5ms~60ms為單位的數(shù)據(jù)量為一幀音頻应民。

這個時間被稱之為“采樣時間”,其長度沒有特別的標準夕吻,它是根據(jù)編解碼器和具體應(yīng)用的需求來決定的诲锹,我們可以計算一下一幀音頻幀的大小:

假設(shè)某音頻信號是采樣率為8kHz涉馅、雙通道归园、位寬為16bit,20ms一幀稚矿,則一幀音頻數(shù)據(jù)的大小為:

int size = 8000 x 2 x 16bit x 0.02s = 5120bit = 640 byte

音頻幀總結(jié)

period(周期):硬件中斷間的間隔時間庸诱。它表示輸入延時。

聲卡接口中有一個指針來指示聲卡硬件緩存區(qū)中當(dāng)前的讀寫位置晤揣。只要接口在運行桥爽,這個指針將循環(huán)地指向緩存區(qū)中的某個位置。

frame size?=sizeof(one sample) * nChannels

alsa中配置的緩存(buffer)和周期(size)大小在runtime中是以幀(frames)形式存儲的碉渡。

period_bytes?=pcm_format_to_bits 用來計算一個幀有多少bits聚谁,實際應(yīng)用的時候經(jīng)常用到

?下面有個老外的講的音頻幀,很多解釋都是從這里翻譯來的滞诺,大家自行體味一下

https://www.alsa-project.org/main/index.php/FramesPeriods


五形导、CODEC介紹

(1)專用術(shù)語

?ASLA- Advanced Sound Linux Architecture

?OSS - 以前的Linux音頻體系結(jié)構(gòu)环疼,被ASLA取代并兼容

?Codec - Coder/Decoder

?I2S/PCM/AC97 - Codec與CPU間音頻的通信協(xié)議/接口/總線

?DAI?- Digital Audio Interface 其實就是I2S/PCM/AC97

?DAC - Digit to Analog Conversion

?ADC - Analog to Digit Conversion

?DSP - Digital Signal Processor

?Mixer - 混音器,將來自不同通道的幾種音頻模擬信號混合成一種模擬信號

?Mute - 消音朵耕,屏蔽信號通道

?PCM - Pulse Code Modulation 脈沖調(diào)制編碼炫隶,一種從音頻模擬信號轉(zhuǎn)換成數(shù)字信號的技術(shù),區(qū)別于PCM音頻通信協(xié)議

?SSI - Serial Sound Interface

?DAPM - Dynamic Audio Power Management

(2)放音錄音框圖

(3) OSS和ALSA比較

a.OSS的優(yōu)點(對用戶來說)
在內(nèi)核空間(kernel space)里面包含了一個透明軟件混音器(vmix)阎曹。這樣多個程序就可以同時使用聲音設(shè)備而且沒有任何問題伪阶。
這個混音器可以讓你單獨調(diào)節(jié)各個程序的音量。
對某些老聲卡有著更好的支持比如創(chuàng)新(Creative)的X-Fi处嫌。
聲音程序的初始反應(yīng)時間一般更好栅贴。
對使用OSS的應(yīng)用程序接口(API)的程序有更好的支持,很多程序都支持OSS的API熏迹,而不需要ALSA的模擬檐薯。

b.OSS的優(yōu)點(對開發(fā)者來說)
清晰的API文檔,更易于使用注暗。
支持用戶空間的聲音驅(qū)動坛缕。
可移植性強,OSS也可以在BSDs和Solaris下運行捆昏。
本身可以跨平臺赚楚,可以更方便移植到新的操作系統(tǒng)。


c.ALSA的優(yōu)點
ALSA對USB音頻設(shè)備支持更好骗卜,而OSS的輸出還在試驗中宠页,輸入還未實現(xiàn)。
ALSA支持藍牙聲音設(shè)備膨俐。
ALSA支持AC'97和HDAudio dial-up soft-modems (比如Si3055)勇皇。
ALSA對MIDI支持得更好,但用OSS你只能通過軟件合成器(如timidity和fluidsynth)來使用MIDI焚刺。
ALSA對待機支持更好敛摘,而用OSS,你需要在待機前使用soundoff來停止OSS驅(qū)動乳愉,在恢復(fù)后使用soundon來啟動OSS兄淫。
OSS的jack檢測目前在某些HDAudio-powered主板上不能正常工作。也就是說在某些型號的主板上蔓姚,你可能需要在插入耳機的時候手動關(guān)閉外置揚聲器捕虽。而ALSA沒這個問題。

https://blog.csdn.net/longwang155069/article/details/53256751


d.調(diào)用接口

alsa是多了一個alsa-lib接口坡脐,但是OSS是直接操作設(shè)備文件的泄私,這個差異還是很大的,不過幸運的是,alsa出來后為了兼容oss晌端,也是做了一些修改捅暴。

(4)ASOC介紹


ASOC--ALSA System on Chip (即ALSA在片選系統(tǒng)上的應(yīng)用),是建立在標準ALSA驅(qū)動層上咧纠,為了更好地支持嵌入式處理器和移動設(shè)備中的音頻Codec的一套軟件體系蓬痒。在ASoc出現(xiàn)之前,內(nèi)核對于SoC中的音頻已經(jīng)有部分的支持漆羔,不過會有一些局限性


Codec類: ? ? Codec即編解碼芯片的驅(qū)動梧奢,此Codec驅(qū)動是和平臺無關(guān),包含的功能有: ?音頻的控制接口演痒,音頻讀寫IO接口亲轨,以及DAPM的定義等。如果需要的話鸟顺,此Codec類可以在BT瓶埋,F(xiàn)M,MODEM模塊中不做修改的使用诊沪。因此Codec就是一個可重復(fù)使用的模塊,同一個Codec在不同的SOC中可以使用曾撤。對應(yīng)ak7755.c

Platform類: ?可以理解為某款SOC平臺端姚,平臺驅(qū)動中包括音頻DMA引擎驅(qū)動,數(shù)字接口驅(qū)動(I2S, AC97, PCM)以及該平臺相關(guān)的任何音頻DSP驅(qū)動挤悉。同樣此Platform也可以重用渐裸,在不同的Machine中可以直接重復(fù)使用。

Machine類:??Machine可以理解為是一個橋梁装悲,用于在Codec和Platform之間建立聯(lián)系昏鹃。此Machine指定了該機器使用那個Platform,那個Codec诀诊,最終會通過Machine建立兩者之間的聯(lián)系洞渤。


https://blog.csdn.net/longwang155069/article/details/53321464

https://wiki.archlinux.org/index.php/Advanced_Linux_Sound_Architecture_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

https://www.linuxjournal.com/article/6735



六、音頻相關(guān)調(diào)試技巧

????在調(diào)試錄音和放音的時候属瓣,我們先使用tinyalsa的調(diào)試命令來進行調(diào)試载迄,比如tinycap、tinyplay抡蛙、tinypcminfo

Proc下的音頻調(diào)試介紹:

https://alsa.opensrc.org/Proc_asound_documentation#The_.2Fproc.2Fasound.2Foss.2F_directory


(1)通過命令確認聲卡是否注冊成功

rk3399_mid:/ $ ls /proc/asound/ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

card0 cards ? hwdep rockchipak7755c timers ?

card1 devices pcm ? rockchipi2sdmic version?

$ ls /dev/snd/

(2)xrun debug

? ?我們在調(diào)試音頻的時候护昧,難免會遇到underrun或者overrun,出現(xiàn)此兩者情況時內(nèi)核會打印log協(xié)助問題分析粗截,Menuconfig中需要開啟如下選項:

[*] Advanced Linux Sound Architecture --->

[*] Debug [*] More verbose debug

[*] Enable PCM ring buffer overrun/underrun debugging

然后在對應(yīng)聲卡/proc/asound/card0/xrun中寫入相應(yīng)的值惋耙,值如下:

#define XRUN_DEBUG_BASIC (1<<0)

#define XRUN_DEBUG_STACK (1<<1) /* dump also stack */

#define XRUN_DEBUG_JIFFIESCHECK (1<<2) /* do jiffies check */

比如 echo 1 > xrun或者echo 3 > xrun 或者 echo 7 > xrun

開啟所有debug信息檢測。


Xrun主要是讀寫速度不一致引起的音頻錄音播放異常,之前遇到一個這樣的問題是因為DMA引起的绽榛,在注冊聲卡設(shè)備時會申請一個period_size湿酸,這個size是不能隨意更改大小的,所以大家在寫代碼的時候要注意蒜田。


七稿械、AI智能音響核心點

這部分講的每一點內(nèi)容都是非常核心的,直接影響到AI音箱的整體效果冲粤,包括聲源定位美莫,回聲消除,有很多人反饋為什么我的音箱聲源定位不好梯捕,為什么我的回聲消除效果很差厢呵,我們就要從下面幾個問題點去排查

(1)傀顾、音頻部分

1、做到有效采樣16bits 32bits短曾,(失真、截幅)嫉拐、軟件端對多通道數(shù)據(jù)可以編碼

多通道數(shù)據(jù)采樣同步哩都,采樣率同步婉徘,采樣時鐘同步漠嵌,比如不能出現(xiàn)錄音的時候出現(xiàn)失真情況盖呼。

2儒鹿、錄音的采樣深度理論是越大是越好的,采樣頻率要跟算法部分確認好几晤,訊飛要求的是16K的采樣音頻送給他們的算法

3、播放不能有失真章钾,電聲部分一定要通過嚴格的測試要求热芹,整個掃頻階段都不能出現(xiàn)問題,比如不能出現(xiàn)播放高頻的時候發(fā)現(xiàn)喇叭有低頻的聲音此類問題

(2)伊脓、結(jié)構(gòu)部分

1魁衙、MIC開孔深度株搔、孔徑、構(gòu)型符合標準纵隔;

2炮姨、內(nèi)部音腔隔離,密封性能舒岸;

3、結(jié)構(gòu)震動隔離俄认;震音非常關(guān)鍵洪乍,測試的時候會發(fā)現(xiàn),裝上機構(gòu)后的回聲消除比沒有結(jié)構(gòu)時候差很多役拴,大多是由于增加了結(jié)構(gòu)钾埂,震音結(jié)構(gòu)影響很大科平。

4、喇叭與MIC的距離髓考,不能太近弃酌;

(3)、回聲消除注意

作用:

抑制產(chǎn)品(喇叭)本身發(fā)出的聲音妓湘,使得產(chǎn)品在播放音頻時依然可以進行語音交互;

注意點:

1豌研、需要接參考信號,信號采樣需要符合要求鹃共;

?做到有效采樣

?使用硬采集方案

?參考信號采樣盡量與mic采集到的回聲同步,至少不晚于回聲晶衷;

2阴孟、結(jié)構(gòu)方面需要特別注意;

?內(nèi)部音腔隔離

?震動隔離

?喇叭與MIC的相對位置缸匪;

3类溢、硬件選型方面需要注意凌蔬;

4闯冷、整個采樣系統(tǒng)中的延時要穩(wěn)定;


彩蛋:

?ASR(automaticspeech recognition)把語音轉(zhuǎn)換成文字辩诞,AI算法說的是自我學(xué)習(xí)算法纺涤,所以學(xué)習(xí)是一個非常復(fù)雜的過程,下面是一個鏈接撩炊,有開源的一些模型,感興趣的可以自己拿去學(xué)習(xí)

https://github.com/kaldi-asr/kaldi

https://shiweipku.gitbooks.io/chinese-doc-of-kaldi/content/index.html

微信搜索:嵌入式Linux? 關(guān)注公眾號

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末伯顶,一起剝皮案震驚了整個濱河市骆膝,隨后出現(xiàn)的幾起案子阅签,更是在濱河造成了極大的恐慌,老刑警劉巖政钟,帶你破解...
    沈念sama閱讀 218,755評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異衷戈,居然都是意外死亡殖妇,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,305評論 3 395
  • 文/潘曉璐 我一進店門疲吸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來前鹅,“玉大人,你說我怎么就攤上這事蹂喻∥媸伲” “怎么了?”我有些...
    開封第一講書人閱讀 165,138評論 0 355
  • 文/不壞的土叔 我叫張陵蔓彩,是天一觀的道長驳概。 經(jīng)常有香客問我,道長探膊,這世上最難降的妖魔是什么待榔? 我笑而不...
    開封第一講書人閱讀 58,791評論 1 295
  • 正文 為了忘掉前任锐锣,我火速辦了婚禮绳瘟,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘斤彼。我一直安慰自己,他們只是感情好琉苇,可當(dāng)我...
    茶點故事閱讀 67,794評論 6 392
  • 文/花漫 我一把揭開白布并扇。 她就那樣靜靜地躺著,像睡著了一般土陪。 火紅的嫁衣襯著肌膚如雪肴熏。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,631評論 1 305
  • 那天源哩,我揣著相機與錄音出刷,去河邊找鬼。 笑死崩侠,一個胖子當(dāng)著我的面吹牛坷檩,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播系瓢,決...
    沈念sama閱讀 40,362評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼句灌,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了骗绕?” 一聲冷哼從身側(cè)響起资昧,我...
    開封第一講書人閱讀 39,264評論 0 276
  • 序言:老撾萬榮一對情侶失蹤格带,失蹤者是張志新(化名)和其女友劉穎刹枉,沒想到半個月后屈呕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,724評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡芥吟,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年钟鸵,在試婚紗的時候發(fā)現(xiàn)自己被綠了涤躲。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,040評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡蒙袍,死狀恐怖嫩挤,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情以现,我是刑警寧澤约啊,帶...
    沈念sama閱讀 35,742評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站记盒,受9級特大地震影響外傅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜碾盟,卻給世界環(huán)境...
    茶點故事閱讀 41,364評論 3 330
  • 文/蒙蒙 一奥洼、第九天 我趴在偏房一處隱蔽的房頂上張望晚胡。 院中可真熱鬧嚼沿,春花似錦瓷患、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,944評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽锦担。三九已至,卻和暖如春洞渔,著一層夾襖步出監(jiān)牢的瞬間磁椒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,060評論 1 270
  • 我被黑心中介騙來泰國打工本辐, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留蘸拔,地道東北人。 一個月前我還...
    沈念sama閱讀 48,247評論 3 371
  • 正文 我出身青樓宝冕,卻偏偏與公主長得像邓萨,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子宝剖,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,979評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 一.聲音參數(shù)基本概念: 聲音是連續(xù)模擬量歉甚,計算機將它離散化之后用數(shù)字表示纸泄,就有了以下幾個名詞術(shù)語腰素。 樣本長度(sa...
    cs1001閱讀 2,735評論 0 2
  • 前言: 記載資料多為網(wǎng)絡(luò)搜集雪营,侵刪。 根據(jù)最近接觸的整機項目做了一些整機音頻相關(guān)基礎(chǔ)知識的總結(jié)洋访,如有不足或表述問題...
    Gawain_Knowknow閱讀 8,154評論 0 4
  • 一.聲音參數(shù)基本概念: 聲音是連續(xù)模擬量谴餐,計算機將它離散化之后用數(shù)字表示,就有了以下幾個名詞術(shù)語扶歪。 樣本長度(sa...
    cs1001閱讀 5,402評論 0 3
  • 在移動設(shè)備中摄闸,Codec的作用可以歸結(jié)為4種,分別是: 1.對PCM等信號進行D/A轉(zhuǎn)換炫欺,把數(shù)字的音頻信號轉(zhuǎn)換為模...
    gbmaotai閱讀 17,768評論 4 3
  • 哈哈,終于來到接口部件/電路了硝清,這一章我會帶大家總結(jié)一下這幾個接口:音頻接口、USB士飒、網(wǎng)絡(luò)蔗崎、顯示接口,內(nèi)容較多芳撒,篇...
    BakerZhang閱讀 5,452評論 2 9