Բովանդակություն:
- Քայլ 1: ESP32 առանձնահատկություններ և սահմանափակումներ
- Քայլ 2: Տեսանյութի ձևաչափ
- Քայլ 3: Աուդիո ձևաչափ
- Քայլ 4: Փոխակերպման ձևաչափ
- Քայլ 5: Սարքավորման պատրաստում
- Քայլ 6: SD ինտերֆեյս
- Քայլ 7: Դրեք այն միասին
- Քայլ 8: րագիր
- Քայլ 9: Հենանիշ
- Քայլ 10: Ուրախ խաղ:
Video: Տեսանյութ նվագարկել ESP32- ով ՝ 10 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:45
Այս Instructables- ը ինչ -որ բան ցույց է տալիս ESP32- ով տեսանյութ և աուդիո նվագարկելու մասին:
Քայլ 1: ESP32 առանձնահատկություններ և սահմանափակումներ
Հատկություններ
- 4 SPI ավտոբուս, 2 SPI ավտոբուս հասանելի են օգտվողի համար, դրանք SPI2 և SPI3 են կամ կոչվում են HSPI և VSPI: Երկու SPI ավտոբուսները կարող են աշխատել առավելագույնը 80 ՄՀց հաճախականությամբ: Տեսականորեն այն կարող է 320x240 16-բիթանոց գունավոր պիքսելներ փոխանցել SPI LCD- ին 60 կ / վրկ արագությամբ, սակայն այն դեռ չի հաշվել տեսանյութի տվյալները կարդալու և վերծանելու համար պահանջվող ժամանակը:
- 1-բիթ / 4-բիթ SD ավտոբուսը կարող է միացնել SD քարտը մայր արձանագրության մեջ
- I2S ներքին DAC աուդիո ելք
- ավելի քան 100 ԿԲ RAM հասանելի է վիդեո և աուդիո բուֆերի համար
- JPEG (խաղալ Motion JPEG) և LZW տվյալների սեղմում (խաղալ Animated GIF) վերծանման բավականաչափ մշակման հզորություն
- Երկմիջուկ տարբերակը կարող է SD քարտից կարդալ տվյալները բաժանել, վերծանել և մղել դեպի SPI LCD զուգահեռ բազմակողմանի առաջադրանքների և բարձրացնել նվագարկման կատարումը
Սահմանափակումներ
- ոչ բավարար ներքին RAM ՝ 1620 բիթանոց 320x240 համար կրկնակի շրջանակային բուֆեր ունենալու համար, այն սահմանափակեց բազմակողմանի դիզայնը: Այն կարող է մի փոքր հաղթահարել արտաքին PSRAM- ով, չնայած այն ավելի դանդաղ է, քան ներքին RAM- ը
- ոչ բավարար մշակման հզորություն ՝ mp4 տեսանյութը վերծանելու համար
- ESP32- ի ոչ բոլոր տարբերակներն ունեն 2 միջուկ, բազմաֆունկցիոնալ նմուշը օգուտ է բերում միայն երկմիջուկ տարբերակին
Հղում ՝
Քայլ 2: Տեսանյութի ձևաչափ
RGB565
Կամ 16-բիթանոց գույնը տվյալների հում ձևաչափ է, որը սովորաբար օգտագործվում է MCU- ի և գունավոր ցուցադրման միջև հաղորդակցության համար: Յուրաքանչյուր գունային պիքսել ներկայացված է 16-բիթանոց արժեքով, առաջին 5-բիթը կարմիր է, 6-բիթին հաջորդում է կանաչ արժեքը, այնուհետև 5-բիթ կապույտ արժեքը: 16-բիթանոց արժեքը կարող է կատարել 65536 գույնի տատանում, այնպես որ այն կոչվում է նաև 64K գույն: Այսպիսով, 1 րոպեանոց 320x240@30 fps տեսանյութի չափը կլինի ՝ 16 * 320 * 240 * 30 * 60 = 2211840000 բիթ = 276480000 բայթ կամ ավելի քան 260 ՄԲ
Անիմացիոն GIF
Սա 1990 -ականներից համացանցում տարածված ֆայլի ձևաչափ է: Այն սահմանափակում է գույնի տատանումները յուրաքանչյուր էկրանի համար մինչև 256 գույն և չի կրկնում պիքսելների պահպանումը նույն գույնի, ինչ նախորդ շրջանակը: Այսպիսով, դա կարող է շատ նվազեցնել ֆայլի չափը, հատկապես, երբ յուրաքանչյուր անիմացիոն շրջանակ չափազանց շատ մանրամասներ չի փոխում: LZW սեղմումը նախագծված է 1990 -ականների համակարգչով ունակ վերծանման համար, այնպես որ ESP32- ն ունի նաև բավականաչափ մշակման հզորություն `այն իրական ժամանակում վերծանելու համար:
Շարժման JPEG
Կամ կոչվում է M-JPEG / MJPEG ՝ տեսագրման սեղմման սովորական ձևաչափ ՝ տեսագրման սարքավորումների համար ՝ մշակման սահմանափակ հզորությամբ: Իրականում դա պարզապես դեռ JPEG շրջանակների միացում է: Համեմատեք MPEG- ի կամ MP4- ի հետ, Motion JPEG- ը կարիք չունի միջշրջանակային կանխատեսման հաշվարկային ինտենսիվ տեխնիկայի, յուրաքանչյուր շրջանակ անկախ է: Այսպիսով, այն պահանջում է ավելի քիչ ռեսուրս ՝ կոդավորելու և վերծանելու համար:
Հղում ՝
hy.wikipedia.org/wiki/List_of_monochrome_a…
hy.wikipedia.org/wiki/GIF
hy.wikipedia.org/wiki/Motion_JPEG
Քայլ 3: Աուդիո ձևաչափ
PCM
Թվային ձայնի համար տվյալների հում ձևաչափ: ESP32 DAC- ն օգտագործում է 16-բիթանոց խորություն, այսինքն յուրաքանչյուր 16-բիթանոց տվյալ ներկայացնում է թվային նմուշառված անալոգային ազդանշան: Տեսանյութերի և երգերի աուդիոներից շատերը սովորաբար օգտագործում են ընտրանքի արագությունը 44100 ՄՀց հաճախականությամբ, ինչը նշանակում է 44100 նմուշառված անալոգային ազդանշան յուրաքանչյուր վայրկյանի համար: Այսպիսով, 1 րոպեանոց մոնո աուդիո PCM հումքի տվյալները չափվելու են ՝ 16 * 44100 * 60 = 42336000 բիթ = 5292000 բայթ կամ ավելի քան 5 ՄԲ: Ստերեո աուդիոի չափը կրկնակի կլինի, այսինքն ՝ ավելի քան 10 ՄԲ
MP3
MPEG Layer 3- ը սեղմված աուդիո ձևաչափ է, որը լայնորեն օգտագործվում է 1990 -ականներից երգերի սեղմման համար: Այն կարող է կտրուկ նվազեցնել ֆայլի չափը մինչև հում PCM ձևաչափի մեկ տասներորդը
Հղում ՝
hy.wikipedia.org/wiki/Pulse-code_modulatio…
hy.wikipedia.org/wiki/MP3
Քայլ 4: Փոխակերպման ձևաչափ
Այս նախագիծը FFmpeg- ի միջոցով փոխակերպում է տեսանյութը ESP32 ընթեռնելի ձևաչափի:
Ներբեռնեք և տեղադրեք FFmpeg- ը նրանց պաշտոնական կայքում, եթե դեռ չկա ՝
Փոխարկեք PCM աուդիո
ffmpeg -i input.mp4 -f u16be -acodec pcm_u16le -ar 44100 -ac 1 44100_u16le.pcm
Փոխարկեք MP3 աուդիո
ffmpeg -i input.mp4 -ar 44100 -ac 1 -q: a 9 44100.mp3
Փոխարկեք RGB565- ի
ffmpeg -i input.mp4 -vf "fps = 9, scale = -1: 176: դրոշներ = lanczos, բերք = 220: in_h: (in_w -220)/2: 0" -c: v rawvideo -pix_fmt rgb565be 220_9fps rgb
Փոխարկեք անիմացիոն GIF- ին
ffmpeg -i input.mp4 -vf "fps = 15, scale = -1: 176: դրոշներ = lanczos, բերք = 220: in_h: (in_w -220)/2: 0, պառակտում [s0] [s1]; [s0] palettegen [p]; [s1] [p] paletteuse "-loop -1 220_15fps.gif
Փոխարկեք շարժման JPEG- ին
ffmpeg -i input.mp4 -vf "fps = 30, scale = -1: 176: դրոշներ = lanczos, բերք = 220: in_h: (in_w -220)/2: 0" -q: v 9 220_30fps.mjpeg
Նշում:
FFmpeg- ի փոխակերպված անիմացիոն GIF- ը կարող է հետագայում օպտիմալացվել որոշ վեբ գործիքների միջոցով, մեկը գտնելու համար կարող եք որոնել GIF- ի օպտիմալացուցիչ:
Քայլ 5: Սարքավորման պատրաստում
ESP32 Dev տախտակ
Dualանկացած երկմիջուկ ESP32 dev տախտակ պետք է լավ լինի, այս անգամ ես օգտագործում եմ TTGO ESP32-Micro:
Գունավոր ցուցադրում
Arduino_GFX- ի աջակցած ցանկացած գունավոր էկրան պետք է լավ լինի, այս անգամ ես օգտագործում եմ ILI9225 կոտրիչ տախտակ ՝ SD քարտի բնիկով:
Arduino_GFX- ի աջակցությամբ գունավոր ցուցադրման ցուցակը կարող եք գտնել Github- ում ՝
github.com/moononournation/Arduino_GFX
SD քարտ
SDանկացած SD քարտ պետք է լավ լինի, այս անգամ ես օգտագործում եմ SanDisk «նորմալ արագությամբ» 8 ԳԲ միկրո SD ՝ SD ադապտերով:
Աուդիո
Եթե ցանկանում եք օգտագործել միայն ականջակալներ, պարզապես միացրեք ականջակալների կապում 26 -րդ կապին, իսկ GND- ն կարող է լսել ձայնը: Կամ դուք կարող եք օգտագործել փոքր ուժեղացուցիչ ՝ բարձրախոսով աուդիո նվագարկելու համար:
Մյուսները
Որոշ տախտակներ և տախտակի լարեր
Քայլ 6: SD ինտերֆեյս
ILI9225 LCD ճեղքման տախտակը ներառում էր նաև SD crd բնիկի ճեղքման կապում: Այն կարող է օգտագործվել որպես SPI ավտոբուս կամ 1-բիթանոց SD ավտոբուս: Ինչպես նշվեց իմ նախորդ հրահանգներում, ես նախընտրում եմ օգտագործել 1-բիթանոց SD ավտոբուս, այնպես որ այս նախագիծը հիմնված կլինի 1-բիթանոց SD ավտոբուսի վրա:
Քայլ 7: Դրեք այն միասին
Վերոնշյալ նկարները ցույց են տալիս փորձարկման հարթակը, որը ես օգտագործում եմ այս նախագծում: Սպիտակ տախտակը 3D տպագրված է, կարող եք ներբեռնել և տպել այն thingiverse կայքում ՝
Իրական կապը կախված է նրանից, թե որ սարքավորումն եք ձեռքին:
Ահա կապի ամփոփագիրը.
ESP32
Vcc -> LCD Vcc GND -> LCD GND GPIO 2 -> SD D0/MISO -> 1k դիմադրություն -> Vcc GPIO 14 -> SD CLK GPIO 15 -> SD CMD/MOSI GPIO 18 -> LCD SCK GPIO 19 -> LCD MISO GPIO 22 -> LCD LED GPIO 23 -> LCD MOSI GPIO 27 -> LCD DC/RS GPIO 33 -> LCD RST
Հղում ՝
Քայլ 8: րագիր
Arduino IDE
Ներբեռնեք և տեղադրեք Arduino IDE- ն, եթե դեռ դա չեք անում.
www.arduino.cc/hy/main/software
ESP32 աջակցություն
Հետևեք տեղադրման հրահանգներին ՝ ESP32 աջակցություն ավելացնելու համար, եթե դեռ դա չեք անում.
github.com/espressif/arduino-esp32
Arduino_GFX գրադարան
Ներբեռնեք Arduino_GFX- ի վերջին գրադարանները. (Սեղմեք «Կլոնավորել կամ ներբեռնել» -> «Ներբեռնել ZIP»)
github.com/moononournation/Arduino_GFX
Ներմուծեք գրադարաններ Arduino IDE- ում: (Arduino IDE «Էսքիզ» ընտրացանկ -> "Ներառել գրադարանը" -> "Ավելացնել. ZIP գրադարան" -> ընտրել ներբեռնված ZIP ֆայլ)
ESP8266 Աուդիո
Ներբեռնեք վերջին ESP8266 Աուդիո գրադարանները. (Սեղմեք "Կլոնավորել կամ ներբեռնել" -> "Ներբեռնել ZIP")
github.com/earlephilhower/ESP8266Audio
Ներմուծեք գրադարաններ Arduino IDE- ում: (Arduino IDE «Էսքիզ» ընտրացանկ -> "Ներառել գրադարանը" -> "Ավելացնել. ZIP գրադարան" -> ընտրել ներբեռնված ZIP ֆայլ)
RGB565_video Նմուշի կոդ
Ներբեռնեք RGB565_video- ի վերջին նմուշի կոդը ՝ (սեղմեք «Կլոնավորել կամ ներբեռնել» -> «Ներբեռնել ZIP»)
github.com/moononournation/RGB565_video
SD քարտի տվյալներ
Փոխարկված ֆայլերը պատճենեք SD քարտի մեջ և տեղադրեք LCD քարտի բնիկի մեջ
Կազմել և վերբեռնել
- Բացեք SDMMC_MJPEG_video_PCM_audio_dualSPI_multitask.ino Arduino IDE- ում
- Եթե դուք չեք օգտագործում ILI9225, փոխեք դասի նոր ծածկագիրը (տող 35 -ի մոտ) `դասի անունը շտկելու համար
- Կտտացրեք Arduino IDE «Վերբեռնում» կոճակը
- Եթե չհաջողվեց վերբեռնել ծրագիրը, փորձեք անջատել կապը ESP32 GPIO 2 -ի և SD D0/MISO- ի միջև:
- Եթե գտնում եք, որ կողմնորոշումը ճիշտ չէ, նոր դասի կոդի մեջ փոխեք «պտույտի» արժեքը (0-3)
- Եթե ծրագիրը լավ է աշխատում, կարող եք փորձել այլ օրինակ սկսել SDMMC_* - ով
- Եթե չունեք SD քարտի բնիկ կամ չունեք տեղադրված FFmpeg, դեռ կարող եք փորձել SPIFFS_* օրինակ
Քայլ 9: Հենանիշ
Ահա տարբեր տեսանյութերի (220x176) և աուդիո (44100 ՄՀց) ձևաչափերի կատարման ամփոփագիրը.
Ձևաչափ | Շրջանակ վայրկյանում (կ / վրկ) |
MJPEG + PCM | 30 |
15 | |
RGB565 + PCM | 9 |
MJPEG + MP3 | 24 |
Նշում:
- MJPEG + PCM- ը կարող է հասնել ավելի բարձր կադր / վրկ, բայց դա ավելորդ է խաղալ 30 կ / վրկ -ից ավելի փոքր էկրանին
- RGB565- ը չի պահանջում վերծանման գործընթաց, սակայն տվյալների չափը չափազանց մեծ է և շատ ժամանակ է ծախսվում SD- ից, 4-բիթանոց SD ավտոբուսից և ավելի արագ SD քարտից տվյալների բեռնման ժամանակ, ինչը կարող է մի փոքր բարելավել այն (վայրի գուշակությունը կարող է հասնել մոտ 12 կ / վրկ)
- MP3 վերծանման գործընթացը դեռ օպտիմիզացված չէ, այն այժմ հատկացված է առանցքային 0 -ին MP3 վերծանման համար և 1 -ին ՝ տեսահոլովակ նվագարկելու համար
Քայլ 10: Ուրախ խաղ:
Այժմ կարող եք տեսանյութ և աուդիո նվագարկել ձեր ESP32- ով, այն բացեց բազմաթիվ հնարավորություններ:
Կարծում եմ, որ մի փոքր խաղողի բերքահավաք հեռուստատեսություն կանեմ ավելի ուշ…
Խորհուրդ ենք տալիս:
Մանդալա տեսահոլովակի հմայիչ տեսանյութ. 6 քայլ
Տեսահոլովակի հմայիչ մանդալա. Այս հրահանգում ես ձեզ ցույց կտամ, թե ինչպես ստեղծել հմայիչ, գեներացնող վիդեո մանդալա `օգտագործելով միայն տեսախցիկ և մոնիտոր, որը սովորաբար կարող եք գտնել մանրածախ խանութում մոտ $ 50 -ով: Էկրանի պատկերը կստեղծվի առանց որևէ բան
Ձեր iPhone- ով տեսանյութ պատրաստելու և այն Facebook կամ YouTube բեռնելու արագ ուղեցույց. 9 քայլ
Ձեր iPhone- ով տեսանյութ պատրաստելու և այն Facebook- ում կամ YouTube- ում ներբեռնելու արագ ուղեցույց. Օգտագործեք այս 5 -քայլանոց պարզ գործընթացը (Instructables- ը այն ավելի շատ քայլերի տեսք ունի, քան իրականում է) `ստեղծելու և վերբեռնելու ձեր առաջին YouTube կամ Facebook տեսանյութերը` օգտագործելով միայն ձեր iPhone- ը
Սկսելով ESP32 CAM - - ով Հոսքային տեսանյութ ESP CAM- ի միջոցով WiFi- ով - ESP32 Անվտանգության տեսախցիկի նախագիծ. 8 քայլ
Սկսելով ESP32 CAM | - ով Հոսքային տեսանյութ ESP CAM- ի միջոցով WiFi- ով | ESP32 Անվտանգության տեսախցիկի նախագիծ. Այսօր մենք կսովորենք, թե ինչպես օգտագործել այս նոր ESP32 CAM տախտակը և ինչպես կարող ենք այն ծածկագրել և օգտագործել որպես անվտանգության տեսախցիկ և ստանալ WiFi- ով հոսող տեսանյութ
Ինչպես պատրաստել պառակտված էկրանով տեսանյութ չորս քայլով. 4 քայլ (նկարներով)
Ինչպես չորս մասնաբաժնով էկրանին տեսաֆիլմ պատրաստել. Մենք հաճախ տեսնում ենք, որ նույն անձը երկու անգամ ցուցադրվում է տեսարանում `հեռուստատեսային ներկայացման ժամանակ: Եվ ինչպես մենք գիտենք, դերասանը երկվորյակ եղբայր չունի: Մենք նաև դիտել ենք, որ երկու երգի տեսահոլովակներ տեղադրվում են մեկ էկրանին `համեմատելու նրանց երգելու հմտությունները: Սա spl- ի ուժն է
Կառուցեք ձեր սեփական սպասավոր ռոբոտը !!! - Ուսուցում, լուսանկարներ և տեսանյութ. 58 քայլ (նկարներով)
Կառուցեք ձեր սեփական սպասավոր ռոբոտը !!! - Ուսումնական ձեռնարկ, լուսանկարներ և տեսանյութեր. Խմբագրել. Իմ նախագծերի մասին ավելի շատ տեղեկություններ իմ նոր կայքէջում `narobo.com: Ես նաև խորհրդատվություն եմ տրամադրում ռոբոտաշինության, մեխատրոնիկայի և հատուկ էֆեկտների նախագծերի/ապրանքների համար: Լրացուցիչ մանրամասների համար այցելեք իմ կայքը ՝ narobo.com: Երբևէ ցանկացե՞լ եք բութլեր ռոբոտ, որը խոսում է ձեզ հետ