ዝርዝር ሁኔታ:
- ደረጃ 1 የ ESP32 ባህሪዎች እና ገደቦች
- ደረጃ 2 የቪዲዮ ቅርጸት
- ደረጃ 3 የኦዲዮ ቅርጸት
- ደረጃ 4: ልወጣ ቅርጸት
- ደረጃ 5 የሃርድዌር ዝግጅት
- ደረጃ 6: ኤስዲ በይነገጽ
- ደረጃ 7: አንድ ላይ አስቀምጡ
- ደረጃ 8 - ፕሮግራም
- ደረጃ 9: ቤንችማርክ
- ደረጃ 10: ደስተኛ ጨዋታ
ቪዲዮ: ቪዲዮን በ ESP32 ይጫወቱ 10 ደረጃዎች (ከስዕሎች ጋር)
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-31 10:16
ይህ መምህራን በ ESP32 ቪዲዮ እና ድምጽ ስለማጫወት አንድ ነገር ያሳያሉ።
ደረጃ 1 የ ESP32 ባህሪዎች እና ገደቦች
ዋና መለያ ጸባያት
- 4 SPI አውቶቡስ ፣ 2 SPI አውቶቡስ ለተጠቃሚ ቦታ ይገኛል ፣ እነሱ SPI2 እና SPI3 ወይም HSPI እና VSPI ተብለው ይጠራሉ። ሁለቱም የ SPI አውቶቡሶች ቢበዛ 80 ሜኸር ሊሠሩ ይችላሉ። በንድፈ ሀሳብ 320x240 16-ቢት የቀለም ፒክሰሎችን ወደ SPI LCD በ 60 fps መግፋት ይችላል ፣ ግን የቪዲዮውን መረጃ ለማንበብ እና ለመገልበጥ የሚያስፈልገውን ጊዜ ገና አልቆጠረም።
- 1-ቢት / 4-ቢት ኤስዲ አውቶቡስ የ SD ካርድን በትውልድ ፕሮቶኮል ውስጥ ማገናኘት ይችላል
- I2S ውስጣዊ DAC የድምጽ ውፅዓት
- ከ 100 ኪባ ራም በላይ ለቪዲዮ እና ለድምጽ ቋት ይገኛል
- JPEG ን (Motion JPEG ን ይጫወቱ) እና የ LZW የውሂብ መጭመቂያ (የእነሱን ጂአይኤፍ ይጫወቱ) በቂ የመቀየሪያ ኃይል
- ባለሁለት-ኮር ስሪት ከ SD ካርድ የተነበበ መረጃን መከፋፈል ፣ መፍታት እና ወደ SPI LCD ወደ ትይዩ ባለ ብዙ ተግባራት መግፋት እና የመልሶ ማጫወት አፈፃፀምን ማሳደግ ይችላል።
ገደቦች
- ባለ 16-ቢት ቀለም ለ 320x240 ድርብ ክፈፍ ቋት እንዲኖረው በቂ የውስጥ ራም አይደለም ፣ ባለብዙ ተግባር ዲዛይን ገድቧል። ከውስጣዊው ራም ቢዘገይም ከውጭ PSRAM ጋር ትንሽ ማሸነፍ ይችላል
- mp4 ቪዲዮን ለመለየት በቂ የማቀናበር ኃይል የለም
- ሁሉም የ ESP32 ስሪት 2 ኮር የለውም ፣ ባለብዙ ተግባር ናሙና በሁለት-ኮር ስሪት ላይ ብቻ ይጠቅማል
ማጣቀሻ:
ደረጃ 2 የቪዲዮ ቅርጸት
አርጂቢ565
ወይም 16-ቢት ቀለም ተብሎ የሚጠራው በ MCU እና በቀለም ማሳያ መካከል ባለው ግንኙነት ላይ በተለምዶ የሚውል ጥሬ የውሂብ ቅርጸት ነው። እያንዳንዱ ባለ 16-ቢት እሴት የተወከለው እያንዳንዱ የቀለም ፒክሰል ፣ የመጀመሪያው 5-ቢት ቀይ እሴት ነው ፣ 6-ቢት መከተል አረንጓዴ እሴት ከዚያም 5-ቢት ሰማያዊ እሴት ነው። ባለ 16 ቢት እሴት 65536 የቀለም ልዩነት ሊያደርግ ይችላል ስለዚህ 64 ኪ ቀለሞችንም ይጠራል። ስለዚህ 1 ደቂቃ 320x240@30 fps ቪዲዮ መጠኑ ይሆናል 16 * 320 * 240 * 30 * 60 = 2211840000 ቢት = 276480000 ባይት ወይም ከ 260 ሜባ በላይ
የታነመ ጂአይኤፍ
ይህ ከ 1990 ዎቹ ጀምሮ በድር ላይ የተለመደ የፋይል ቅርጸት ነው። ለእያንዳንዱ ማያ ገጽ እስከ 256 ቀለሞች ድረስ የቀለምን ልዩነት ይገድባል እና እንደ ቀዳሚው ክፈፍ ተመሳሳይ ቀለም ያለውን ፒክሰል አያስቀምጡ። ስለዚህ እያንዳንዱ የእነማ ክፈፍ በጣም ብዙ ዝርዝሮችን በማይቀይርበት ጊዜ የፋይሉን መጠን በእጅጉ ሊቀንስ ይችላል። የ LZW መጭመቂያ በ 1990 ዎቹ ኮምፒዩተር ብቃት ባለው ዲኮዲንግ የተነደፈ ነው ፣ ስለሆነም ESP32 እንዲሁ በእውነተኛ ጊዜ ዲኮዲንግ ለማድረግ በቂ በቂ የማቀናበር ኃይል አለው።
እንቅስቃሴ JPEG
ወይም M-JPEG / MJPEG ተብሎ የሚጠራ ውስን የማቀናበር ኃይል ላለው የቪዲዮ መቅረጫ ሃርድዌር የተለመደ የቪዲዮ መጭመቂያ ቅርጸት ነው። እሱ በእውነቱ አሁንም የጄፒጂ ክፈፎች ውህደት ነው። ከ MPEG ወይም MP4 ጋር ያነፃፅሩ ፣ እንቅስቃሴ JPEG በስሌት (ኢንፍራፍሬም) ትንበያ በስሌት የተጠናከረ ቴክኒክ አያስፈልገውም ፣ እያንዳንዱ ክፈፍ ራሱን የቻለ ነው። ስለዚህ ለማመሳጠር እና ለመለየት ትንሽ ሀብትን ይፈልጋል።
ማጣቀሻ:
am.wikipedia.org/wiki/Mochrome_a ዝርዝር
am.wikipedia.org/wiki/GIF
am.wikipedia.org/wiki/Motion_JPEG
ደረጃ 3 የኦዲዮ ቅርጸት
ፒሲኤም
ለዲጂታል ድምጽ ጥሬ ውሂብ ቅርጸት። ESP32 DAC 16-ቢት ቢት ጥልቀት ይጠቀማል ፣ ያ ማለት እያንዳንዱ 16-ቢት ውሂብ ዲጂታል ናሙና የአናሎግ ምልክትን ይወክላል ማለት ነው። አብዛኛዎቹ የቪዲዮ እና የዘፈን ድምጽ በተለምዶ የናሙና ተመን በ 44100 ሜኸዝ ይጠቀማሉ ፣ ያ ማለት ለእያንዳንዱ ሰከንድ 44100 ናሙና የአናሎግ ምልክት ነው። ስለዚህ ፣ የ 1 ደቂቃ ሞኖ ኦዲዮ ፒሲኤም ጥሬ ውሂብ መጠን ይሆናል - 16 * 44100 * 60 = 42336000 ቢት = 5292000 ባይት ወይም ከ 5 ሜባ በላይ። የስቲሪዮ ድምጽ መጠን ሁለት እጥፍ ይሆናል ፣ ማለትም ከ 10 ሜባ በላይ
MP3
MPEG Layer 3 ከ 1990 ዎቹ ጀምሮ ለዘፈን መጭመቅ በሰፊው ጥቅም ላይ የዋለ የተጨመቀ የድምፅ ቅርጸት ነው። የፋይሉን መጠን በአስረኛ ጥሬ PCM ቅርጸት ስር ሊቀንስ ይችላል
ማጣቀሻ.:
am.wikipedia.org/wiki/Pulse-code_modulatio…
am.wikipedia.org/wiki/MP3
ደረጃ 4: ልወጣ ቅርጸት
ይህ የፕሮጀክት አጠቃቀም ኤፍኤምፔግ ቪዲዮውን ወደ ESP32 ተነባቢ ቅርጸት ይለውጠዋል።
እባክዎን ኤፍኤምፔግን በይፋ ጣቢያቸው ያውርዱ እና ይጫኑት -
ወደ ፒሲኤም ኦዲዮ ይለውጡ
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, ልኬት = -1: 176: ባንዲራዎች = lanczos, ሰብል = 220: in_h: (in_w -220)/2: 0" -c: v rawvideo -pix_fmt rgb565be 220_9fps. rgb
ወደ የታነመ ጂአይኤፍ ይለውጡ
ffmpeg -i input.mp4 -vf "fps = 15, ልኬት = -1: 176: ባንዲራዎች = lanczos, ሰብል = 220: in_h: (in_w -220)/2: 0, [s0] [s1]; [s0] palettegen [p]; [s1] [p] paletteuse "-loop -1 220_15fps.gif
ወደ Motion JPEG ይለውጡ
ffmpeg -i input.mp4 -vf "fps = 30, ልኬት = -1: 176: ባንዲራዎች = lanczos, ሰብል = 220: in_h: (in_w -220)/2: 0" -q: v 9 220_30fps.mjpeg
ማስታወሻ:
ኤፍኤምፔግ የተቀየረ የእነማ ጂአይኤፍ በአንዳንድ የድር መሣሪያዎች የበለጠ ሊሻሻል ይችላል ፣ አንዱን ለማግኘት የ-g.webp" />
ደረጃ 5 የሃርድዌር ዝግጅት
ESP32 ዴቭ ቦርድ
ማንኛውም ባለሁለት-ኮር ESP32 dev ቦርድ እሺ መሆን አለበት ፣ በዚህ ጊዜ እኔ TTGO ESP32-Micro ን እጠቀማለሁ።
የቀለም ማሳያ
የአርዱዲኖ_ጂኤፍኤፍ ድጋፍ የሚስማማው ማንኛውም የቀለም ማሳያ ፣ በዚህ ጊዜ እኔ ከኤስኤዲ ካርድ ማስገቢያ ጋር ILI9225 የማቋረጥ ሰሌዳ እጠቀማለሁ።
በ Github ላይ Arduino_GFX የሚደገፍ የቀለም ማሳያ ዝርዝርን ማግኘት ይችላሉ-
github.com/moononournation/Arduino_GFX
ኤስዲ ካርድ
ማንኛውም የ SD ካርድ እሺ መሆን አለበት ፣ በዚህ ጊዜ እኔ ሳንዲስክ “መደበኛ ፍጥነት” 8 ጊባ ማይክሮ ኤስዲ ከ SD አስማሚ ጋር እጠቀማለሁ።
ኦዲዮ
የጆሮ ማዳመጫ ብቻ መጠቀም ከፈለጉ በቀላሉ የጆሮ ማዳመጫ ፒኖችን ከፒን 26 ጋር ያገናኙ እና GND ኦዲዮውን ማዳመጥ ይችላል። ወይም ድምጽ ማጉያ ጋር ለማጫወት ትንሽ ማጉያ መጠቀም ይችላሉ።
ሌሎች
አንዳንድ የዳቦ ሰሌዳዎች እና የዳቦ ሰሌዳ ሽቦዎች
ደረጃ 6: ኤስዲ በይነገጽ
ILI9225 ኤልሲዲ ማቋረጫ ቦርድ እንዲሁ የ SD crd ማስገቢያ መሰንጠቂያ ፒኖችን አካቷል። እንደ SPI አውቶቡስ ወይም 1 ቢት ኤስዲ አውቶቡስ ሆኖ ሊያገለግል ይችላል። በቀደሙት አስተማሪዎቼ ውስጥ እንደተጠቀሰው ፣ 1 ቢት ኤስዲ አውቶቢስን መጠቀም እመርጣለሁ ፣ ስለዚህ ይህ ፕሮጀክት በ 1 ቢት ኤስዲ አውቶቡስ ላይ የተመሠረተ ይሆናል።
ደረጃ 7: አንድ ላይ አስቀምጡ
ከላይ ያሉት ሥዕሎች በዚህ ፕሮጀክት ውስጥ የምጠቀምበትን የሙከራ መድረክ ያሳያሉ። ነጩ የዳቦ ሰሌዳ 3 ዲ ታትሟል ፣ ማውረድ እና በነገር ላይ ማተም ይችላሉ -
ትክክለኛው ግንኙነት በየትኛው ሃርድዌር በእጁ ላይ እንዳለ ይወሰናል።
የግንኙነት ማጠቃለያ እነሆ-
ESP32
Vcc -> LCD Vcc GND -> LCD GND GPIO 2 -> SD D0/MISO -> 1k resistor -> Vcc GPIO 14 -> SD CLK GPIO 15 -> SD CMD/MOSI GPIO 18 -> LCD SCK GPIO 19 -> LCD ሚሶ ጂፒዮ 22 -> ኤልሲዲ LED GPIO 23 -> LCD MOSI GPIO 27 -> LCD DC/RS GPIO 33 -> LCD RST
ማጣቀሻ:
ደረጃ 8 - ፕሮግራም
አርዱዲኖ አይዲኢ
እስካሁን ካላደረጉት Arduino IDE ን ያውርዱ እና ይጫኑት
www.arduino.cc/en/main/software
የ ESP32 ድጋፍ
እስካሁን ካላደረጉት የ ESP32 ድጋፍ ለማከል የመጫኛ መመሪያዎችን ይከተሉ
github.com/espressif/arduino-esp32
Arduino_GFX ቤተ -መጽሐፍት
የቅርብ ጊዜዎቹን የ Arduino_GFX ቤተ -ፍርግሞችን ያውርዱ ((«Clone or Download» -> «ዚፕ አውርድ» ን ይጫኑ)
github.com/moononournation/Arduino_GFX
በአርዱዲኖ አይዲኢ ውስጥ ቤተመፃሕፍት ያስመጡ። (አርዱዲኖ አይዲኢ “ንድፍ” ምናሌ -> “ቤተ -መጽሐፍትን ያካትቱ” -> “. ZIP ቤተ -መጽሐፍትን ያክሉ” -> የወረደውን ዚፕ ፋይል ይምረጡ)
ESP8266 ኦዲዮ
የቅርብ ጊዜውን ESP8266 ኦዲዮ ቤተ -ፍርግሞችን ያውርዱ ((“Clone or Download” -> “ዚፕ አውርድ” ን ይጫኑ)
github.com/earlephilhower/ESP8266Audio
በአርዱዲኖ አይዲኢ ውስጥ ቤተመፃሕፍት ያስመጡ። (አርዱዲኖ አይዲኢ “ንድፍ” ምናሌ -> “ቤተ -መጽሐፍትን ያካትቱ” -> “. ZIP ቤተ -መጽሐፍትን ያክሉ” -> የወረደውን ዚፕ ፋይል ይምረጡ)
RGB565_Video ናሙና ኮድ
የቅርብ ጊዜውን የ RGB565_ቪዲዮ ናሙና ኮድ ያውርዱ ((«Clone or Download» -> «ዚፕ አውርድ» ን ይጫኑ)
github.com/moononournation/RGB565_video
ኤስዲ ካርድ ውሂብ
የተለወጡ ፋይሎችን ወደ ኤስዲ ካርድ ይቅዱ እና ወደ ኤልሲዲ ካርድ ማስገቢያ ያስገቡ
ያጠናቅሩ እና ይስቀሉ
- SDMMC_MJPEG_video_PCM_audio_dualSPI_multitask.ino ን በአርዲኖ አይዲኢ ውስጥ ይክፈቱ
- ILI9225 ን የማይጠቀሙ ከሆነ የክፍል ስም ለማስተካከል አዲሱን የክፍል ኮድ (በመስመር 35 ዙሪያ) ይለውጡ
- የአርዱዲኖ አይዲኢ “ስቀል” ቁልፍን ይጫኑ
- ፕሮግራሙን መስቀል ካልቻሉ በ ESP32 GPIO 2 እና SD D0/MISO መካከል ያለውን ግንኙነት ለማለያየት ይሞክሩ
- ዝንባሌው ትክክል ካልሆነ ፣ በአዲሱ የክፍል ኮድ ውስጥ የ “ሽክርክር” እሴቱን (0-3) ይለውጡ
- ፕሮግራሙ በጥሩ ሁኔታ ከሄደ በ SDMMC_* ሌላ ናሙና ለመጀመር መሞከር ይችላሉ።
- የ SD ካርድ ማስገቢያ ከሌለዎት ወይም FFmpeg ካልጫኑ አሁንም SPIFFS_* ምሳሌን መሞከር ይችላሉ
ደረጃ 9: ቤንችማርክ
ለተለያዩ ቪዲዮ (220x176) እና ኦዲዮ (44100 ሜኸ) ቅርጸት የአፈጻጸም ማጠቃለያ እነሆ-
ቅርጸት | ፍሬም በሰከንድ (fps) |
MJPEG + PCM | 30 |
ጂአይኤፍ + ፒሲኤም | 15 |
RGB565 + ፒሲኤም | 9 |
MJPEG + MP3 | 24 |
ማስታወሻ:
- MJPEG + PCM ከፍ ወዳለ fps ሊደርስ ይችላል ፣ ግን ከ 30 fps በሚበልጥ በትንሽ ማያ ገጽ ውስጥ አላስፈላጊ ጨዋታ ነው
- RGB565 ዲኮዲንግ ሂደትን አይጠይቅም ፣ ግን የውሂብ መጠኑ በጣም ትልቅ እና ከ SD ፣ 4-ቢት ኤስዲ አውቶቡስ እና ፈጣን የ SD ካርድ በትንሹ በመጨመር ብዙ ጊዜ ያጠፋል (የዱር ግምት ወደ 12 fps አካባቢ ሊደርስ ይችላል)
- የ MP3 ዲኮድ ሂደት ገና አልተሻሻለም ፣ አሁን ለ MP3 ዲኮዲ እና ለቪዲዮ ማጫወት ኮር 1 ን 0 ን ለይቶ ይሰጣል
ደረጃ 10: ደስተኛ ጨዋታ
አሁን በእርስዎ ESP32 ቪዲዮ እና ድምጽ ማጫወት ይችላሉ ፣ ብዙ ዕድሎችን ከፍቷል!
ትንሽ የወይን ተክል ቲቪ የምሰራ ይመስለኛል…
የሚመከር:
M5STACK ቪዲዮን በመጠቀም M5StickC ESP32 ላይ የሙቀት መጠንን ፣ እርጥበትን እና ግፊትን እንዴት ማሳየት እንደሚቻል - ማድረግ ቀላል ነው - 6 ደረጃዎች
M5STACK Visuino ን በመጠቀም በ M5StickC ESP32 ላይ የሙቀት መጠንን ፣ እርጥበትን እና ግፊትን እንዴት ማሳየት እንደሚቻል - ማድረግ ቀላል ነው - በዚህ መማሪያ ውስጥ የ ENV ዳሳሽ (DHT12 ፣ BMP280 ፣ BMM150)
ትንሽ Raspberry Pi የአውታረ መረብ አገልጋይ ይሰኩ እና ይጫወቱ 6 ደረጃዎች (ከስዕሎች ጋር)
Plug & Play Tiny Raspberry Pi የአውታረ መረብ አገልጋይ - በቅርብ ጊዜ ፣ በሁለት Raspberry Pi 1 Model A+ ላይ እጆቼን በርካሽ አግኝቻለሁ። ስለ Pi ሞዴል A ካልሰሙ ፣ ከፒሮ ዜሮ የሚበልጥ እና ከመደበኛ Raspberry Pi ያነሰ ከሆነው የ Raspberry Pi የመጀመሪያ ቅርፅ አንዱ ነው። ሁል ጊዜ እፈልጋለሁ
ሙዚቃን ከአርዱዲኖ ጋር ይጫወቱ! 5 ደረጃዎች (ከስዕሎች ጋር)
ሙዚቃን ከአርዱዲኖ ጋር ይጫወቱ! - በዚህ ትምህርት ውስጥ እኔ አርዱዲኖ UNO እና የ SD ካርድ ሞዱል በመጠቀም ሙዚቃ እንዴት እንደምጫወት አሳያችኋለሁ። እኛ የ SPI ግንኙነትን እንጠቀማለን። እንጀምር
Stepper Motor ን በመጠቀም ዘፈኖችን ይጫወቱ !!: 11 ደረጃዎች (ከስዕሎች ጋር)
Stepper Motor ን በመጠቀም ዘፈኖችን ያጫውቱ !!: ይህ ፕሮጀክት ቀለል ያለ ተለዋዋጭ በይነገጽን ስለማዘጋጀት ነው ፣ ይህም በሁለት የተለያዩ መንገዶች ከእግረኛ ሞተር ጋር መስተጋብር ለመፍጠር ያስችላል። ቀላል GUI ፣ እሱም h
በአራት ደረጃዎች የተከፈለ ማያ ገጽ ቪዲዮን እንዴት ማድረግ እንደሚቻል -4 ደረጃዎች (ከስዕሎች ጋር)
በአራት ደረጃዎች የተከፈለ ማያ ገጽ ቪዲዮን እንዴት ማድረግ እንደሚቻል - ብዙ ጊዜ በቴሌቪዥን ጨዋታ ውስጥ አንድ ሰው በትዕይንት ላይ ሁለት ጊዜ ሲያሳይ እናያለን። እና እኛ እስከምናውቀው ተዋናይ መንታ ወንድም የለውም። እንዲሁም የዘፈን ችሎታቸውን ለማወዳደር ሁለት የዘፈን ቪዲዮዎች በአንድ ማያ ገጽ ላይ ሲቀመጡ ተመልክተናል። ይህ የ spl ኃይል ነው