RK3399 Linux4.4 Audio (simple-card)開發指南
RK3399的CPU採用big.LITTLE大小核架構,雙Cortex-A72大核+四Cortex-A53小核結構,對整數、浮點、記憶體等作了大幅最佳化,在整體效能、功耗及核心面積三個方面都具革命性提升。 RK3399的GPU採用四核ARM新一代高階影像處理器Mali-T860,整合更多頻寬壓縮技術:如智慧迭加、ASTC、本地畫素儲存等,還支援更多的圖形和計算介面,總體效能比上一代提升45%。
盈鵬飛科技最新研發的RK3399安卓主機板,搭載了最新android7.1 系統,4G DDR3記憶體,32G EMMC 存諸等...RK3399開發板主機板尺寸為:146*102mm,設計有非常豐富的介面,板載5路UART,支援USB3.0高效能裝置介面, WIFI/BT二合一,HDMI OUT 、HDMI INT、Type C、4G、IR、乙太網等;可擴充套件模組包括4G模組、Camera(1300萬、500萬)等應用類功能模組。
RK3399安卓主機板為消費類電子、智慧終端、MID、無線通訊、醫療裝置、工業控制等行業產品的應用開發而設計,超強的影片處理能力,超高畫質影片輸出優勢, 接 口豐富、效能穩定。支援Android\Linux\Ubuntu系統,軟體支援完善,開放原始碼適合企業二次開發帶高畫質顯示的商顯廣告機、自助售貨機、教育終端等,可降低研發門檻,縮短產品研發週期。
音訊開發指南
一個音效卡包含 cpu_dai, codec_dai, 以及 dai_link 組成,分別對應 cpu dai 的 dirver,比如I²S driver, spdif driver; codec driver, 比如 rt5640 codec driver; dai_link driver,也就是 machine driver, 比如 sound/soc/rockchip/rockchip_rt5640.c。 4.4 的核心中支援兩種方式建立音效卡,一種是通用的 simple-card framework,一種是傳統的編寫自定義的 machine driver 來建立。 本文件均以 rt5640 為例。
simple-card
Simple card 即簡單通用的 machine driver, 如果 simple-card 框架足夠滿足需求,建議 優先使用 simple card 框架,簡單,方便,且易用。
1.新增 codec driver,比如新增:sound/soc/codec/rt5640.c
2.修改 sound/soc/codec/Kconfig 以及 Makefile 加入驅動編譯
3.menuconfig 中 enable simple card 以及 codec
4.產品的 DTS 中新增 Simple Card Node
需要注意的是,如上 rt5640 的 clocks 即 mclk, upstream 程式碼遵循誰使用 clk 誰申請的原 則,所以後續自己新增的 codec driver,如果有使用外部 clk 作為 mclk,需要做同樣的適配。
自定義的 Machine Driver
simple card 不足以滿足需求時,這個時候就需要編寫相對應的 machine driver,比如: sound/soc/rockchip/rockchip_rt5640.c,然後在這個 machine driver 新增特殊的控制,路由等等。這裡不做舉例,延續原有的格式,以及目錄下均有參考程式碼可作為參照。
盈鵬飛嵌入式專注於Atmel、TI、NXP、Rockchip等平臺產品的研發。公司團隊擁有超過10年的ARM軟硬體開發經驗,擁有智慧家居、人機介面、工業縫紉機、電力採集器等多個成功案例;公司2005年成立至今,主要從事工業控制領域開發,先後開發了以ARM9- AT91SAM9G45、Cortex-A8-335x 、A7- i.MX6UL 、A9-I.MX6Q為主控的各種方案,深入WINCE/LINUX 嵌入式系統開發多年,產品以高穩定性,高可靠性獲得客戶的信賴!2017年我們再出發,依賴工業控制領域多年的設計造詣,公司以創"芯"科技,智造雙贏為經營理念,先後開發了以RK3288、RK3399 等處理器為應用的ANDROID解決方案,承接專案定製、BSP以及APP開發,為客戶提供專業化的量身定製廣告機、消費類電子等解決方案。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31557861/viewspace-2216716/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- RK3399 camera驅動開發
- RK3399開發資料,RK3399晶片效能,RK3399處理器引數,RK3399主機板晶片
- RK3399方案設計RK3399嵌入式開發
- RK3399主機板設計方案,RK3399開發板原理圖
- RK3399 U-Boot開發簡介boot
- 瑞芯微RK3399開發板,RK3399主機板引數介紹
- RK3399全套軟硬體開發資料
- RK3399主機板硬體開發過程
- GCC開發指南GC
- Android Camera開發指南Android
- libusb開發者指南
- MaxCompute Mars開發指南
- SuperTextView 最全開發指南TextView
- 瑞芯微最新開發資料下載--rk3399 ubuntu16.04開發說明Ubuntu
- RK3308 Audio開發方案設計資料下載
- 軟體開發命名指南
- 前端離線開發指南前端
- 以太坊DApp開發指南APP
- Web 開發進階指南Web
- Go微服務開發指南Go微服務
- Redis開發使用指南Redis
- Postgresql 使用Vscode開發指南SQLVSCode
- RK3399開發板 RK818 電量計DTS配置說明
- 瑞芯微平臺RK3399主機板PCBA開發設計
- Go Web開發入坑指南GoWeb
- SlimPHP開發指南四:Slim\AppPHPAPP
- 平庸開發者的生存指南
- HarmonyOS 位置服務開發指南
- MaxCompute 圖計算開發指南
- 鴻蒙開發案例:指南針鴻蒙
- rk3399 開源主機板簡介
- Audio Editor | 線上H5音訊編輯器 - 使用指南H5音訊
- 如何採購ARM六核RK3399安卓工控開發主機板?安卓
- 在RK3399開發板香橙派Orange Pi 4B上使用dockerDocker
- 乾貨|關於RK3399開發板硬體設計的二三事
- Android開發之音訊配置檔案audio_policy.conf解析全過程Android音訊
- Sentry 開發者貢獻指南 - SDK 開發(事件負載)事件負載
- Sentry 開發者貢獻指南 - SDK 開發(效能監控)