一、原本的計劃
當(dāng)初想實現(xiàn)音樂相冊,是基于以下考慮:
該開發(fā)板具備硬件解碼JPEG的能力,正好方便實現(xiàn)相冊功能;
該開發(fā)板具備音頻播放接口,只需要外接一個喇叭就可以實現(xiàn)音樂播放功能了;
LVGL本身有動畫函數(shù),可以用來實現(xiàn)類似溶解、百葉窗之類的效果;
該開發(fā)板具備網(wǎng)絡(luò)接口,只需要在板子上實現(xiàn)一個簡單的Web服務(wù)器,就可以實現(xiàn)圖片文件的上傳和替換。
二、SD卡讀寫所遇到的問題
首先從Gitee網(wǎng)站上下載了HMI-Board的SDK,看了一下其中的例子,覺得Video示例和我所要實現(xiàn)的功能最接近。直接用Keil編譯了Video示例,先嘗試燒寫了Video示例,結(jié)果發(fā)現(xiàn)SD卡不能使用,程序無法從SD卡讀出視頻文件,出現(xiàn)如下錯誤:
[W/SDIO] host doesn't support card's voltages!
[E/SDIO] init SDIO card failed
剛開始懷疑SD卡有問題,不過換了多張SD卡之后發(fā)現(xiàn)問題依舊。由于從SD卡加載圖片是實現(xiàn)相冊功能的基礎(chǔ),這個問題不解決就無法繼續(xù),項目一度陷入困境。
后來決定下載RT-Thread Studio,不使用網(wǎng)上的SDK,而是直接用RT-Thread Studio內(nèi)建的Video模板工程,這次編譯下載后程序居然可以正常運行,視頻的運行效果也算是流暢。
終于在8月底解決了SD卡的問題,當(dāng)然就如前面說的9月份沒有能夠抽時間完成最初的設(shè)想,非常遺憾。
三、Video示例的分析
HMI-Board的SDK是一個用于播放AVI視頻的例子,它有很多限制:比如視頻格式必須是MJPG,因為該開發(fā)板只提供了硬件解碼JPEG的能力,而MJPG實際上就是多個JPEG組成的視頻序列;音頻只支持PCM(實際上是s16le格式),這個格式板子的音頻直接支持的,無需解碼。
廠商推薦使用格式工廠來進行所需要的AVI文件格式轉(zhuǎn)換(背后是ffmpeg完成的編碼),且編碼設(shè)置如下面兩個圖所示。


我們嘗試過使用其他編碼軟件,采用和格式工廠相同的音視頻設(shè)置,但是板子上解碼失敗,可能是編碼軟件使用了開發(fā)板不支持的編碼格式。
Video例子沒有啥容錯,一旦發(fā)現(xiàn)無法解碼就會停止運行。有網(wǎng)友在微信群里面反應(yīng)Video例子運行一半就不能顯示視頻了,估計也是視頻中包括了開發(fā)板不支持的編碼。
要修改Video示例實現(xiàn)相冊的功能主要包括以下工作:
修改hmi-board-videoboardlvgldemovideolv_demo_video.c文件的file_explorer_event_cb函數(shù),實現(xiàn)將目錄中的jpg和wav文件讀入;
修改hmi-board-videoboardportsaviplayerplayer.c中的player_entry函數(shù),該函數(shù)完成實際的文件讀入和顯示。
-
編碼器
+關(guān)注
關(guān)注
45文章
3953瀏覽量
142608 -
SD卡
+關(guān)注
關(guān)注
2文章
589瀏覽量
68685 -
Web服務(wù)器
+關(guān)注
關(guān)注
0文章
139瀏覽量
25269 -
RT-Thread
+關(guān)注
關(guān)注
32文章
1613瀏覽量
44821 -
LVGL
+關(guān)注
關(guān)注
2文章
124瀏覽量
4552
發(fā)布評論請先 登錄
顛覆格局 盤點12種不成功的智能硬件
LabVIEW挑戰(zhàn)賽正式開賽,臺北總決賽等著你!
【DIGILENT挑戰(zhàn)賽】+電子相框
5天通過VR學(xué)習(xí)原理圖設(shè)計挑戰(zhàn)賽
5天通過VR學(xué)習(xí)原理圖挑戰(zhàn)賽
分享3天LabVIEW人臉識別挑戰(zhàn)賽設(shè)計心得,贏取學(xué)院課程福利!
【福利加“碼”】鴻蒙線上Codelabs系列挑戰(zhàn)賽第三期:挑戰(zhàn)HarmonyOS分布式趣味應(yīng)用
【獲獎公示】華秋PCB多層板設(shè)計挑戰(zhàn)賽獲獎名單
【精品合集】瑞薩RA4M2物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)計挑戰(zhàn)賽作品合集
PHP教程之PHPstudy安裝不成功的解決方案資料說明
pcb導(dǎo)入不成功?原理圖如何進行ID號的復(fù)位
開發(fā)活動 | 嵌入式GUI挑戰(zhàn)賽報名開啟!參賽申領(lǐng)開發(fā)板
【Renesas GUI挑戰(zhàn)賽】不成功的音樂相冊
評論