Ahojte, nemate nahodou nejaku teoriu, pripadne prakticke riesenie ako zmerat BPM hudby? Nic poriadne som vygooglit nedokazal Dakujem
Co to je BPM?
A preco v sekcii Microchip?
To je nejaka vlastnost ktoru dodava Microchip do hudby?
BPM je zkratkou beats per minute (údery za minutu) a označuje exaktně rychlost hudební skladby. Úderem se rozumí čtvrťová nota, BPM je tedy počet čtvrťových not za minutu), Např. 60 BPM odpovídá jednomu úderu za vteřinu. Často se ve Střední Evropě používá též označení MM nebo M. M. (zkratka z Mälzlův metronom), neboť se k jejím stanovení používá metronomu.
To je nejaka vlastnost ktoru dodava Microchip do hudby?
myslim ze asi nee
Tak ak sa jedna o meranie taktu, ten by mohol byt urceny bicimi. Zvuky z bicich mozu byt vsak rozne, obzvlast pri bicich solach. Riadil by som sa kopakom. V techno hudbe to bude o nieco jednoduchsie, tam tych bicich sol, kde by sa mohli objavit rozne hracske “figury” , ktore by mohli pokazit meranie sa myslim vyskytuju poriedko. Okrem toho mam pocit, ze ta meranie BPM zaujima hlavne v skladbach, kde sa rychlost rytmu nememni nejak obzvlast casto, ak vobec.
Preto by som zobral zvukovy zaznam, postval by som nan aspon dvojity dolnopriepustny filter s medznou frekvenciou okolo 100-200Hz (moj momentalny hruby odhad). Filter mozes realizovat pomocou OZ , alebo sw v mcu. Na zaciatok uplne staci, ak urobis ten filter s OZ (vygoogli schemy s oznacenim low pass filter) s preladitelnou frekvenciou najskor pomocou dvojiteho potenciometra (na odladenie).
Na vystup takehoto filtra daj komparator. komparuj s hodnotou cez urcenou dalsim potenciometrom (na odladenie). Na vystup komparatora pripoj LED. Potenciometre nastav tak, aby ti LED blikala v rytme hudby.
Ak sa ti toto podari, mas vyhrane. Ak nie, treba experimentovat s tym DP filtrom a komparatorom.
Vypocet a urcenie velkosti frekvencnych zloziek v signale (a to aj v hudbe) sa da robit aj cez fourierivu analyzu, ale to by som ti nedoporucoval. Neviem ako ty, ale myslim ze kym by priemerny clovek (nie matfyzaka nie elektrikar a elektro kutil) dosiel fourierovej analyze na klb a naucil by sa ju naprogramovat tak, aby to bezne mcu stihalo v realnom case, mohol by sa uz lahko dostat do veku, kedy ho uz meranie BPM nebude v podstate zaujimat
Potom uz len staci nejakym mcu (napriklad od Microchuipu - ale ja by som si urcite vybral radsej ATmega8/16/32) meraj cas medzi dvoma bliknutiami.
Samozrejme, ze obcas - v zavislosti od skladby ti niekedy LED blikne i nepravidelene. Preto akceptuj iba take casove hodnoty, ktorych bude za tebou stanoveny cas (napr 10sekund) najviac, +/- s nejakym rozptylom.
No a vysledok si preved na pocet uderov za minutu a odkomunikuj do PC, zobraz na display a tak podobne.
Ak nevies programovat mcu, tak si na vystup komparatora pripoj merac frekvencie (stavebnic sa vala na nete spusta, napriklad od wellemana) a cislo, ktore uvidis najcastejsie na display si vynasob sestdesiatimy, alebo zmen meraciu frekvenciu meraca frekvencie napr z 10 sekund na 6 sekund, alebo na 60 sekund (zmenou Xtalu) a vysledok budes mat priamo v BPM, maximalne s na displayi posunom o jednu desatinu.
Ospravedlnujem sa ak som zle zaradil moj prispevok, no myslel som si ze kedze to chcem realizovat pomocou PIC tak toto je vhodne miesto. MiloPS3 dakujem za objasnenie a Martin, dakujem za rozsiahlu odpoved. Procesory programovat viem, aj ked neviem ci sa u vas rata za programovanie ovladanie PIC Basic-u Meranie medzi impulzmi na napada realizovat s timerom, ktory by bol nastaveny napr. na 1ms, pri jednom udere ho spustit, pri druhom vypnut a dalej pracovat s nameranym casom. Myslim ze najdolezitejsia bude HW cast. Este raz dakujem.
Akurat si tu informaciu o PICe vo svojom prvom prispevku nenapisal, tak si ma trochu zneistil
Kazde programovanie je dobre programovanie
Presne tak. Len si z hudby musis vyfiltrovat ten kopak. Ale kedze sa jedna o celkom vyrazne spicky (v ako akej skladbe), mozno postaci len samotny komparator na sledovanie prekrocenia nastavenej urovne signalu. Problem moze este byt, ako dlho to preklopenie komparatora bude trvat, ale z povahy signalu by mal trvat viac ako 1ms (1kHz). Ak by si este dal zan delicku dvoma, urcite budes mat dost casu na zistenie pritomnosti spicky. Zmena urovne delicky dvoma na vystupe → info, ze prisla spicka vyhodnotena komparatorom.
Pokud ma jit o rockovou hudbu, tak by to mozna slo, bohuzel v elektronicke by se daleko nedostal. Bude potreba pasmova propust, na nejnizsich frekvencich se odehrava lecos Dal pro detekci spicek nestaci pouze komparator, ne samotny. Malokdy jsou totiz beaty stejne, casteji byva up a down beat, kazdy ma jinou frekvenci a amplitudu. Musi vskutku zajistit detekci spicek, nikoli jen urovne. Lze to vyresit bud analogove, a procesor bude jen merit, nebo digitalne, tedy ad prevodnik a trochu popremejslet nad programem
Ide mi o rozoznanie pomalej hudby (ludovky) a modernej, pretoze mame efektove svetla, niektore su rychle a druhe pomale a vyzera to dost blbo ked na pomalu hudbu vsade behaju luce.
ehmm… no tak to si s komparatorem vystacis Dokonce na to neni ani potreba procesor
no myslim ze skutocne Martin to popisal najlepsie