Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Legge ut brødbrettet
- Trinn 2: Koble til SD -kortet
- Trinn 3: Programvarebibliotekene
- Trinn 4: Plott MP3 -data på den serielle skjermen
Video: Arduino -bibliotek for MP3 -dekoding: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
På grunn av den økte forekomsten av raske mikrokontrollere som ESP32 og ARM M -serien, er MP3 -dekoding ikke lenger nødvendig for spesialutstyr. Avkodingen kan nå gjøres i programvare.
Det er et flott bibliotek tilgjengelig fra earlephilhower som viser hvordan du kan dekode et stort utvalg av lydfiler og spille dem på ESP -mikrokontrollere. Inspirert av dette tilpasset jeg noe av koden for å lage en modulær metode for å lese MP3 -filer på mikrokontrollere.
Mitt håp er at denne metoden vil være generisk nok til bruk på en hurtig nok mikrokontroller (ikke bare et ESP32 -kort), men foreløpig har jeg bare testet på en ESP32.
Rekvisita
Som jeg sa før, håper jeg at denne metoden vil fungere for alle raske mikrokontroller, men det er det kanskje ikke. Derfor trenger du for å replikere resultatene mine:
- Et ESP32 -kort
- SD breakout board
- SD kort
- Jumper Wires
- brødbrett
- mikro -USB -kabel (for å laste opp skisse)
- Arduino IDE
Trinn 1: Legge ut brødbrettet
Plasser ESP32 og SD -kortbrudd på brødbrettet.
Trinn 2: Koble til SD -kortet
SD -korttilkoblingene (ESP32 SD -breakout) er som følger:
GND GND
3v3 VDD
23 DI (MOSI)
19 DO (MISO)
18 SCLK
5 CS
Vær oppmerksom på at disse tilkoblingene vil være forskjellige hvis du bruker en annen mikrokontroller.
Trinn 3: Programvarebibliotekene
hvis du ikke har ESP-IDF installert, gå til nettstedet deres og installer det.
Installer deretter mikrodekoderbiblioteket. Du kan gjøre dette ved å laste ned depotet og plassere det i Arduino Libraries -mappen. Mikrodekoderbiblioteket støtter for tiden.wav- og.mp3 -filer.
Uansett format er det noen få vanlige metoder knyttet til hver klasse, og de er dekket i koden nedenfor. Disse inkluderer å få noen filmetadata og skrive dem ut på den serielle skjermen.
#include "SD.h" // input
#include "mp3.h" // decoder #include "pcm.h" // raw audio data container mp3 MP3; ugyldig oppsett () {Serial.begin (115200); // Setup Serial SD.begin (); // Oppsett SD -tilkobling Filfil = SD.open ("/cc.mp3"); // Åpne en MP3 -fil MP3.begin (fil); // fortell MP3 -klassen hvilken fil som skal behandles MP3.getMetadata (); // få metdadata Serial.print ("Bits per Sample:"); Serial.println (MP3.bitsPerSample); // skrive ut biter per prøve Serial.print ("Sample Rate:"); Serial.println (MP3. Fs); // og sample rate} void loop () {}
Trinn 4: Plott MP3 -data på den serielle skjermen
Med koden nedenfor kan du plotte noen lyddata på den serielle skjermen. Dette vil være veldig sakte, men vil vise deg hvordan du bruker MP3 -biblioteket. Det nedprøver også dataene med en faktor 16, slik at når dataene plottes ut, ser det ut som en lydbølgeform. Denne koden er hentet fra eksemplet SPI_MP3_Serial.ino som følger med mikrodekoderbiblioteket. Selvfølgelig, fremover vil du spille disse lyddata på en eller annen måte, men det er temaet for en annen instruerbar.
#include "SD.h" // input
#inkludere "mp3.h" // dekoder mp3 MP3; // MP3 -klasse pcm -lyd; // oppsett av ugyldige lyddata () {Serial.begin (115200); // Setup Serial SD.begin (); // Oppsett SD -tilkobling Filfil = SD.open ("/cc.mp3"); // Åpne en MP3 -fil MP3.begin (fil); // Send fil til MP3 -klasse} void loop () {audio = MP3.decode (); // Dekode lyddata til pcm klasse / * det er 32 prøver i audio.interleaved (16 venstre og 16 høyre) * men vi skal bare plotte det første datapunktet i hver kanal. * Dette nedprøver effektivt dataene med en faktor 16 (for * bare å se bølgeformen) */ Serial.print (audio.interleaved [0]); // venstre kanal Serial.print (""); Serial.println (audio.interleaved [1]); // høyre kanal}
Anbefalt:
Hvordan lage en MP3 -spiller med LCD ved hjelp av Arduino og DFPlayer Mini MP3 -spillermodul: 6 trinn
Hvordan lage en MP3 -spiller med LCD ved hjelp av Arduino og DFPlayer Mini MP3 -spillermodul: I dag skal vi lage en MP3 -spiller med LCD ved hjelp av Arduino og DFPlayer mini MP3 -spillermodul. Prosjektet kan lese MP3 -filene på SD -kortet og kan sette en pause og spille det samme som enheten for 10 år siden. Og den har også forrige sang og neste sang moro
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Slik laster du fôr til kyr: 9 trinn
Slik laster du fôr til kyr: Alt som lever trenger mat for å overleve. I vinter- og vårmånedene er det ikke gress for kyr å beite på. Dette gjør det veldig viktig at kuene blir matet skikkelig slik at de produserer sunne kalver. I de følgende trinnene vil pr
Talking Arduino - Spille en MP3 med Arduino uten modul - Spille av MP3 -filer fra Arduino ved hjelp av PCM: 6 trinn
Talking Arduino | Spille en MP3 med Arduino uten modul | Spille mp3 -filer fra Arduino ved hjelp av PCM: I denne instruksjonene lærer vi hvordan du spiller en mp3 -fil med arduino uten å bruke noen lydmodul, her skal vi bruke PCM -bibliotek for Arduino som spiller 16 biters PCM med 8 kHz frekvens, så la oss gjøre dette
BOLSITA PARA MP3 Y PARLANTES / LITTLE BAG FOR MP3 SPILLER OG HØYTTALERE: 5 trinn
BOLSITA PARA MP3 Y PARLANTES / LITTLE BAG FOR MP3 PLAYER AND SPEAKERS: Soy nuevo en esto de los instructables, pero este bolsito era lo que queria hacer para escuchar musica en la ducha o para colgarlo al frente de la bicicleta. Y ya que estoy pensando en hacer tutorials en video for my vlog: www.mercenario.org. Penner