Hallo Leute,
seit einiger Zeit schwebt mir ein Gerät zur Lichtsteuerung über Midi
vor.
Ziel:
Ohne große Konfiguration sollen RGB-Scheinwerfer passend zur Musik
gesteuert werden.
Die aktuellen Lösungen sind alle zu unhandlich und für den
Quasi-Consumer-Markt (Alleinunterhalter) nicht zu gebrauchen.
Die Spezifikation des Gerätes sowie die Logik kann ich komplett machen,
ich kann es nur nicht in einen Mikrocontroller bringen.
Wer hat Lust, mit mir so ein Gerät zu bauen und zu verkaufen?
Viele Grüße,
Klaus
Klaus Blömeke schrieb:> Wer hat Lust, mit mir so ein Gerät zu bauen und zu verkaufen?
MIDI, sowas gibts noch?
DMX Geräte gibt es doch in allen Grössen und Preisklassen wie Sand am
Meer
Schau mall hier rein:http://www.ledstyles.de
Klaus Blömeke schrieb:> seit einiger Zeit schwebt mir ein Gerät zur Lichtsteuerung über Midi> vor.
Sowas hier benutze ich öfter, wenn auch nicht mit Midi, was aber
wunderbar funktioniert:
http://www.ecue.de/
Die Lighting Application Suite angucken und ausprobieren.
> Ziel:> Ohne große Konfiguration sollen RGB-Scheinwerfer passend zur Musik> gesteuert werden.
Naja, Ohne grosse Konfiguration heisst ja, es macht irgendwas. Eher
würde ich das so sehen: es wird einmal im grossen und ganzen eingestellt
was bei welcher Note passieren soll, dann wird das immerwieder benutzt.
Der Alleinunterhalter lässt seine Musik ja auch nicht per Shuffle
abspielen.
bye uwe
Hallo Leute,
vielen Dank für die Antworten.
Kurz im einzelnen:
Ja, Midi gibts noch, und seit es den General-Midi-Standard (mit seinen
verschiedenen firmenspezifischen Dialekten) gibt es jede Menge GM-Songs
für spielfaule Musiker. Für meine Pläne ist das die ideale und
universelle Schnittstelle: Billig und flächendeckend vorhanden.
DMX-Geräte gibts in der Tat in allen Größen und Preisklassen, aber nicht
mit vernünftigen Bedienkomfort. Die Geärte erfordern alle entweder viel
Zeit, um die Lichtverläufge zu erstellen, oder müssen von Hand bedient
werden, oder sind teuer ohne Ende.
Meine Anforderung ist Plug and Play. Wenn das Ding auf der Bühne
eingestöpselt ist, soll während der Show kein einziger Handgriff mehr
nötig sein.
Außerdem: Die Geräte und Software, die ich mir angeschaut habe, basieren
alle auf dem Konzept, in Szenen zu denken. Das ist extrem unflexibel.
Ich arbeite derzeit mit einem Gerät, dass schon recht gut meine
wesentlichen Ansprüche erfüllt (nur leider auch Szenen-basiert und
umständlich zu programmieren). ich habe so ein Paar Beispiele auf
unserer Webseite:
http://sweetvillage.de/licht2.html
Sound und Filmqualität ist noch dürftig, das waren die ersten
Testaufnahmen. Es ist aber zu erkennen, was ich mir vorstelle.
>> Knüppelförsterflasche: Danke für die Blumen, der Bau eines Flightcases liegt
zum Glück im Bereich meiner Fähigkeiten, ist auch nur ein bisschen schief, sorgt
immer wieder für Lacher
@Uwe: Danke für den Link, für Inspiration schau ich mir das an, kein
MIDI ist aber ein Ausschlusskriterium.
>>Ohne Konfiguration:
Die Zieladressen wird man schon eingeben müssen, da geht kein Weg dran
vorbei. Im Auto-Modus soll das Ding aber nicht für eine Note eine Lampe
anschalten, sondern zu einem Song passende Beleuchtung liefern.
Beispiel, alles stark vereinfacht:
Auf Kanal 10 liegen die Drums. Ich kann also bei Start des Songs
analysieren, ob das ein Heavy-Kit, ein Naturschlagzeugsound oder ne 808
(Techno-Drums) sind.
Außerdem kann ich das Schlagzeugpattern und das Tempo analysieren:
Das ist Disko
135 BPM (Tempo wie "Born to be Alive")
SN |----X-------X---|
BD |X---X---X---X---|
Das ist eher ne Ballade
100 BPM (Tempo ungefähr wie "Nikita")
SN |----X-------X---|
BD |X-----X-X-------|
Sn = Snare
BD = Basedrumm
BPM Beats per Minute
Das Zusammenspiel von ClosedHihat und OpenHihat gibt weitere Hinweise.
Im Fall Disko kann man auch mal ein Stroboskob-Pattern einsetzen, bei
der Ballade ist das schlecht.
128 BPM, Heavy-Drumset auf Kanal 10, verzerrte Gitarren auf den anderen
Kanälen: ist wohl Rock, Farbwahl eher in Richtung Blau, Grün, ev. Lila,
Pulsierendes Licht in vierteln
Viel latin-Percussion, Salsa-Pattern: Lateinamerikanischer kram,
Farbwahl eher Rot-Gelb, hektischere patterns.
Die Auswahlkriterien kann man noch beliebig weiter ausweiten, geht mir
nur ums Prinzip.
Des weiteren wird es neben dem Auto-Modus noch die Möglichkeit geben,
die Lightshow über eine selbst zu erstellende Midi-Spur selber zu
beeinflussen.
Wie ich das softwaretechnisch löse, habe ich als Prototyp schon gebaut
(oder sagen wir: als Proof of Concept). Sowohl eine Analyse eingehender
Midi-Signale als auch funktionsbasierende (statt szenenbasierender)
Steuerung der Lampen geht.
Mir fehlt nur das Wissen, wie ich das in einen Micro-Controller bringe.
Viele Grüße,
Klaus
By the Way:
>>Der Alleinunterhalter lässt seine Musik ja auch nicht per Shuffle abspielen.
Es gibt in der Tat viele Alleinunterhalter, die das nicht, oder
zumindest nicht immer machen. ;-)
im Prinzip wär dann das Ziel
Midi -> Controller -> DMX, oder?
interessantes Projekt, was mir dabei aber nicht klar ist, der Midifile
kommt ja Nachricht für Nachricht nacheinander in den Synthesizer, Du
willst nun quasi entweder erst den File komplett erst in den Controller
zur Analyse schicken und dann synchron zur Musik mit den Pattern starten
oder schickst Nachricht für Nachricht parallel zum Synthesizer in den
Controller, der dann mit Verzug die Pattern startet, oder soll der
Controller auch gleichzeitig der Synthesizer sein?
Ich habe mir jetzt mal die Videos angeschaut.
Also ob da ein Automatikmodus möglich und auch schön ist? Ich weiß
nicht.
Bei "Smoke on the.." sind doch die Lichtblitze zu Beginn bei den Tom Tom
Schlägen ganz passend, soetwas zu automatisieren?
Meine Meinung: Wenn schon so viele (LED)-Lampen eingesetzt werden, dann
auch zum Song passender Lichtsequenz. Sonst einfach nur eine
4-Kanallichtorgel in den Hintergrund stellen.
Du hast doch zu den sonst üblichen Lichttechniker den Vorteil, dass du
alle deine Songs kennst und wohl auch immer wieder gleich aufführst: So
kann die einmal einprogrammierte Sequenz doch immer wieder verwendet
werden.
Also im ersten Takt vom Lied ist das Licht aus, oder? Oder alles an?
Du brauchst ja mindestens einen Takt, um das Muster (s.o.)
herauszufinden.. Ich finde das prinzipiell interessant und ich kann auch
Noten lesen :-)
Kreuz doch mal an, was Du alles selbst machen kannst:
( ) Das Midi-Signal vom Stecker mit Optokoppler auf TTL-Pegel bringen
(zum Anschluss an den uC)
( ) Einen genaue prinzipielle Vorschrift (Algorithmus) entwickeln, in
der Form "wenn dieser Input dann dieses Aktion" Achtung: hier liegt der
Hase im Pfeffer! siehe unten
( ) den Algorithmus in ein uC-Programm umsetzen (ok, das kannst Du
nicht, das wissen wir schon)
( ) einen uC flashen (also ein fertiges Programm drauf speichern)
( ) an den (16?) Ausgängen die notwendige Verstärkung / Steuerung
anschließen
Als kleine Übung: Versuch doch mal zu beschreiben, wie das gewünschte
System feststellen kann, dass jetzt ein Takt zu Ende ist. Das System
weiß ja NICHTS ("plug and play")
Gerade bei langsamen Stücken mit wenig Action am Angang brauche ich als
Mensch wohl öfter 2 Takte bis zum Muster erkennen, denn Muster bedeutet
Wiederholung... :-)
Hallo Leute
@Icke
Das Wissen möchte ich mir eigentlich nicht erwerben, die Analyse und die
Ausgabe zu konzipieren ist genug auf meinem Teller. Ich suche einen
Partner.
@Fhutdhb Ufzjjuz
>> Midi -> Controller -> DMX
Si, genau so
Das Problem mit den nacheinander eintreffenden Midi-Noten ist mir klar.
Das ist zunächst ein Problem, da ich das Ergebnis der Analyse erst nach
dem Song vollständig kenne.
Die Idee wäre hier, den Song anhand eines Fingerabdruckes zu
identifizieren. Einfach eine ID, errechnet aus Tempo, Instrumentierung
und den ersten paar Tönen, und die wesentlichen Ergebnisse zu speichern.
Dan wäre der Controller bei einem neuen Song erstmal dumm, würde den
Song beim zweiten mal kennen. Beim Kennenlernen müsste der dann erstmal
unauffälliges Licht machen, irgendwas, was nicht allzu auffällig daneben
ist.
Wird der gleiche Song beim nächsten mal drei Beats langsamer gespielt,
würde er ihn natürlich nicht erkennen und neu anlegen. Nein, der
Controller ist vom Synth getrennt.
@Matrin Krainer
Sequenzen sind auf jeden Fall besser und individueller. Die Lichtblitze
am anfang kann man trotzdem automatisieren, das Pattern ist:
SN |----X-------X---|
BD |----------------|
Songs, die so anfangen, vertragen alle nen Blitz auf die 2 und 4. Zumal
die Hihat noch weiter Hinweise liefert.
Die Automation ist sozusagen der Dummie-Modus für Faule, oder wenn das
Gerät neu ist. So ne Lightshow braucht zur Erstellung etwa 1 - 4
Stunden. Das macht bei 300 Songs ungefähr ein halbes Mannjahr (ohne
meinen eigentlichen Job). Traumhaft wäre das, aber nicht stemmbar.
Abgesehen davon halte ich "Die Rote Sonne von Barbados" nicht für
ausreichend würdig, um da ne spezielle Lightshow zu machen, Smoke on the
Water hingegen schon.
Dass der Sänger im Refrain "Smoke" auf die 2 singt, kann keine Software
analysieren, das knallt aber, und muss deshalb individuell gemacht
werden.
Klar kenne ich meine Songs, möchte aber nicht nur für mich ein Gerät
haben, ich will das bis zur marktreife entwickeln und verkaufen.
@Rainer Unsinn
>> mindestens ein Takt,
ja, ist oben erläutert
( ) Das Midi-Signal vom Stecker mit Optokoppler auf TTL-Pegel bringen
(zum Anschluss an den uC)
(X) Einen genaue prinzipielle Vorschrift (Algorithmus) entwickeln, in
der Form "wenn dieser Input dann dieses Aktion" Achtung: hier liegt der
Hase im Pfeffer! siehe unten
(?*) den Algorithmus in ein uC-Programm umsetzen (ok, das kannst Du
nicht, das wissen wir schon)
( ) einen uC flashen (also ein fertiges Programm drauf speichern)
( ) an den (16?) Ausgängen die notwendige Verstärkung / Steuerung
anschließen
?* Wenn man das in einer Hochsprache schreiben kann (C# oder so), würde
ich mir die noch draufschaffen.
Ansonsten:
Habe einen Midi DMX Converter. Da ist eigentlich schon alles da, der
Controller ist halt nur falsch programmiert. Der Hersteller wäre da
sicher bereit, bei der Produktion zu helfen, nur programmieren will er
den Kram nicht.
Der Takt ist zu Ende, wenn die Midi-Clock die nächste "1" sendet.
Bei langsamen Stücke ist das Problem für uns Menschen, dass wir z. B.
nur die Streicherfläche hören, ohne Schlagzeug. Midi-Clock sendet
trotzdem Takt-Informationen.
Ansonsten geht immer noch der Fallback: keine Drums, nur Fläche: dunkles
rotes waberndes Licht
keine Drums, nur rhytmische Gitarrensounds: dunkles blaues waberndes
Licht.
Viele Grüße,
Klaus
dieser "Fingerprint" vereinfacht die Sache schon erheblich.
Selbst wenn der Song langsamer oder schneller abgespielt wird, läuft ja
die Clock auch langsamer oder schneller - Das Zeitverhältnis der
Anschläge sollte ja gleich bleiben.
D.h. der uC erkennt das Stück, ordnet abhängig dazu die Instrumente den
Leuchten zu?
Wenn der Controller das Lied noch nicht "kennt" - macht er was?
Wie sage ich dem Controller, was er bei den Liedern machen soll? / wie
sollen neue Lieder "programmiert" werden?
Und natürlich wichtige Fragen:
Wie eilig hast Du es?
Wieviel willst Du ausgeben?
Wie sind Deine Qualitätsanforderungen?
Frei nach: Es gibt 3 Möglichkeiten, wie Dein Projekt laufen kann:
Schnell, billig und gut. Such Dir 2 aus.. :-)
Klaus Blömeke schrieb:> Wie ich das softwaretechnisch löse, habe ich als Prototyp schon gebaut> (oder sagen wir: als Proof of Concept). Sowohl eine Analyse eingehender> Midi-Signale als auch funktionsbasierende (statt szenenbasierender)> Steuerung der Lampen geht.
Wie sieht dieses "Proof of concept" aus? Erklär mal. C# wird schwer :-)
Die Midis zu analysieren wird schon ne kleine Herausforderung ...
hab vor Jahren mal mit Midifiles herumgespielt und hab da noch im
Hinterkopf, dass da die Instrumente nicht immer auf der gleichen Spur
lagen und die Anzahl der Spuren schon sehr unterschiedlich von Lied zu
Lied sind.
Man muss also im Lernmodus erstmal filtern Rhythmusinstrumente, da dann
die BPM ermitteln, Streicher, Bläser, Keyboerd, Gitarre ... dann das
ganze miteinander verwursteln einmal umrühren und die Patternfolge kommt
heraus.
ist mir schon klar, warum der Hersteller das nicht proggen will :o)
VOr JAhren hab ich sowas ähnliches mal gemacht analog mit Mikrophon in
den µC, dann FFT und die 16 Kanäle dann miteinander verwurstelt ... so
ne Art gepimpte Lichtorgel ... war nicht sonderlich erfolgreich :o)
@Rainer Unsinn,
>>D.h. der uC erkennt das Stück, ordnet abhängig dazu die Instrumente den Leuchten
zu?
So ähnlich. der uC erkennt das Stück, und ordnet den verschiedenen
Teilen des Songs unterschiedliche Abläufe zu.
Wenn er das Lied noch nicht kennt, muss er zunächst gut blyffen, und
kann mit jedem Takt präziser werden.
Ich habe zunächst mal zwei Modi vorgesehen:
Automatik, dann wenn nichts kommt
Individuelle Gestaltung, beispielsweise über Sysex einzuschalten,
anschließend ist die entsprechende Midispur der Signalgeber für die
Lichtfolge.
Eilig:
Nicht so sehr, hab auch noch nen Job und eine Band.
Ausgeben:
Nur Hardwarkosten, ich suche keinen Dienstleiste, sondern einen Partner
mit Risiko- und Gewinnbeteiligung.
Qualitätsanforderungen
Hängt ein bisschen vom zu beschreitenden Weg ab. Eine Möglichkeit ist
es, einen Prototypen zu bauen und anschließend eine Firma ins Boot zu
holen, die Partner in Fernost zur Produktion hat, der andere Weg wäre
es, die Dinger selber zu bauen. Im letzteren Fall müsste das gute Stück
schon recht ausgereift sein.
Frei nach den drei Möglichkeiten: Schnell fällt schon wegen begrenzter
eigener Zeit aus.
Der Proof of Concept:
Ich kann nur PHP programmieren. Damit ist eine wirkliche Steuerung der
Lampen nicht möglich.
Also habe ich folgendes gemacht, um auch mit meinen Mitteln arbeiten zu
können:
Ich habe eine Midi-Datei per php eingelesen. Anschließend habe ich mir
ein Script programmiert, was einen Midi-File-Player simuliert, also die
Töne (bzw. Tastensignale) in einer zeitlichen Abfolge ausgibt. Die
Darstellung erfolgt einfach tabellenförmig untereinander.
Diese Ausgabe habe ich durcch einen anderen Teil des Scriptes
entgegengenommen und das Schlagzeugpattern analysiert. Die typischen
Grundmuster habe ich in einer Bibliothek abgelegt, damit vergleicht die
Software das.
Der nächste Schrit war, einen "Lichtsynthesizer" für 8 RGB-Strahler zu
bauen. Auch das geht ohne weiteres. Die Ausgabe habe ich, statt daraus
Strahler anzusteuern, in Bilder mit Kreisen für jeden Strahler gemacht.
Diesen Synthesizer habe ich anschließend zweckentfremdet, um mir die
statischen Szenen für meinen jetzigen Controller zu bauen.
Dateianhänge sind nicht sinnvoll, da die Dateien nicht im richtigen
Zusammenhang angezeigt werden.
Hier ist eine Übersicht, wie die Szenen aussehen:
http://www.satzgesang.de/dmx-presets/presets-statisch.html
Jedes Bild ist eine Szene für je 8 Strahler. einfach möglichst schnell
nach unten durchscrollen, dann wird der Zusammenhang klar.
Viele Grüße,
Klaus
@Fhutdhb Ufzjjuz
So kompliziert ist das auslesen auch nicht.
Schlagzeug immer auf Spur 10
Dann muss ich nur noch die Liste mit dem GM-Sounds hinterlegen, (sind,
glaube ich, eh nur 128), dann kommt man der Sache recht schnell auf die
Spur. Ob alle Spuren belegt sind, ist auch wurscht. es reicht zu sehen,
welche belegt sind.
Lästig wirds höchstens, wenn der Musiker die Spuren mit nicht mehr
gm-kompatiblen Sounds belegt hat, dann sind die programm-Changes nicht
mehr zuzuordnen.
Andererseits: wer so penibel ist, dass der Standard für den Sound nicht
reicht, kann auch die Lichtorgel händisch programmieren.
Viele Grüße,
Klaus
Bei der Lichtsteuerung denke ich aber nicht in Szenen, sondern eher in
einem optischen Gegenstück zur Wavetable-Synthese der PPG- (später
Waldorf) -Synthesizer.
Hallo,
grundsätzlich halte ich das Ganze für eine nette Spielerei und ein
schönes Hobbyprojekt. Aber komerzielle Vermarktung? Eher nein.
Als jemand, der regelmäßig Kontakt mit allerlei der
Veranstaltungstechnik verfallenen Personen (Partykeller bis
Discothekeninhaber) hat folgende Einschätzung:
Aufgrund der Tatsache, dass das ganze mittels Mididateien funktionieren
soll, dürfte der potentielle Kundenkreis schon nicht nennenswert groß
ausfallen. Dies treibt natürlich den Preis in die Höhe, was zur Folge
hätte, dass die meisten dann doch lieber bei ihren
Standard-Blinkiblinki-Automatikprogrammen bleiben.
Ja - tatsächlich - es gibt eine unglaubliche Anzahl an Personen, die mit
den Automatikmodi der üblichen Lichteffekte voll zufrieden ist. Zumal
die Hersteller in viele neue selbst billige Geräte ja auch inzwischen
Synchronisationsmöglichkeiten zwischen Geräten des gleichen Typs
einbauen (DMX-Master und Slaves)...
Ich persönlich finde das klassische Szenen + Chases - Konzept gar nicht
so absurd. Hat was vom Step-Sequencer und das ist was absolut Logisches.
Dass der mit Musik und Unterhaltung beschätigte Alleinunterhalter für so
einen Kram natürlich keine Zeit hat ist klar ...
hui ... das PHP-Script hat aber ganze Arbeit geleistet bei der
Erstellung der GIF ... ein Tip am Rande, in php echo "\r\n" gibt
Zeilenumbrüche, macht den HTML besser lesbar ;)
Kommerziell sehe ich auch keine besonderen Chancen, find das Projekt
ansich aber interessant.
Da schon eine Routine für die mid-files in php besteht ist der letzte
Schritt die in nen µC zu quetschen garnichtmal mehr so groß.
Wenn man den Code sehen könnte könnte man in etwa abschätzen ... wird
aber wohl eher nicht publiziert werden sollen vermutlich.
Ein DMX-out ist technisch kein Problem.
Klaus Blömeke schrieb:> @Uwe: Danke für den Link, für Inspiration schau ich mir das an, kein> MIDI ist aber ein Ausschlusskriterium.
Nene, du hast mich falsch verstanden, ICH benutze kein MIDI, in jedem
Dialogfeld kann man aber irgendwas mit MIDI einstellen.
Die Mediaengine hat mehrere MIDI-Eingänge. Das zeug ist genau für dich
gedacht.
Also auf dem Schlepptopf mit Live-Effekten. Natürlich musst du dem Ding
klar machen was es anzeigen soll. Computer sind nicht Kreativ.
Diese Live-Effekte laufen etwa so, man gibt für bestimmte Kanäle zum
Beispiel eine langsam fallende Sägezahlrampe auf Rot und eine auf Grün
die kürzer ist. Dazu ein Rechteck auf Blau mit Phasenverschiebung. Dann
läuft das Blau durch, also von Leuchte zu Leuchte und es Pumpt immer
Gelb bzw. Weiss hoch um nach rot abzufallen.
Also das macht Action, Farbverlauf, nur mit paar Einstellungen. Etliche
dieser Einstellungen, und sei es nur ein Peak auf einer bestimmten Note
stellt man vorher ein und speichert es ab. Quasi einen Korb von Effekten
wo jeder Effekt ein Triggersignal kennt.
Dann hast du die Show in der Hand. Von alleine wird das nix, siehe
Lichtorgel...
Immerhin ist LightJockey so ne art Berufsbezeichnung.
bye uwe
Klaus Blömeke schrieb:> Ausgeben:> Nur Hardwarkosten, ich suche keinen Dienstleiste, sondern einen Partner> mit Risiko- und Gewinnbeteiligung.> Qualitätsanforderungen> Hängt ein bisschen vom zu beschreitenden Weg ab. Eine Möglichkeit ist> es, einen Prototypen zu bauen und anschließend eine Firma ins Boot zu> holen, die Partner in Fernost zur Produktion hat, der andere Weg wäre> es, die Dinger selber zu bauen. Im letzteren Fall müsste das gute Stück> schon recht ausgereift sein.
Also ob es dafür einen Markt gibt, kann ich nicht beurteilen - Mit wie
vielen verkauften Stück zu welchem Preis rechnest Du denn?
Was die "Hardware" angeht, bleibt es wohl selbst beim Prototyp unter 20
Euro im Selbstbau:
1 Diodenbuchse für MIDI in
1 passende XLR-Buchse für DMX out
2 Optokoppler (1x MIDI in, 1x DMX OUT)
1 Uni-Leiterplatte
1 Stromversorgung 5V
1 RS232-Buchse, um mit dem AVR zu sprechen
1 AVR
1 Gehäuse
Hühnerfutter (R, C, OPV)
nicht berechnet sind ein einfaches Midi-Keyboard und irgendwas, was
leuchten kann und einen DMX-Eingang hat zum Probieren.
Die Programmierleistung ist das zentrale Thema. Ich schätze mal:
Lastenheft Studium / Abstimmung was das Teil können soll 4h
Implementierung der Schnittstellen (Midi in und DMX out, Befehle
durchreichen) 4h
Mustererkennung 4h
Programmierung von Presets, Effekten, ... 4h
Entwicklung einer "Sprache" / eines Protokolls, um dem Chip zu sagen,
was er bei welchem erkannten Muster tun soll, Speicherung, Kanäle /
Instrumente zuordnen etc. 16h
Puffer/Vergessene Punkte etc. 8h
Dann nehmen wir mal 50€ pro Entwicklerstunde -> Es müsste jemand mit
2000 Euro Entwicklung in Vorleistung gehen, Was der Verkauf erstmal
einspielen muss. Manche Leute hier können das vielleicht auch in weniger
Stunden, aber die wollen dann sicher mehr als 50 Euro. Dann noch der
Papierkram, Fernost, CE.. naja das kommt später evtl.
Wie auch immer - mit viel Zeit und als "nebenbei-Bastel-Projekt" hätt
ich vielleicht Lust drauf.. :-)
ich hab jetzt nicht alles gelesen
find das vorgehen aber "komisch"
diese "analysieren" vom Musikstück, kann/muss der PC machen..
im µC halte ich das für nicht realisierbar..
dann kann man auch einfach Manuell eingreifen, mit einer GUI usw.
dann würde ich am Anfang vom Musikstück 10 nicht hörbare töne hängen
daran erkennt der µC das Musikstück, weiß die Geschwindigkeit usw.
den µC stellt man auf einer SD karte? diese Kennung (10 töne) und die
dmx-befehle zu Verfügung)
muss dann "nur noch" laufend synchronisieren ...
naja.. IMHO wird hier MIDI-Protokoll usw. sehr unterschätzt
schaut man siech diese kurze! Zusammenfassung an:
http://www.midi.org/techspecs/midimessages.php
(soweit ich das auf die schnelle gesehen hab: es gibt z.b. für jeden
Kanal ein Pitch-wheel usw. diverse Synchronisierungsmaßnahmen usw. )
ohne jemanden der wirklich tief in der Materie (und ich meine jetzt
nicht eine ANWENDER von MIDI,sondern jemanden der das auch umsetzt)
drinnen Sitz
dann braucht jemanden der (gleich viel) Anhung von DMX hat..
wenn es VERKAUFT werden soll, muss das ganze vom Enduer bedienbar sein..
das hilt "Entwicklung einer "Sprache" " genau garnix (man darf nicht
vergessen: das sollen "alleinunterhalter" bedienen, musiker ;-))
Robert L. schrieb:> (soweit ich das auf die schnelle gesehen hab: es gibt z.b. für jeden> Kanal ein Pitch-wheel usw. diverse Synchronisierungsmaßnahmen usw. )
Der Pitch ist wahrscheinlich nicht interessant und kann ignoriert
werden, die Anschlagstärke schon. Ok genau sagen kann man das natürlich
erst, nachdem man weiß, was das Teil können soll.
Synchronisiert werden mus was? Eigentlich nix - wenn die Note aus dem
Computer oder Keyboard kommt, soll das Licht mitmachen.
Aber Deine Idee ist gut, dem "Musiker" ein kleines PC-Tool an die Hand
zu geben, wo er an den Anfang der Datei einen Midi-Befehl mit der
Lied-Nummer einfügt - das vereinfacht die Programmierung. Und für die
aufwändigen Sachen will Klaus ja sicher eine Sequenzer-Spur hernehmen,
das Instrument z.B. "Vibraphone" ist dann eben der Dummy für's Licht und
die einzelnen Noten sind dann die einzelnen Lampen Lampengruppen
Stroboskop usw.
Ein bischen damit beschäftigen sollte sich der Musiker schon - Wer einen
Taschenrechner mit Papierstreifen gekauft hat, ist ja auch noch kein
Buchhalter.. :-)
Hallo Leute,
üblicherweise kann man bei jedem Keyboard einstellen, ob die Midi-Spur
ein internes oder ein externes Gerät bedient, man kann also den Kanal
einfach stummschalten.
Beispielsweise würde ich den Kanal der das licht steuern sollte, über
eine Sysex-Nachricht markieren, um ihn von Kanälen zu unterscheiden, die
zufällig auf dem im Interface eingestellten Kanal senden.
Im Midi-Standard bietet mir jeder Kanal 128 verschiedene Tasten, jeweils
als Event mit Anschlagstärke (0-127), "Abschlagstärke" (0-127, von den
meisten Keyboards nicht unterstützt), sowie 128 Controller.
Die gängigsten sind Pitchbend, Kanal-Aftertouch (das ist, wenn ich auf
eine gedrückte Taste noch fester drücke), Modulationsrad, Lautstärke,
meist Expression über einen zusätzlichen Slider.
Für diese Controller gibts an den meisten Synths
Hardware-Bedienelemente.
Z. B. könnte man auf jede Note (= Taste) ein Makro legen, das man über
die Controller parametrisiert.
Ich würde z. B.über das Modulationsrad die Farbe, oder präziser, das
Farbzentrum festlegen.
Nehmen wir das Makro "einfarbiges Lauflicht", dann wäre das präzise die
Farbe, die das Mod-rad festlegt.
Nehmen wir das Makro "Komplementär-Wechsellicht", dann legt das Mod-Rad
die erste Farbe fest, die zweite folgt als Komplementärfarbe aus der
ersten.
Ziel wäre es, auf die Tasten 128 Makros zu legen. Das würde, ohne
weitere Parametrisierung 128 Makros mal 128 Farben ergeben. Schon damit
wäre das Ding Universen weiter als die üblichen
Sound-To-Light-Steuerungen.
>> 10 nicht hörbare Töne: Das ist das Prinzip. Üblicherweise sind auf jedem
benutzen Midi-Kanal verschiedene meldungen, die den Sound aussuchen (Programm
Change), Panorama, Lautstärke, und verschiedenes andere regeln, das sind pro Kanal
meist bis zu zehn nicht hörbare Events. Das sollte genügen, um einen Song
ausreichend eindeutig zu identifizieren. Sind hier zwei Songs in der
Instrumentierung zu 100% identisch, mit identischem Tempo, dann machts auch
nichts, wenn die das gleiche Licht bekommen.
>Die Spezifikation des Gerätes sowie die Logik kann ich komplett machen,
das Glaub ich nicht: du hasst massive Probleme überhaupt mal in (kurze)
Worte zu fassen, WAS du willst.. und du glaubst einem Programmierer
deine "Logik" begreiflich zu machen??
ja ... hmmm ... PC-Tool ...
sorry, hab gerade so ne Kur vonwegen DAUfestes Produkt hinter mir,
dachte auch das Teil wär DAUfest, man glaubt garnicht auf was für blöde
Ideen die Anwender dann dennoch kommen und die Blödheit dann auf das
Produkt schieben.
Nee, wenn, dann muss das laufen wie die Apple-Produkte, der Anwender
darf nix dran rumkonfigurieren dürfen, keine Konfigdateien etc..
Und Anschließen mit dem Ergebnis leben, alles was man zusätzlich an
Features einbaut, selbst nen Ein-Aus-Schalter, fällt einem hinterher
beim Support nur auf die Füße.
Der versierte Anwender bekommt den Jailbreak schon selber hin, die, die
nicht versiert sind sollens eben bleiben lassen.
Dann muss das Gelumpe noch richtig Geld kosten, weil alles was nix kost
taugt (vom Kopf her) auch nix und es finden sich tagtäglich wieder neue
von der Sorte "Abtrinker", die nem Unternehmen Liquidität entziehen.
Was den obigen Stundenansatz angeht, da kann man auch locker den Faktor
2 bis 10 ansetzen, die Zeit geht am PC durch wie der Wind, also eher
etwas mehr "Luft" noch oben einkalkulieren.
Klaus Blömeke schrieb:> Ziel wäre es, auf die Tasten 128 Makros zu legen.
Das hat mich irritiert - Jetzt muss ich doch mal nachfragen, wie das bei
Deinem Auftritt so läuft: Willst Du mit Deinem Keyboard "das Licht
spielen"? (Auf den Tasten?)
Ich habe angenommen, ein Computer spielt die Midi-Datei ab und Du mit
dem Keyboard evtl. dazu, evtl. singst Du noch was. Dann willst Du die
aufwändigen Stücke als zusätzliche Midi-Spur "komponieren".
Die einfacheren Stücke sollen per Muster erkannt werden, oder? Ich
meine, wenn Du ohnehin alle Deine Midi-Songs markieren willst, musst Du
auch keine Muster erkennen, dann reicht es die Nummer am Anfang zu
lesen.. ?
Fhutdhb Ufzjjuz schrieb:> Nee, wenn, dann muss das laufen wie die Apple-Produkte, der Anwender> darf nix dran rumkonfigurieren dürfen, keine Konfigdateien etc..
Naja es gibt ja auch Nischenprodukte, die viel verkauft werden. Nimm
doch mal einen USB auf seriell(TTL) Adapter. Ist absolut nicht DAUfest,
wird aber hier viel gekauft und verwendet.
>>Das hat mich irritiert - Jetzt muss ich doch mal nachfragen, wie das bei>>Deinem Auftritt so läuft: Willst Du mit Deinem Keyboard "das Licht>>spielen"? (Auf den Tasten?)
Nein, auf gar keinen Fall
>>Ich habe angenommen, ein Computer spielt die Midi-Datei ab und Du mit>>dem Keyboard evtl. dazu, evtl. singst Du noch was. Dann willst Du die>>aufwändigen Stücke als zusätzliche Midi-Spur "komponieren".
genau so
>>Die einfacheren Stücke sollen per Muster erkannt werden, oder? Ich>>meine, wenn Du ohnehin alle Deine Midi-Songs markieren willst, musst Du>>auch keine Muster erkennen, dann reicht es die Nummer am Anfang zu>>lesen.. ?
Ich werde nicht alle Songs markieren wollen. Die Automatik muss greifen,
ohne dass am Song etwas zu machen ist. Die Mustererkennung läuft über
die Parameter, die der Song von sich aus mitbringt.
>>das Glaub ich nicht: du hasst massive Probleme überhaupt mal in (kurze)>>Worte zu fassen, WAS du willst.. und du glaubst einem Programmierer>>deine "Logik" begreiflich zu machen??
Ich habe in kurze Worte gefasst, was ich will. In aller Ausführlichkeit
will ich das nicht darlegen.
Wenn ich einem Programmierer erklären will, was eine Funktion tun soll,
würde ich mich im Zweifel in php-Code ausdrücken.
1
publicfunctiongenerateColor($x)
2
{
3
if($x<255)// rot -> gelb
4
{
5
$col=$x;
6
$farbe=array(255,$col,0);
7
}
8
elseif($x>=255AND$x<527)// gelb -> grün
9
{
10
$col=527-$x];
11
$farbe=array($col,255,0);
12
}
13
....// geht so weiter für die verbleibenden Möglichkeiten
14
return$farbe;
15
}
Ziel ist es, die Farben, die aus Maximal 2 Farben gemischt sind, alle zu
durchlaufen, und zwar gesteuert durch eine einzige zahl ($x)
im ersten Intervall ist rot 255, grün wird abhängig von $x zugemischt,
im zweiten Intervall ist grün 255, rot wird abhängig von $x entfernt.
Das nächste Intervall würde abhängig von $x Blau zumischen, das nächste
grün entfernen, das nächste rot Hinzumischen, dann blau entfernen.
Die Funktion ist getestet, das geht. Die könnte man jetzt noch auf die
128 Schritte des Midi-Standards normieren, hab ich auch schon gemacht
würde das Beispiel jetzt aber unübersichtlicher machen.
aber wenn ich das richtig verstanden habe hast Du ja die Auswertung
Mustererkennung ja schon in PHP gemacht, PHP zu C ist jetzt nicht mehr
so das Hexenwerk ... um das aber abschätzen zu können wäre ein Einblick
in das PHP-Script (in Teilen) schon sinnvoll.
>>hast Du ja die Auswertung Mustererkennung ja schon in PHP gemacht
Hab ich partiell. der code ist aber nicht wirklich vorzeigbar, den
müsste ich vorher refaktorieren.
Viele Grüße,
Klaus
Eine eigene Frage?
Dieser Thread ist über 13 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.