移植pjsip到嵌入式linux下多dsp埠問題

2021-09-30 04:46:38 字數 562 閱讀 4324

想把pjsip移植到嵌入式linux下,該裝置有多個fxs/fxo埠,每個埠對應乙個dsp通道。pjsip目前只是對音效卡類裝置進行支援,實現的pjsua也僅僅對乙個音效卡裝置支援,並不支援多埠。

在移植中,可以考慮如下方法:

1、把每個fxs/fxo埠對應的dsp通道適配成乙個音效卡裝置,對pjsua改造,呼叫的時候,指定使用哪乙個音訊裝置

方法好處就是完全支援pjmedia現有的**框架,基本不改動原有流程和**。

pjsip庫公升級時,原有自己實現的裝置不受影響

2、在pjsip**中進行攔截,攔截收發報文時決定使用的那個通道

該方法修改了pjsip流程,在以後pjsip庫需要公升級時,需要同步修改

3、把整個dsp適配成乙個音效卡裝置,擴充套件引數,來通知dsp使用哪個通道

該方法同樣要修改pjsip**,對以後公升級不利

因此,最好的方法,就是把dsp的每個通道適配成乙個音訊裝置,混音功能同樣適配成mix裝置。

後註:經過對pjmedia**仔細研究,發現其實把dsp適配成音效卡裝置非常簡單。參照pjmdeia提供的一些音效卡驅動,很容易就寫出自己的音效卡驅動來

ubuntu移植到嵌入式平台

ubuntu乙個以桌面應用為主的開源gnu linux作業系統。ubuntu 用在pc的intel框架,我們比較熟悉,ubuntu 在arm平台下執行,可能比較陌生。以下我們介紹ubuntu 14.04 到dlt rk3288 arm平台上。使用到的硬體平台 dlt rk3288 補充說明 雖然dl...

libcurl移植到嵌入式ARM

curl 庫的主要功能是用不同的協議連線不同的伺服器,也就是相當封裝了的 socket 的協議庫,libcurl 當前支援 等常用協議,libcurl 也支援https 證書授權,是網路程式開發的一把利器。unzip curl curl 7 50 0.zip 也可以把目錄名字修改為libcurl m...

嵌入式移植

深度學習嵌入式移植 1 移植原因 演算法必須在優化後的硬體上執行,因為學習成千上萬的資料可能需要長達幾周的時間。移動端其實不需要做tranning,只需要進行propagating,所以問題集中在移動端能不能存放並執行更大的network。2 常見的移動端開發裝置 nvidiajetsontx1 t...