-
Q:
Sitecheck: Online drumcompu
Ik ben een online-muziekdingetje aan het bouwen en ben benieuwd naar enige reacties. Let wel, dit is een zeer prille beta. Dus minimale vormgeving (sorry) en waarschijnlijk een aantal functionele probleempjes. De geluidset is een tijdelijke werkset, dus niet erg uitgebalanceerd, er komt een selectiemogelijkheid voor de geluiden.klik!
uitleg:
O ja, aan reacties zoals “ik snap het niet” of “ik vind het lelijk” heb ik niet zo veel.
De draaiknoppen doen het niet lekker. Als je ze naar rechts probeert te draaien gaan ze soms zelfs naar links.
Als je het scherm opent zou het linker instrument al op Active moeten staan, want zo werkt het wel.
Er zou een manier moeten zijn om van een bepaalde stap te kunnen zien welke instrumenten eraan bijdragen. Nu kun je alleen een voor een langs alle instrumenten lopen om dat te achterhalen.
Als ik een patroontje maak, merk ik dat het tempo sleept…
d.w.z. sommige klappen die wel tegelijk geprogameerd zijn, klinken niet exact op hetzelfde moment
(zowel op een eMac als op een winddoosbak (p4))
ik neem aan dat de stabiliteit ook nog vooruit gaatEen leuke optie is dat je een online drumloopje zou kunnen maken, en daarn als mp3 downloaden o.i.d.
verder grappig ding…
”MVB”Haha, grappig hoor 8)
Het is misschien wel handig om meerdere sporen onder elkaar te hebben want hi-hat valt normaal gesproken vaak samen met bass/snare..Dat is al volgens mij al zo. Elk instrument heeft de beschikking over alle beats.
Dus als je de bassdrum op 1 – 5 – 9 – 13 plaatst, kan je vervolgens de hi-hat selecteren en een hi-hat op elke tel plaatsen. En vallen de klanken soms gelijk. (net als in het echt)Maar je kan je nog een heleboel andere mogelijkheden voorstellen.
Zoals het invoeren van 32e noten of zelfs triolen.Maar ik denk dat het gewoon bedoeld is als een leuk simpel online drumpcomputertje en daar voldoet deze prima aan.
nogmaals dank voor de reacties, ik heb inmiddels een paar dingen verbeterd/veranderd:
– patroonkeuze toegevoegd, dus nu 4 patronen.
– ledje knippert op het moment dat een spoor afspeelt
– spoor 1 bij het begin direct actieflink is overleden
De patronen switchen nog niet helemaal lekker, ik hoop dat snel te kunnen verhelpen. Verder ben ik nu een beetje tegen de grenzen van wat flash aan geluidsmogenlijkheden ondersteund aan het botsen. Misschien kan ik dit probleem verhelpen als er een nieuwe, beter gebalanceerde geluidsset in komt , maar ik vrees het ergste.
Het was een toevalstreffer… ik heb altijd m’n camera op zak, en trof op het station (hier in Delft) een zojuist gedemonteerde Abri aan. Meteen maar wat foto’s van de schade genomen, de foto’s waren overigens meer de moeite waard dan de reclame in de (voormalige) abri. Stukje zingeving dus, zinloos geweld? Maar wel een mooie foto!
Daar was ik al mee bezig, Ik heb alleen nog wat probleempjes met de Beats Per Minute. Flash telt in milliseconden, moet dus geconverteerd worden. Ook heeft flash een systeemafhankelijke limiet in afspeelsnelheid, ik wil liefst elke loop een test doen die live test wat de werkelijke snelheid is.
de meest recente versie:Nu kloppen er muzikaal een paar dingen niet:
1. Bij een hoger getal voor BPM dient alles sneller te gaan, bij de huidige versie gaat het precies andersom. (BPM 120 moet dus twee keer zo snel zijn als BPM 60)
2. De gekozen getallen komen ook niet overeen met wat de werkelijk waarde is. Dat hangt echter wel af van een van een paar aannames, en ik neem aan dat de 16 posities die ik in kan vullen de zestien beschikbare noten zijn in een 4/4 maat die dan ook de naam: “zestiende noot” krijgen. Als ik er daarvan steeds om de vier één activeer, moet het gekozen tempo inderdaad goed zijn. Bij de huidige versie is dat steeds een factor twee te langzaam (140 -> 70)
Voor het geval je twijfelt: Slagwerk is mijn vak!
Mail me anders maar prive.Marc.
Ik zou nog iets veranderen aan de verpakking.
maargoed je bent er natuurlijk nog hard mee bezig, en de techniek is een stukkie belangrijker.
Gisteren heb ik er even mee gespeeld, die oude versie, en dat voelde best goed aan,
alleen vond ik het geluid van de snare wat minder.ik denk dat marcz de rest al heeft verteld.
Maar goed bezig, en ik hou het in de gaten!Ik heb de BPM op orde, de enige beperking (zit helaas in flash) is dat ie nooit sneller gaat dan het systeem toelaat. Dus meer dan 300 BPM zal ie waarschijnlijk via internet niet halen(lokaal op m’n G5 wel), en bij hoge BMP kunnen er haperingen ontstaan. Ik geloof in ieder geval dat de snelheid nu klopt. Zo niet dan hoor ik het graag (2x te snel of langzaam?) Zo exact als pak ‘m beet reason wordt het natuurlijk nooit, da’s ook niet de intentie.
De geluidsset is inderdaad een werkset, ik ben van plan meerdere sets (met keuzemogenlijkheid!) in de drumcompu te zetten.
De draaiknoppen doen het wat mij bereft nu goed genoeg, daar wil ik voorlopig niets aan veranderen.
Ook heb ik een Start / Stopknop ingebouwd, een Resetknop en een Speel en een Editmode.
Vormgeving komt als allerlaats, hoewel ik het niet kon laten er alvast een achtergrond in te plakken.
Overigens ben ik inmiddels ver voorbij mijn oorspronkelijke doel (een eenvoudige online drumcomputer met enkel de basisfuncties)
Als starttempo heb je nu 120, maar uitgaande van de opzet dat de 16 posities één vierkwartsmaat vormen, dan is het werkelijk tempo dat je nu hoort 187!
Het zou zo moeten zijn dat iedere positie 125 ms duurt.
(Bij tempo 120 neemt één vierkwartsmaat 2 seconden in beslag)Bij mij is het bovendien zo dat het tempo zelfs bij tempo 120 (ik gebruik nu even de getallen die ik op het scherm zie) niet erg stabiel is en voor “praktische” toepassingen niet erg bruikbaar.
Ik heb een 8 Mbit ADSL verbinding en test op een DP G4.Marc.
vogens mij is de correcte formule:
((4 X 60000) / 16) / BPM ofwel 15000 / BPM
Dat is de formule die ik in ieder geval nu in flash heb gezet, in de ge-update versie. Ik ben gisteren iets te lang doorgegaan, en had dus een rekenfoutje gemaakt (7500 ipv 15000).
Flash blijft overigens op dit vlak een onbetrouwbaar programma, hij speelt af wat per cyclus haalbaar is. Ik heb ook effies 2 andere geluidsstjes ingevoegd, om de look and feel van het eindresultaat beter te benaderen.
Als ik nu meet dan komt er dit uit (het eerste getal is de drumcompu, tweede getal is de werkelijke waarde).
60 = 50
120 = 75
180 = 150En dat is in ieder geval in overeenstemming met elkaar. Maar er zit dus toch nog een foutje in want het werkelijke tempo is dus steeds lager dan wat jij laat zien.
Die 60000 in jouw formule, waar staat dat voor? Het aantal ms bij BPM 60?
De juiste formule om de tijd tussen twee “events” te bereken (muzikaal: tussen 2 onderverdelingen) moet zijn:
(60/BPM)/(Aantal onderverdelingen per Beat)
Bij BPM 120 en 4 nootjes per Beat wordt dat dus:
(60/120)/4 = 0.125s (125 ms)
Marc.
Marcz bedankt voor de hulp!
ik kwam/kom er zelf niet helemaal uit, de 60000 staat in ieder geval voor het totale aantal msecs. Ik ben nu aan het werk maar ga er vanavond mee verder Mocht deze formule ook niet goed werken dan ga ik de tijden biinnen flash eens registreren, kijken of daar een verschil optreedt. Ik hoop dat het nu wel correct gaat werken, nader bericht volgt.
”iJoost”60000 is het aantal milliseconden in een minuut. Als je dat deelt door het aantal beats per minuut dan krijg je het aantal milliseconden tussen twee beats. (Denkt deze eenvoudige hacker dan.
Dat is correct, maar jouw formule houdt geen rekening met het feit dat de onderverdeling van die “beats” (kwartnoten in muziektermen) ook nog moet worden berekend (en dat zijn dan achtsten of zestienden of triolen).
In het programma van earnst heeft hij per “beat” nog 4 onderverdelingen en dat is wat je in mijn formule ook nog ziet staan. Maar je kunt per beat ook ieder ander geheel getal van 2 t/m 8 tegenkomen. (Nog meer kan ook, maar dat is muzikaal zeer ongebruikelijk en onuitvoerbaar)In het programma van earnst zie je niet 16 beats, maar slechts 4 beats (en die gaan dus 120 of 60 of 113 of 197 keer per minuut voorbij: BPM en in de klassieke wereld zeggen we MM = 120 of . . .enz).
Maar je computerprogramma moet geen rekening houden met die BPM maar met de onderverdeling daarvan in vieren (zestiende noten) en dat betekent dus dat je bij een BPM van 120 een “virtuele” BPM hebt van 480. En wat krijg je als je 60000 deelt door 480? 125!!<offtopic>
Het leuke is natuurlijk dat “echte” musici nooit in seconden en milliseconden denken maar gewoon geleerd hebben hoe je een puls (beat) moet onderverdelen. Maar vertel dat maar eens aan een computer!
Dat is ook vaak aanleiding tot felle discussies over het gebruik van drumcomputers, want die kunnen wel heel perfect iets spelen, maar het is ook vaak heel doods en saai omdat de zogeheten “microtiming” ontbreekt waardoor een echte drummer (of andere muzikant) zich onderscheidt.
</offtopic>Marc.
Ik heb de timing nogmaals verandert, dus nu eens met de formule van marcz. Hoe meet ik overigens op een makkelijke manier de BPM van het geluid dat mijn mac voortbrengt? Ik wil dit nu wel eens grondig uitzoeken, maar heb daarvoor een tooltje nodig om te meten wat de “echte” snelheid is.
off topic:
Ik ben zelf ook al lang actief in de muziek (basgitaar) en heb (tot nu toe dan) nog nooit in milliseconden moeten of willen denken. Wel heb ik veel met electronica gewerkt, en in combinatie met live-percussie kan dit toch wel verassend goede resultaten geven. Jammer dat tempowisselingen voor drumcomputers vrijwel onmogenlijk zijn, daardoor worden dergelijke songs vaak wat langdradig.Hier is een online metronome.
En MetroGnome is er een om te downloaden. Wordt niet meer ondersteund maar werkt goed.
De Drumcomputer is nu te langzaam. Bij ingesteld tempo 60 komt er ongeveer 52 uit.
Het zou kunnen wijzen op erg tijdrovende processen in Flash.Marc.
Ik heb het euvel gevonden, de setInterval functie in flash (die ik gebruik om het tempo te bepalen) is niet alleen onbetrouwbaar bij hogere snelheden maar heeft ook een ander probleem. De uiteindelijke interval blijkt toch afhankelijk vaan de framerate van het document! Dus bijvoorbeeld een filmpje dat 12 frames per seconden speelt geeft bij een gewenste interval van 100 msec. stiekem +/- 175 msec. In mijn geval levert een gewenste snelheid van 120 bpm (exact hetzelfde script, enkel de framerate is verandert!) de volgende eindresultaten op:
1 fps = 75 bpm
5 fps = 110 bpm
8 fps = 60 bpm
12 fps = 90 bpmhelaas is het ook niet mogelijk een sommetje te maken (bijv, 8 fps en bpm x 2) omdat flash steeds weer met andere uitkomsten komt. Ik ga proberen met de datum en tijd functies iets te bouwen, maar vrees dat dit probleem niet goed oplosbaar is. Ook wil ik niet al te veel extra energie in dit ding steken.
Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.