Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.

Beatcompanion v1.0

Tråden skapades och har fått 42 svar. Det senaste inlägget skrevs .

Hallå!

Jag har gjort en liten applikation i flash som genererar midi-filer. Den är i första hand tänkt för trumprogrammering, men med lite trixande kan den spotta ur sig lite vad som. Kanske är det någon mer än jag som kan ha användning av den, så här kommer en länk samt tillhörande kickstart-anvisningar.

Programmet består av sex moduler, BASSDRUM, SNAREDRUM, HIHAT, TOMS, RIDE & CRASH. Dom ser ut så här:

Varje modul består av två grafer indelade i sextondelar, en för probability (grön) och en för velocity (röd). Man ritar staplar i graferna genom att klicka och dra. Dom gröna staplarna styr alltså sannolikheten för att en not skall genereras vid denna sextondel.
I fältet notes fyller man i vilka midi-notnummer modueln skall generera. Man kan skriva i flera stycken, separerade av komma, och då slumpar programmet mellan dessa. OBS använd bara siffror och komma. Inga mellanslag och övrigt kraffs. Har ingen felkontroll här så annars skiter det sig.
Per default använder programet sig av notnummer anpassade för Ableton Lives impulse sampler och Modulen TOM använder två notnummer.
S knappen används för att spara ett pattern och L knappen används då såklart för att ladda in ett sparat pattern. Var vänliga och spara nu inte en massa patterns i onödan. Scrolllistan blir snabbt jävligt lång...
Pilknapparna används för att flytta ett pattern i sidled.

När man tror sig vara nöjd klickar man på knappen ready och inväntar en ruta för att spara ner .mid filen. Har du webläsaren inställd att spela upp .mid filer, så får du dock inget erbjudande om nerladdning :kaaaka!:

Jag har pillat ihop det här när jag egentligen borde skriva på mitt projektarbete för skolan, så ni får leva med bristen på felkontroller och säkerhetsnät. Rapportera gärna buggar i tråden, och om ni framställer något koolt kan ni väl ladda upp det här.

Programmet ligger på min lilla serverdator här hemma, och uppkopplingen är Telias 8/1mbit, så förvänta er inga blixtrande hastigheter.

Här är länken:
Beatcompanion v1.0

Mycket nöje!
Resident Emil

Kul grej! Jag har jobbat som flashutvecklare i flera år, men skulle inte kunna ha gjort något dylikt.

Tack! Jag har också jobbat en del med flash, men det var några år sedan. Är det du som sitter och pillar med programmet? Jag ser att det genererats några .mid filer här. Återkom gärna med tankar om programmet i sig.

he he... skojigt. Snyggt gränssnitt också.

Tackar. Fick du till några sköna beats?

  • Medlem
  • Gävle
  • 2006-04-09 18:11

Måste testas... får leka lite på jobbet imorrn om jag får några minuter över

Ursprungligen av Arete:

Måste testas... får leka lite på jobbet imorrn om jag får några minuter över

Kör hårt!

Wow! Impad. Kul idé med probability.

Jag jobbade inte fetmycket med den mest kollade in och nu sitter jag på jobbet så nu kan jag inte. Men har memorerat tråden inuti min hjärna, checkar när jag har mer tid.

Hallå igen.
Jag satte mig några minuter för att undersöka resultatet av att följa mitt eget råd att testa BeatCompanion för annat än trummor.
Resultatet blev följande lilla bagatell, BeatCompanion.mp3.
Allt är lite snabbt och enkelt probability-sequencat i BeatCompanion.

/RE

Hallå igen igen.
Nu har jag gjort en del förbättringar av Beatcompanion. Det första är att jag lagt in en lite klaviatur vid varje instrumment där man kan välja vilka noter vart och ett av dessa skall generera. Detta är lite lättare än att behöva skriva i notvärde manuellt.
Sen har jag lagt till en liten ratt vid varje instrument som jag kallar consistency. Jag skall försöka förklara vad den gör:
Beatcompanion genererar för tillfället en midifil på fyra takter (kommer en ratt för detta också så småning om). Den första takten av dessa som genereras, sparas i minnet. I efterföljande takter plockar jag fram ett slumptal vid varje sextondel och för varje instrument. Detta slumptal jämförs med instrumentets consistency värde. Om slumptalet är lägre än consistency värdet så genereras samma resultat för denna sextondel/instrument som i första takten. Om inte, så går vi vidare och slumpar efter grafvärdena i instrumentet istället.
Med hjälp av detta kan man generera patterns där delar av instrumenteringen tillåts vara väldigt slumpad medans andra delar kontrolleras stenhårt. Vid 100% consistency kommer efterföljande takter att spelas identiskt med den första oavsett hur slumpad den första takten ursprungligen var.

BeatCompanion 1.1

Jag inser att det förmodligen är rätt få förutom jag själv som ser nyttan och charmen med detta rätt obskyra projekt. Ni får helt enkelt säga till när ni tröttnar på mitt malande om detta....

Mycket nöje!
Resident Emil

  • Medlem
  • Gävle
  • 2006-04-24 15:04

Bra att du påminde mig! Ska lekas med så fort jag kommit hem!

Du skulle inte kunna fixa en offlinevariant för oss offer med modem?

Jag önskar att jag kunde.... Problemet är att det är ett php-skript som utför själva genereringen av midifilerna. Flashet är bara GUI. Hade jag kunnat hade jag byggt en mfx-pluggin av hela rubbet. Tyvärr var jag ute och pussade flickor när andra satt och lärde sig tuffare (och mer användbar) programmering än flash och php (Det var iofs mysigt, men, ja du fattar....)

EDIT: Man kan iofs ful-"kompilera" php filer till exe filer, men jag vet inte riktigt hur kommunikationen mellan flash och exe-filen skall ske då. Tror inte flash har nån form av execute komando.

Ursprungligen av Resident Emil:

Jag önskar att jag kunde.... Problemet är att det är ett php-skript som utför själva genereringen av midifilerna. Flashet är bara GUI. Hade jag kunnat hade jag byggt en mfx-pluggin av hela rubbet. Tyvärr var jag ute och pussade flickor när andra satt och lärde sig tuffare (och mer användbar) programmering än flash och php (Det var iofs mysigt, men, ja du fattar....)

Det går att köra PHP/webbserver lokalt. Lägg till en möjlighet att prata med servern "localhost" istället för dit du pekar den nu så borde det funka att köra standalone.

Ursprungligen av false messiah:

Det går att köra PHP/webbserver lokalt. Lägg till en möjlighet att prata med servern "localhost" istället för dit du pekar den nu så borde det funka att köra standalone.

Det är så det körs för tillfället (ur min synvinkel). Och visst, rent tekniskt är det en lösning, men det är nog ganska få som har lust och kunskap att sätta upp en webserver, installera och konfigurera php och sen få det att funka. I dagsläget är min kod också lite för.... "ostrukturerad" :eek: ... för att visa upp för omvärlden.

Men jag funderar på lite olika lösningar.

  • Medlem
  • Stockholm
  • 2006-04-24 15:12

Coolt!
Nästan så att jag måste sätta mig ner när jag kommer hem och titta på det här. Vore perfa för att lägga hihatpatterns.

Ursprungligen av zthee:

Coolt!
Nästan så att jag måste sätta mig ner när jag kommer hem och titta på det här. Vore perfa för att lägga hihatpatterns.

Vänta tills du tröttnat på trummor och börjar generera melodier med BeatCompanion!!

Arete: Jag kollar lite på flash's FSCommand kommando som kanske skulle kunna möjliggöra en fristående variant... Återkommer...

  • Medlem
  • Gävle
  • 2006-04-24 19:13

Sheeeeet! ROLIG!!!! VILL HA STANDALONE!!!

Har ett helt galet svängigt helt slumpgenererat stycke rullandes just nu, synd att jag måste koppla ner

  • Oregistrerad
  • 2006-04-24 19:21

har för mig att det finns en vst som heter glitch som gör ungefär samma sak

Arete: Verkligen kul att det uppskattas. Ser fram emot att få ta del av resultatet.

kosmonaut: Jag har inte testat glitch, men jag läste om det i tidningen Studio, eller nått. Jag fick uppfattningen om att glitch var mer som Live's BeatRepeat, alltså styckar upp och kastar om en ljudström. Får väl ta mig en titt.

  • Oregistrerad
  • 2006-04-24 19:43

du har nog rätt

  • Medlem
  • Gävle
  • 2006-04-24 19:46

Inte så svängigt egentligen då, men kul att leka iaf

http://helga.servegame.com/~arete/musik/beatcompaniontest%20Rendered.mp3

All midi genererad med beatcompanion
Rätt sjysst basslinga blev det iaf.

Ursprungligen av Arete:

Inte så svängigt egentligen då, men kul att leka iaf

http://helga.servegame.com/~arete/musik/beatcompaniontest%20Rendered.mp3

All midi genererad med beatcompanion
Rätt sjysst basslinga blev det iaf.

Det är verkligen skitkul att höra vad nån annan får ut ur programmet. Det krävs lite pill innan man får koll på hur man uppnår "förutsägbara" (eller iaf någorlunda kontrollerbara) resultat med probabilitymetoden. Generellt sätt bör man nog använda lägre värden än man föreställer sig, förutom om man vill tvinga fram events på vissa ställen.

Kör hårt!

/Resident Emil

  • Oregistrerad
  • 2006-04-25 03:18

har du minsta aning om hur flash kan prata med "shell" i windows (eftersom jag antar att det är windows du sitter på), dvs. om du vet hur du kan få flash att anropa program och dessutom med parametrar, så kan du nog ha nytta av innehållet på denna sidan:

http://www.fourmilab.ch/webtools/midicsv/

Alternativt att du gör en variant där du skriver ner en fil med den data som skapats av amvändaren med din flash i csv-format (se länken), och sen får man manuellt köra programmet (se länken, finns till både unix och win) som gör en midifil av csv-filen ...

---

"du är aldrig tuffare än din sista hit"

Hej Don, och tack för engagemanget. Problemet i dagsläget är att Flash kan köra externa program men kan INTE skicka parametrar. Flash kan inte heller skriva till filer.
Så, att göra om flashen till en fristående projector är inga problem. Att göra om php-skriptet till ett fristående exe-program är inte heller några problem. Att kommunicera de nödvändiga parametrarna mellan flashprojectorn och php-programmet, det går däremot inte.

Jag tror jag kan lösa parameterfrågan genom Flash's SharedObject (funkar ungefär som cookies), men det kommer inte att bli en "textbook" lösning direkt.

  • Oregistrerad
  • 2006-04-25 13:06
Ursprungligen av Resident Emil:

Jag tror jag kan lösa parameterfrågan genom Flash's SharedObject (funkar ungefär som cookies), men det kommer inte att bli en "textbook" lösning direkt.

Kan inte flasha streama en sträng till en webbrowser eller nåt?

---

"du är aldrig tuffare än din sista hit"

Ursprungligen av Don:

Kan inte flasha streama en sträng till en webbrowser eller nåt?

Jo, men då krävs det att man kör det via en webserver och inte fristående. Tanken var att slippa webserverlösningen så att det blev en helt fristående applikation.

  • Oregistrerad
  • 2006-04-25 13:39
Ursprungligen av Resident Emil:

Jo, men då krävs det att man kör det via en webserver och inte fristående. Tanken var att slippa webserverlösningen så att det blev en helt fristående applikation.

jo det förstod jag från början,

vad jag menade var, kan flash skapa en sträng, och sen streama ut den genom någon form av i/o som finns i den runtomliggande miljön... dvs. att den inte kommer åt filsystemet kan jag förstå, men jag är nyfiken på om det finns andra sätt, när flashen t.ex. körs i en webbrower, skulle man kunna anropa för flashen dedikerade "api-er" genom/i browsern?

då skulle du kunna köra den "lokalt" i en webbrowser utan att behöva en server...

---

"du är aldrig tuffare än din sista hit"

  • Medlem
  • Gävle
  • 2006-04-25 08:27

Funkar det så funkar det

Blir sugen på att göra något liknande i C/.net bara för att komma igång med programmering igen

Bevaka tråden