91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何用MCU播放SD卡視頻?——合宙Air105最新demo帶你輕松上手

合宙LuatOS ? 2022-05-31 10:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

近期好些小伙伴看到SD卡視頻播放效果覺(jué)得很不錯(cuò),詢問(wèn)有沒(méi)有相關(guān)教程。

今天我們將以合宙高性能超值款MCU——Air105開(kāi)發(fā)板為例進(jìn)行講解

在進(jìn)行之前先說(shuō)一下原理,原理很簡(jiǎn)單——就是通過(guò)MCU,將SD卡中的視頻字節(jié)流數(shù)據(jù)讀出來(lái)在LCD上繪制。

01相關(guān)準(zhǔn)備工作


硬件準(zhǔn)備:

Air105開(kāi)發(fā)板

LCD擴(kuò)展板

Micro SD讀寫(xiě)卡模塊

SD卡

排線、面包板若干

注:Air101/Air103開(kāi)發(fā)板也可同樣準(zhǔn)備,目前demo音頻支持尚在開(kāi)發(fā)中,敬請(qǐng)期待。

9788c476-e035-11ec-b80f-dac502259ad0.jpg

軟件準(zhǔn)備:

開(kāi)始準(zhǔn)備視頻字節(jié)流數(shù)據(jù),我們需要用到FFmpeg這款開(kāi)源和跨平臺(tái)的多媒體軟件。官方下載win版本的壓縮包,獲得其中的ffmpeg.exe。

參見(jiàn)https://www.ffmpeg.org/

97bb6c5a-e035-11ec-b80f-dac502259ad0.png

02 視頻文件制作


文件準(zhǔn)備:

首先準(zhǔn)備好一段要播放的視頻,和之前的ffmpeg.exe放到一起。

97e79cf8-e035-11ec-b80f-dac502259ad0.png

Windows PowerShell命令輸入:

Windows PowerShell輸入如下命令,即可將視頻轉(zhuǎn)為160x128分辨率的字節(jié)流文件:

.\ffmpeg-imwsy.mp4-r20-vfscale=160:128-pix_fmtrgb565be-vcodecrawvideomwsy.rgb

9806bf3e-e035-11ec-b80f-dac502259ad0.png

然后將生成的mwsy.rgb放在SD卡中:

98499926-e035-11ec-b80f-dac502259ad0.png

03 編寫(xiě)播放代碼


代碼很簡(jiǎn)單,首先初始化LCD,之后初始化并掛載SD,然后就是讀視頻向LCD進(jìn)行draw。


手機(jī)上下滑動(dòng)或橫屏查看:

sys.taskInit(function()
--初始化lcd
spi_lcd = spi.deviceSetup(5,pin.PC14,0,0,8,48*1000*1000,spi.MSB,1,1)
log.info("lcd.init",
lcd.init("st7735",{port = "device",pin_dc = pin.PE08 ,pin_rst = pin.PC12,pin_pwr = pin.PE09,direction = 3,w = 160,h = 128,xoffset = 1,yoffset = 2},spi_lcd))
--初始化sd
local spiId = 2
local result = spi.setup(
spiId,--串口id
255, -- 不使用默認(rèn)CS腳
0,--CPHA
0,--CPOL
8,--數(shù)據(jù)寬度
400*1000 -- 初始化時(shí)使用較低的頻率
)
local TF_CS = pin.PB3
gpio.setup(TF_CS, 1)
--fatfs.debug(1) -- 若掛載失敗,可以嘗試打開(kāi)調(diào)試信息,查找原因
fatfs.mount("SD", spiId, TF_CS, 24000000)
local data, err = fatfs.getfree("SD")
if data then
log.info("fatfs", "getfree", json.encode(data))
else
log.info("fatfs", "err", err)
end

local video_w = 160
local video_h = 128
local rgb_file = "mwsy.rgb"

local buff_size = video_w*video_h*2
local file_size = fs.fsize("/sd/"..rgb_file)
print("/sd/"..rgb_file.." file_size",file_size)

local file = io.open("/sd/"..rgb_file, "rb")
if file then
local file_cnt = 0
local buff = zbuff.create(buff_size)
repeat
if file:fill(buff) then
file_cnt = file_cnt + buff_size
lcd.draw(0, 0, video_w-1, video_h-1, buff)
sys.wait(20)
end
until( file_size - file_cnt < buff_size )
local temp_data = file:fill(buff,0,file_size - file_cnt)
lcd.draw(0, 0, video_w-1, video_h-1, buff)
sys.wait(30)
file:close()
end

while 1 do
sys.wait(1000)
end

end)

最新demo源碼:

https://gitee.com/openLuat/LuatOS/tree/master/demo/video_play/Air105

04視頻播放效果


988cc930-e035-11ec-b80f-dac502259ad0.gif

好了,享受不一樣的時(shí)光~

今天就講解到這里,快拿出開(kāi)發(fā)板動(dòng)手試試。合宙MCU系列demo持續(xù)更新中,敬請(qǐng)關(guān)注!

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    147

    文章

    18917

    瀏覽量

    397886
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    猛!MCU模組:Air1601/1602雙星出擊!

    在嵌入式開(kāi)發(fā)中,你是否曾面臨這樣的困境:高清UI渲染依賴昂貴高端芯片、圖像處理頓、多網(wǎng)通信協(xié)同復(fù)雜、工業(yè)級(jí)穩(wěn)定設(shè)計(jì)繁瑣……Air1601/Ai
    的頭像 發(fā)表于 02-13 14:05 ?431次閱讀
    猛!<b class='flag-5'>合</b><b class='flag-5'>宙</b><b class='flag-5'>MCU</b>模組:<b class='flag-5'>Air</b>1601/1602雙星出擊!

    高效接入語(yǔ)音交互:模組音頻方案如何選?

    本文特別分享4G模組選型與硬件設(shè)計(jì)要點(diǎn),為開(kāi)發(fā)者提供實(shí)用參考。 一、模組音頻支持概況 從主芯片是否原生支持音頻功能來(lái)看,4G模組大致可分為兩類(lèi): 1.1 主芯片支持音頻功能 比如:經(jīng)典老
    的頭像 發(fā)表于 02-08 14:59 ?598次閱讀
    高效接入語(yǔ)音交互:<b class='flag-5'>合</b><b class='flag-5'>宙</b>模組音頻方案如何選?

    SD NAND、TF、SD的應(yīng)用領(lǐng)域大揭秘

    在如今這個(gè)數(shù)據(jù)爆炸的時(shí)代,各類(lèi)存儲(chǔ)設(shè)備猶如繁星般閃耀,而SD NAND、TFSD更是其中的佼佼者。它們看似相似,實(shí)則各有千秋,在不同的領(lǐng)域和場(chǎng)景中發(fā)揮著獨(dú)特的作用。今天,就讓我們
    的頭像 發(fā)表于 11-30 15:16 ?940次閱讀
    <b class='flag-5'>SD</b> NAND、TF<b class='flag-5'>卡</b>、<b class='flag-5'>SD</b><b class='flag-5'>卡</b>的應(yīng)用領(lǐng)域大揭秘

    迅為Hi3403開(kāi)發(fā)板極速啟航 | 手把手帶你玩轉(zhuǎn)核心例程,輕松上手AI視覺(jué)!

    迅為Hi3403開(kāi)發(fā)板極速啟航 | 手把手帶你玩轉(zhuǎn)核心例程,輕松上手AI視覺(jué)!
    的頭像 發(fā)表于 11-19 13:56 ?1712次閱讀
    迅為Hi3403開(kāi)發(fā)板極速啟航 | 手把手<b class='flag-5'>帶你</b>玩轉(zhuǎn)核心例程,<b class='flag-5'>輕松</b><b class='flag-5'>上手</b>AI視覺(jué)!

    解鎖存儲(chǔ)密碼:SD NAND、TF、SD的應(yīng)用全景

    在數(shù)據(jù)洪流的時(shí)代,存儲(chǔ)介質(zhì)就如同數(shù)字世界的基石,支撐著各類(lèi)設(shè)備的正常運(yùn)轉(zhuǎn)。SD NAND、TFSD,雖同屬NAND Flash存儲(chǔ)介質(zhì)家族,卻因各自獨(dú)特的“個(gè)性”,在不同領(lǐng)域綻放
    的頭像 發(fā)表于 10-29 14:24 ?648次閱讀

    MCU200T上SD讀寫(xiě)流程

    SD MCU200T對(duì)應(yīng)管腳表 SD管腳 FPGA管腳 sd_miso F16
    發(fā)表于 10-29 07:04

    如何使用 M487 微控制器 (MCU) 通過(guò) DAC 在 SD 播放 WAV 文件聲音?

    使用 M487 微控制器 (MCU) 通過(guò) DAC 在 SD 播放 WAV 文件聲音
    發(fā)表于 08-20 06:05

    SDIO SD電路設(shè)計(jì)速成攻略:核心步驟+調(diào)試技巧 !

    Digital Input Output)是一種基于SD標(biāo)準(zhǔn)擴(kuò)展的通用接口,不僅可以應(yīng)用于存儲(chǔ)(如TF/SD),也可以連接其他外部設(shè)
    的頭像 發(fā)表于 08-15 14:32 ?702次閱讀
    SDIO <b class='flag-5'>SD</b><b class='flag-5'>卡</b>電路設(shè)計(jì)速成攻略:核心步驟+調(diào)試技巧 !

    SD—雷龍 SD NAND

    一、SD介紹 1.基本介紹 本質(zhì):nand flash + 控制芯片 1.SD ,Secure Digital Card,稱為安全數(shù)字
    的頭像 發(fā)表于 07-21 17:59 ?3739次閱讀
    <b class='flag-5'>SD</b><b class='flag-5'>卡</b>—雷龍 <b class='flag-5'>SD</b> NAND

    【嵌入式開(kāi)發(fā)】SD—雷龍 SD NAND

    一、SD介紹 1.基本介紹 =本質(zhì):nand flash + 控制芯片= 1.SD ,Secure Digital Card,稱為安全數(shù)字
    發(fā)表于 07-21 17:56

    請(qǐng)問(wèn)k230如何讀取sd播放其中的mp3音頻,他有庫(kù)支持嗎?

    k230如何讀取sd播放其中的mp3音頻,他有庫(kù)支持嗎?
    發(fā)表于 06-04 06:24

    科普|一文帶你認(rèn)清SD、TF、SIM及eSIM,高手請(qǐng)忽略!

    1.定義SD是SecureDigitalCard的英文縮寫(xiě),直譯就是“安全數(shù)字”。一般用于數(shù)碼相機(jī)等,作外存儲(chǔ)器用。TF即是T-Flash
    的頭像 發(fā)表于 05-21 15:56 ?6384次閱讀
    科普|一文<b class='flag-5'>帶你</b>認(rèn)清<b class='flag-5'>SD</b><b class='flag-5'>卡</b>、TF<b class='flag-5'>卡</b>、SIM及eSIM<b class='flag-5'>卡</b>,高手請(qǐng)忽略!

    技術(shù)篇:Air8101視頻錄制常見(jiàn)問(wèn)題與SD讀寫(xiě)性能及上傳阿里云教程詳解!

    本文將以Air8101開(kāi)發(fā)板為例: 實(shí)現(xiàn)MP4視頻錄制,保存到SD以及通過(guò)HTTP POST上傳到阿里云OSS的功能。 ? 在工業(yè)監(jiān)控、智能垃圾分類(lèi)、無(wú)人售貨機(jī)開(kāi)箱取物等等實(shí)際應(yīng)用中
    的頭像 發(fā)表于 05-07 14:14 ?1140次閱讀
    技術(shù)篇:<b class='flag-5'>Air</b>8101<b class='flag-5'>視頻</b>錄制常見(jiàn)問(wèn)題與<b class='flag-5'>SD</b><b class='flag-5'>卡</b>讀寫(xiě)性能及上傳阿里云教程詳解!

    Air8101實(shí)踐指南:視頻錄制+SD存儲(chǔ)+上傳阿里云解析

    本文將以Air8101開(kāi)發(fā)板為例:實(shí)現(xiàn)MP4視頻錄制,保存到SD以及通過(guò)HTTP POST上傳到阿里云OSS的功能。 ? 在工業(yè)監(jiān)控、智能垃圾分類(lèi)、無(wú)人售貨機(jī)開(kāi)箱取物等等實(shí)際應(yīng)用中,
    的頭像 發(fā)表于 05-06 14:18 ?947次閱讀
    <b class='flag-5'>Air</b>8101實(shí)踐指南:<b class='flag-5'>視頻</b>錄制+<b class='flag-5'>SD</b><b class='flag-5'>卡</b>存儲(chǔ)+上傳阿里云解析

    [上手體驗(yàn)]雷龍SD NAND:比TF更小更耐用

    和SPI FLASH以及 NAND FLASH,基本沒(méi)聽(tīng)說(shuō)過(guò)SD NAND。查閱了雷龍官方介紹),得知SD NAND俗稱貼片式TF,雖然SD NAND 和TF
    發(fā)表于 03-08 14:28