Sampleset auf zwei PCs aufspalten und synchron spielen

    • Offizieller Beitrag

    Hallo liebe GrandOrgler,

    zu Hauptwerk V.1 Zeiten gab es mal die Möglichkeit, zwei Samplesets auf zwei verschiedenen Orgeln miteinander vom selben Spieltisch aus zu spielen. Versuchsweise hatte ich mir da mal ein "Fernwerk" gebastelt, welches über einen Netzwerk-Midi-Treiber (ich komme leider nicht mehr auf den Namen), die entsprechenden Midi-Signale über den Haupt-PC1 an den Neben-PC2 gesendet hatte.

    Mit Einführung des Hauptwerk-Dongles bei HW V 2.3 geriet dieses tolle Feature aber wieder in Vergessenheit, weil natürlich keiner dann zwei HW-Lizenzen deswegen kaufen wollte.

    [red]Dabei wäre dies doch die simpelste Lösung um preiswert die Rechenleistung und Speicherkapazität zu verdoppeln ![/red]

    Z.B. könnte man dann aus 2 preiswerten QuadCore-PCs a 32 GB RAM eine Orgel mit 8-CPU-Cores und 64 GB RAM zaubern, ohne diese noch sehr teuren Sockel 2011 Mainboards und CPUs verwenden zu müssen.
    Oder aus zwei älteren PCs die einzeln nur noch mäßig für den Zweck verwendbar sind wieder ein höherwertiges Gesamtsystem zusammenstellen.

    Ich denke daran, eines dieser großen Samplesets von Sonus Paradisi entweder Registermäßig zu halbieren und je die Hälfte auf einem PC laufen zu lassen, oder alternativ z.B. einfach alle Surround-Klänge vom 2. PC abspielen zu lassen. Damit hätte man deutlich mehr Speicher und Polyphonie gewonnen. Außerdem würde sich die Ladezeit halbieren.

    Ein solches System müsste eigentlich genau die doppelte Performance bringen. Im Gegensatz dazu bringt ein einziger "doppelt so großer" PC niemals die doppelte Leistung, da die Datenraten des Daten- und Adressbus, also damit die RAM-Zugriffe und Laderaten von den Laufwerken nicht doppelt so schnell sind, sondern höchstens geringfügig besser liegen.

    Im Klartext:

    [red]Zwei PCs á 500,- € sind schneller als ein PC für 4000,- € !![/red]

    Ich denke es müsste jetzt schon mit GrandOrgue möglich sein so etwas zu realisieren. Optimal wäre eine offizielle Unterstützung von GrandOrgue für skalierbare Multi-Computer-Systeme. Damit könnte auch leicht ein attraktiver Vorsprung gegenüber Hauptwerk erreicht werden. Ggf. würde ich die ODF eines großen Sets speziell für diese Anwendung anpassen.

    Hat schon jemand in diese Richtung Versuche unternommen?

    Besteht seitens der GrandOrgue User Interesse an so einer Lösung?

    Gruß Michael

  • Also das wäre eine Idee, insofern sich das machen lässt. Dann könnte ich den neuen Rechner und den alten zusammen laufen lassen. Aber wie kriegt man 2 PCs syncron zueinander?

    • Offizieller Beitrag

    Nehmen wir mal an, das Sampleset ist von einer drei-manualigen Orgel mit Pedal. Auf PC1 werden zunächst alle Samples von Pedal und Manual 1 in GO geladen, ganz normal, als ob es eine kleinere Orgel sei. Auf PC2 wird ebenfalls ein GrandOrgue gestartet. Dort werden dann nur alle Samples der Manuale 2 und 3 geladen.

    Am Spieltisch werden die Midi-Signale von Pedal und Manual 1 ganz normal auf PC 1 abgespielt. Die Midi-Signale von Manual 2 und Manual 3 werden von GO auf PC1 auch angenommen, aber dort findet keine Soundausgabe statt. Stattdessen werden diese wieder als externe Midi-Signale an den PC 2 weitergereicht und in dem Augenblick auch dort abgespielt. Diese Möglichkeiten bietet GrandOrgue m.E. jetzt schon! Man kann ja auch z.B. einen externen Orgelexpander oder ein Pfeifenwerk über GrandOrgue spielen. Etwas Fummelei ist dann vielleicht noch die Registerschalter-Signale für Manual 2 und 3 weiterzureichen, aber das sollte eigentlich genauso gehen.

    Was die Audiosignale der beiden PCs betrifft, kann man entweder beide Signale wieder vereinen (ein ganz kleiner Mischer reicht da) und wieder wie gehabt über einen Verstärker und ein Paar Lautsprecher abspielen. Oder man nutzt die getrennten Signale dann gleich um eine separate Abstrahlung für verschiedene Teilwerke über z.B. 2 Paar Lautsprecher vorzunehmen.

    Was an Zusatzfunktionen in GrandOrgue noch sinnvoll wäre um es bequemer zu haben wäre:

    GrandOrgue müsste sozusagen in einem Master- oder einem Slave-Betrieb laufen können.

    Am Master (Spieltisch) wird dann das Set ausgewählt, dass der/die Slave(s) dann auch laden sollen, damit man nicht ein Set zuerst auf mehreren PCs starten muss um es spielen zu können. Das könnte aber evtl. auch schon über bereits vorhandene Funktionalität gehen.

  • Hallo,

    klar geht das, aber ...;-)

    so ohne weitere Maßnahme käme es einem Lottogewinn gleich, wenn die Ausgangssignale synchron und zeitgleich (also nicht zeitlich versetzt) ausgegeben würden. Spätestens beim nächsten Boot wäre eh wieder alles anders.
    Bedeutet aber nicht, dass man es nicht versuchen sollte. Falls man Midi-Signale -durchschleift-, sollte das ohne Zeitverlust geschen. Bei gleicher Latenz und gleicher Auslastung der Rechner und getrennter Ausgabe (jeweils eigene Lautsprecher) könnte es so klappen, das man es genießen kann.
    Was man eigentlich bräuchte ist ein MasterClock für beide (die guten SoundCards wie RME und Konsorten haben sowas zumindest als Option) und die Software sollte darauf angepasst werden (kenne GO zu wenig um das aus dem Stand beurteilen zu können). Stichwort: verteilte Rechenpower. Setzt man noch eins drauf, dann nutzt man auch bisher ungenutzte Ressourcen (CPU UND GPU auf allen Rechnern). Macht beim Sampling keinen sinn aber z.B. für Hall und ähnliches ließe sich da echt was zaubern.
    Außerdem noch ein wort zu Aeolus ... Prinzipiell ist die Additive Synthese der Sampling-Technik weit überlegen. Das Problem ist nur, das zum einen keine guten Analysen vorliegen (die kämen ja von guten Samples) und viel schliimmer ist, dass der eindeutig musikalische Vorteil (die zumindest virtuelle Synthese aus zigtausenden Sinusschingungen so nie genutzt wurde. Es gab meist immer nur eine eher einschränkende FFT ohne Realisierung der vielfältigen "Effekte", die sich bei einem Orgelklang so "abspielen". Das Sampling fängt manchmal solche Effekte ein. Diese bleiben aber meist statisch oder werden bestenfalls interpoliert. Das isses aber nicht. Hinzu kommt etwas enorm wichtiges. Man kann keine Orgelmacht mit ein paar Brüllwürfeln am PC oder zwei LS im Spieltisch erzeugen. Viele kleine Kanäle. Das bringt es und wie. Eine Orgel ist auch nicht laut (keine 250 W) ;-). Lieber 10 Stück a 10 W. Die dann NICHT synchronisiert (im Hinblick auf deie Klänge aber synchronisiert erzeugt. Das wäre dann tatsächlich mehr Orgelklang.

    LG PfeifenSammler (lieber KlangSammler)

    • Offizieller Beitrag

    Der asynchronste Bestandteil in der Kette dürfte wohl der Organist selbst sein, der technisch betrachtet seine verschiedenen Klaviaturen nur äußerst ungleichmäßig zu traktieren im Stande ist :D
    Allerdings ist das auch genau das, was die live gespielte Musik gegenüber einem Sequenzer so liebenswert macht. Da also nur "handbetätigte" Note-ON und Note-OFF Signale im Spiel sind, würde ich jetzt keine Notwendigkeit für ein Midi-Clock-Signal erkennen.

    Es wäre natürlich empfehlenswert, wenn die beteiligten PCs eine in etwa gleich niedrige Latenz aufweisen. Hohe Latenzzeiten sind für virtuelle Orgeln sowieso kaum zu gebrauchen. Andererseits sind auch die Latenz-Unterschiede innerhalb einer echten Pfeifenorgel von Werk zu Werk, ja sogar von Pfeife zu Pfeife mitunter recht deftig.

    Zitat

    Original geschrieben von PfeifenSammler

    Außerdem noch ein wort zu Aeolus ... Prinzipiell ist die Additive Synthese der Sampling-Technik weit überlegen. Das Problem ist nur, das zum einen keine guten Analysen vorliegen (die kämen ja von guten Samples) und viel schliimmer ist, dass der eindeutig musikalische Vorteil (die zumindest virtuelle Synthese aus zigtausenden Sinusschingungen so nie genutzt wurde. Es gab meist immer nur eine eher einschränkende FFT ohne Realisierung der vielfältigen "Effekte", die sich bei einem Orgelklang so "abspielen". Das Sampling fängt manchmal solche Effekte ein. Diese bleiben aber meist statisch oder werden bestenfalls interpoliert. Das isses aber nicht.

    Genau - da werden ja die Nachteile der Synthese schon offenbar :) Wie will ich denn den Klang der Silbermannorgel aus Musterhausen mit der Akustik der St. Paradigmakirche synthetisch erzeugen, wenn ich ihn nicht vorher analysiert habe? Und dann müssten in der FFT noch die richtigen Frequenzen in originalgetreuer Weise moduliert werden, um den Klang nicht statisch klingen zu lassen! Geht eigentlich mit vertretbarem Aufwand nur für eine hypothetisch erfundene Orgel in einem erfundenen Raum. Wird IR-Hall verwendet, dann wäre der ja auch schon wieder gesamplet. In der Samplingtechnik wird aber mit mehrfachen Loops und mehrfachen Releases, sowie teils mit Simulation von Windmodellen und Verstimmungen, schon einiges getan um den Klang doch relativ lebhaft und trotzdem weitgehend originalähnlich zu halten. Aber es sind sicher beides Themen, die in Zukunft noch diskutiert werden müssen und wo klanglich noch Potenzial drinsteckt.

    Die Klangabstrahlung einer virtuellen Orgel ist noch mal ein ganz spezieller Fall für sich. Hier gibt es leider keine Universallösung. Jeder Anwendungsfall, ja sogar fast jedes Sampleset, hat wieder andere Anforderungen an eine dafür optimale Abstrahlung. Dabei können durchaus auch nur 2 Lautsprecher das Optimum darstellen oder aber auch ganz viele können optimal sein - das lässt sich nicht verallgemeinern. Aber dieses Thema würde ich gern in einem anderen Thread, siehe hier, diskutieren.

    Gruß Michael

  • @ Pfeifensammler: mir ist nur einer bekannt der so wie Du sofort auf den Punkt kommt. Und den kenne ich aus dem Yamaha-Forum.
    @ Mic: Die Idee ist nicht schlecht. Leider nur für Hardcorer in Sachen virtueller Orgel geeignet.
    2 PC wäre jetzt auch Käse. Aber 2 Motherbords mit Gestrüpp im Orgelgehäuse verbaut würde die Sache rund machen.
    Ich bin in der glücklichen Lage meinen PC mit 256 GB aufzurüsten. Mach ich aber nicht, da die Rechnung für 8 Klötze a 32 GB z. Zt. knapp 5000€ beträgt. Da gebe ich mich mit 8 x4 zufrieden und feuere nur Sets von Dorforgeln ab :)

  • Wie wäre es denn den ganzen Kram ohne Gehäuse in den Spieltisch zu bauen. Wegen Potenzialausgleichen der Komponenten vielleicht ggf. auf einer Alluminium oder Messingplatte...da kann man Mainboards verbauen...noch und nöcher.

    Juhu...seit diesem Beitrag bin ich Organist !!!
    Es war ein langer, harter und steiniger Weg bis hierher ... :D

  • Zitat


    Gibt es vielleicht ein PC-Gehäuse, in dem man 2 Mainboards montieren kann? Ein gemeinsames Netzteil müsste ja bei geeigneter Dimensionierung auch reichen. Die Mainboards lose in ein Orgelgehäuse zu werfen halte ich für keine so gute Idee

    In der Server-Welt gibt es so etwas. Älter sind die Blades. Jetzt gibt es auch mehrere Mainboards pro Server, zB:
    http://h18000.www1.hp.com/products/quick…tml&docid=14406

  • Zitat

    Original geschrieben von Mikelectric
    Werter Herr Offenbassi, meine vorzüglichste Hochschätzung zur Erreichung des Status Organiste. :-pope:

    Welcher Status kommt als nächstes? Maitre Titulaire de les grand orgues de MPS ???

    Zitat

    Aber als Electricus würde ich dafür plädieren, die Einzelteile in ein komplett abgeschirmtes Gehäuse zu verbauen :-teacher:

    Wie wäre es denn wenn man hinterher einen Blechkasten drumbaut? Dazu fühl ich mich völlig in der Lage.

    • Offizieller Beitrag

    Man kann das alles machen - Hauptsache es ist hinterher CE-Konform. Jeder der einen PC zusammenschraubt ist automatisch Hersteller und haftbar für alles was das Gerät an Strahlung an die Umwelt absondert.

    Also wenn die Oma in der Nachbarwohnung zusammenklappt, weil ihr Herzschrittmacher verrückt spielt oder Du nach einiger Zeit orgeln hartgekochte E...r hast von der Mikrowellenstrahlung, dann könnte das alles davon kommen :D

  • Was soll da strahlen? Das ist doch kein 20/0,4 kV , 630 kVA Trafo der dann dahinten drin brummt. Die Sationen in Wohnhäusern werden nach BImSch auch mit Blechplatten abgeschirmt.

    • Offizieller Beitrag

    Natürlich wimmelt es in einem PC von jeder Menge elektromagnetischer Strahlung. Überall wo Elektronen sich bewegen, entsteht diese! Besonders unsere hoch getakteten CPUs mit 3 GHz strahlen auch schon im Mikrowellen-Bereich ab. Und das mit ganz passablen Strahlungsleistungen.

    Die Strahlung wird aber von den Metallgehäusen unserer PCs weitestgehend zurückgehalten. Auch Laptops sind deswegen immer in irgendeiner Weise metallisch geschirmt. Ob die noch austretende Strahlung im zulässigen Rahmen liegt, kann nur eine EMV-Messung klären. Diese Messungen sind schweineteuer.

    Ein "Inverkehrbringer" ist für die Einhaltung der Bestimmungen verantwortlich. Dazu zählt auch jeder der einen PC zusammenschraubt. Die CE-Zeichen der Einzelkomponenten sagen da noch nichts über das Gesamtgerät aus. Eigentlich müsste also jeder dieser PCs einzeln auf EMV-Konformität geprüft werden. Dennoch besteht natürlich eine gute Wahrscheinlichkeit, mit geeigneten Gehäusen und Maßnahmen ein Gerät zusammenzuschrauben, dass die Werte vielleicht einhält. Ob das mit selbstgelöteten Blechteilen gelingt ist halt fraglich. Irgendwo muss ja auch die Kühlluft noch rein und raus können.

    Geregelt ist das alles im Gesetz über die Elektromagnetische Verträglichkeit:

    EMVG

  • Mikelectric

    Vom Midi-Clock habe ich nicht geschrieben.
    Zeitraster MidiClock: Für das Auslösen eines Tons müssen bis zu 3 Bytes übertragen werden, was 0,960 ms in Anspruch nimmt Objektives siehe: http://de.wikipedia.org/wiki/Musical_I…gital_Interface .

    Zeitraster Synthese:
    Bsp.: Bei 10 gedrückten Tasten und 30 aktiven Registern werden bei 44,1 Khz AbtastFrequenz jede Sekunde 13230000 SampleWerte fällig In 75nS also mind. eine Addition, ein Zugriff auf eine Speicherstelle (nicht im Cache) und eine Multiplikation. Alle 22,x uS also 300 Samples.

    Der Pc selbst wartet mit einer Latenz (die noch nichts mit MidiClock etc. zu tun hat) im günstigen Falle von "guten" 15 Milli Sek. auf. Das ist nicht zwangsläufig ein fester Wert sondern von der Konfiguration abhängig.
    Das wäre also die Zeit, die der Pc braucht, um den bereits berechneten Klang auszugeben. Bei einer derartigen Inanspruchnahme der Ressourcen des Pc wäre das schon einer toller Wert. So – und nun bringe der Elektriker das mal mit zwei oder mehr Pc's + MidiLahm+ was weiß ich noch synchron zusammen. Das geht nicht ohne entsprechende Maßnahmen. StarPu o.ä. wäre ein guter Ansatz. Dazu müsste GO aber strukturell umgebaut werden, nämlich z.T. in parallele Einheiten zerlegt und dann durch Barrier z.B synchronisiert werden. Dann aber könnte man das wohl auch auf mehrere PC's erweitern.

    Was die additive Synthese vs. Sampling angeht:
    Im Netz findet man nun wirklich genügend Artikel, die sich wissenschaftlich mit den Synthese-Modellen beschäftigen. Damit kann sich jeder, der möchte, eine objektive und sachgerechte Meinung bilden.
    Schließlich ist nicht die Spezies Birnbaum schuld, wenn der eigene Birnbaum keine Früchte trägt und schon gar nicht ist die Spezies Apfelbaum sowieso besser, bloß weil der des Nachbarn in diesem Jahr schöne Früchte trägt.

    Abstrakte
    Nee, im Yamaha-Forum bin ich nicht. Bin hier zufällig „vorbeigekommen“ und wollte unbedingt und ungefragt meinen Senf dazu geben. ;)


  • Wenn man die einzelen Werke verteilt, glaube ich nicht, das man ein so exakte Synchronisation braucht. In der wirklichen Welt gibt es auch unterschiedlich lange Trakturwege und alles ist nicht auf die Millisekunde genau abgestimmt.

    Du schreibst, das ein MIDI Befehl knapp unter 1ms braucht. Ein vollgriffiger Akkord (8 Finger + 1 Fuss) braucht also demnach 8 ms, bis er komplett übertragen ist. Darüber hat sich noch kein Mensch beschwert.
    Ein Ping im lokalen Ethernet schafft man in unter 0.2 ms - die Verzögerung ist daher vernachlässigbar.

    Die Rechnung für die Verzögerung einer Software wie GO würde ich so nicht machen.
    Audio-Output arbeitet immer Blockweise (bei GO zwischen 16 und 1024 Samples per Block einstellbar).
    Die Wiedergabe eines 1024-Blocks braucht bei 44.1kHz 23.22 ms. Die maximale Reaktionszeit von GO wäre demnach das Doppelte. Einer ist immer im Abspielen und einer in Berechnung - während der Berechnung kann man nur schlecht auf neue MIDI-Signale reagieren.

    Zur Gesamt-Latzenz tragt aber noch viel mehr bei.

  • Zitat

    Besonders unsere hoch getakteten CPUs mit 3 GHz strahlen auch schon im Mikrowellen-Bereich ab. Und das mit ganz passablen Strahlungsleistungen.

    Moderne, leistungsfähige Rechner sind aber passable Heizkraftwerke - alle Energie, die so umgesetzt wird, kann nicht als Strahlung (in deinen Sinne - Wärme-Energie ist ja eine andere Form von "Strahlung) umgesetzt werden.

    • Offizieller Beitrag
    Zitat

    Original geschrieben von PfeifenSammler

    ... Was die additive Synthese vs. Sampling angeht: ...

    Da wir ein extra Unterforum für Aeolus haben, würde ich dieses Thema gerne dort weiterdiskutieren.
    Wenn eine Chance besteht diese virtuelle Orgelsimulationssoftware basierend auf Klangsynthese zu neuem Leben zu erwecken und tatsächlich den Klang zu verbessern, dann sollten wir das auch unterstützen - dazu ist unsere MPS Orgelseite schließlich da. :-teacher:

    zum aktuellen Thread im Unterforum Aeolus

    • Offizieller Beitrag
    Zitat

    Original geschrieben von martin

    Moderne, leistungsfähige Rechner sind aber passable Heizkraftwerke - alle Energie, die so umgesetzt wird, kann nicht als Strahlung (in deinen Sinne - Wärme-Energie ist ja eine andere Form von "Strahlung) umgesetzt werden.

    Das ist sicher richtig. Der größte Teil der Energie wird natürlich in Wärme umgewandelt. Aber ein Teil der Energie wird unter anderem auch in Form von elektromagnetischen Wellen unterschiedlichster Frequenzen abgestrahlt.

    Beim Selbstbau mit Computerkomponenten durch Laien besteht aber die Gefahr, dass jemand aus Unwissenheit eine gut abstrahlende Antenne baut, anstatt die Strahlung durch geeignete Maßnahmen einzudämmen. Besondere Gefahr besteht da gerade, wenn man auf ein geprüftes Gehäuse ganz verzichtet, oder selbst etwas konstruiert.

    In solchen Fällen kann es leicht möglich sein, dass z.B. in der Umgebung liegende Funknetzwerke (WLAN, DECT-Telefon usw.) massiv gestört werden. Wird aufgrund einer Anzeige dann der Verursacher der Störungen ermittelt, so wird dieser natürlich zur Verantwortung gezogen.

    Da es wie man sieht, eine verbreitete Meinung ist, dass PCs keine Strahlungen abgeben, wollte ich an dieser Stelle nur darauf hinweisen, dass dem nicht so ist, und man besonders aufpassen muss, wenn man kein geprüftes Gehäuse verwendet.

    [hr]
    Was mich persönlich anbelangt, so habe ich kein Problem damit, zwei komplette PCs inklusiv deren Gehäuse in meine Orgel zu stellen. Damit werde ich jetzt zunächst mal versuchen eine Lösung zum Thema zu verwirklichen. Im ersten Schritt müsste ich jetzt die beiden GO-PCs per MIDI miteinander in irgend einer Weise verbinden. Das erste Problem das auftaucht ist schonmal, dass der eine unter Windows läuft und der andere unter Linux. Mal sehen, ob das nicht auch gleich mit unterschiedlichen Betriebssystemen zu erreichen wäre.