本篇文章旨在在RT685平臺(tái)上實(shí)現(xiàn)4組48Khz 32bit2ch的音頻數(shù)據(jù)同時(shí)輸入,然后把收到的數(shù)據(jù)組裝成一路48Khz 32bit 8ch的音頻再通過I2S輸出。這種方案用法,也是應(yīng)客戶要求去做的,因?yàn)榭蛻裟沁呑龀鰜砜偸怯?a class="article-link" target="_blank" href="/baike/522911.html">諧波問題,分析客戶的情況,發(fā)現(xiàn)客戶的主要問題有兩個(gè):
(1) 諧波問題:收到4路8字節(jié)之后直接拷貝到發(fā)送buffer去做,這個(gè)就會(huì)導(dǎo)致時(shí)序上的問題,沒有考慮到音頻數(shù)據(jù)存儲(chǔ)池去緩沖數(shù)據(jù),等到接收足夠音頻數(shù)據(jù),至少要大于拷貝發(fā)送所需要的時(shí)間的問題,所以最后問題體現(xiàn)在客戶測試輸出音頻波形發(fā)現(xiàn)有諧波的問題。
(2) 音頻同步問題:客戶收取4路音頻數(shù)據(jù)之后,測試接收buffer,發(fā)現(xiàn)4路數(shù)據(jù)存在不同步問題。
所以,為了幫助客戶,筆者幫客戶直接做了這個(gè)應(yīng)用demo,并且做了配套的測試音頻源,用來循環(huán)發(fā)送一組48Khz采樣率32bit雙通道,固定遞增的音頻數(shù)據(jù),比如0X00-0XFF循環(huán)發(fā)。
下面是本應(yīng)用平臺(tái)框圖: