Ergebnis 1 bis 17 von 17

Thema: [Beta] Disharmony

  1. #1

    [Beta] Disharmony

    Moin. Ihr kennt das folgende vielleicht schon, Cherry erwähnte es ein paarmal, aber ich habe es nie außerhalb des Kami vorgestellt.

    Disharmony Audio Patch

    Disharmony ist ein (zum Tastenpatch kompatibler) Ersatz des Audioausgabesystems von RPG Maker 2000/2003*

    1. Features
    • MIDI-Wiedergabe wie im Original. Loop-Startpunkte mit Controller 111 werden unterstützt und der Anfang von MIDIs wird "überspult", wenn in dieser Zeit keine Noten gespielt werden.**
    • Waveformate werden abgespielt, wenn dafür ein DirectShow-Filter installiert ist. Filter für MP3 und WMA sind auf Windows-Systemen vorinstalliert, einen gesunden Satz an weiteren Filtern kann man hier herunterladen.
    • Trackerformate werden abgespielt, wenn libdiscord.dll vorhanden ist (im Downloadpaket enthalten!)
    • Mit dem mitgelieferten LoopEditor lässt sich ein Loop-Startpunkt für WMA-, MP3- und OGG-Dateien festlegen. Dieser hat dieselbe Funktion wie der Controller 111 für MIDIs. Der Loop lässt sich auch komplett abschalten.
    • Das *.link.wav-Format von Ineluki wird unterstützt, aber nicht benötigt. Habt ihr also bereits ein Projekt mit vielen MP3s, das für den MP3- / Keypatch gemacht wurde, wird dieses weiterhin funktionieren. Allerdings verhält sich Disharmony etwas anders (siehe unten).
    • Möchte man keine *.link.wavs anlegen, kann man seine Dateien auch einfach in .wav umbenennen und normal importieren. Vorsicht: benutzt man den LoopEditor, sollten die Dateinamen auf .mp3.wav (.wma.wav, .ogg.wav, je nach Format) enden, sonst wird die Loopeinstellung nicht benutzt!
    • Volle Unterstützung für den Keypatch von Ineluki. Das Setup versucht, herauszufinden, ob dieser installiert ist. Wenn ja, installiert es Disharmony auf Wunsch *unter* den Keypatch, sodass dieser weiterhin benutzbar bleibt.
    • Die Funktion "MIDI Play Pos" funktioniert für MIDIs und Wave-Dateien gleichermaßen (im Original ging es nur mit Midis), gibt die Position allerdings nicht in MIDI ticks, sondern in Millisekunden zurück.
    • Auch die Funktion "Played BGM once" sollte wie erwartet funktionieren.
    • Vollständige Hilfedatei (auf englisch).

    2. Anmerkungen

    "Beta" heißt es, weil ich es nur groben Tests unterzogen habe. Es sollte Feature-komplett sein, solltet ihr allerdings einen Fehler finden, bitte teilt ihn mir mit, denn nur so kann ich die Qualität der Software verbessern.
    Zur Wiedergabe von .link.wavs: Dies ist mit Disharmony zwar möglich, aber nicht vollständig kompatibel zum MP3-/Keypatch von Ineluki. Inelukis Patches spielen die MP3s, ohne davor bereits laufende Musik anzuhalten. Disharmony hält beim Starten eines neuen Liedes das alte an (Standard-Maker-Verhalten). Mit Inelukis Patches sind auch Sounds loopbar, Disharmony loopt Sounds grundsätzlich nicht. Außerdem spielt Disharmony die MP3s durchweg lauter. Sollte dein Spielaufbau auf diesen Features des MP3-/Keypatches beruhen, lässt sich Disharmony allerdings immer noch "unter" den anderen Patch installieren, indem die harmony.dll in oldharmony.dll umbenannt und damit die gleichnamige Datei im Makerverzeichnis überschrieben wird. Das Setup hat eine Option, dies automatisch zu tun.

    3. Nützliche Tools

    Der LoopEditor ist natürlich das nützlichste Tool im Zusammenhang mit Disharmony. Dieser wird aber mit Disharmony ausgeliefert und wird hier nicht gesondert verlinkt. Was aber noch nützlich sein kann, sind aus meiner "Tools Collection" einmal der LinkMaker2000, der es ermöglicht, .link.wavs mit erweiterten Einstellungen zu erstellen. Auch ist es damit möglich, viele Links auf einmal anzulegen. Ferner ist für neuere Versionen des RPG Maker 2003 ForceHarmony oder ProjectRunner2000 (siehe Tools-Collection-Link), meine Implementierung des HarmonyPatchers von Bananen-Joe, von Nöten, um Disharmony verwenden zu können.

    4. Homepage & Download

    Die aktuellste Version von Disharmony findet ihr auf meiner Homepage, genauer gesagt unter:


    Es gibt drei Downloadversionen: einmal als Setup (insbesondere für Anfänger empfohlen, aber eigentlich auch für die meisten anderen), einmal gepackt als 7-zip und einmal als zip. Beide Formate können mit dem kostenlosen 7-zip entpackt werden.
    Wer eines der Archive lädt, und nicht weiß, wie er es installieren soll, findet in der Datei eine Hilfedatei (disharmony.chm), dort steht beschrieben, wie eine manuelle Installation abläuft.

    5. Credits

    Grüße und Küsse (wobei... bleiben wir bei Grüßen) gehen an:
    • Mason Wheeler für libdiscord.dll (Tracker-Support) und Coding-Unterstützung.
    • Ineluki, der mir die Erlaubnis erteilte, diesen Patch zu produzieren, und mich entsprechend unterstützte.
    • Colin Wilson, dessen MIDI Components schlussendlich bewirkt haben, dass Disharmony auch MIDIs selber abspielen kann.
    • Carlos Barbadosa, dessen DSMixer erst die Sound-/Musikausgabe über DirectSound ermöglichten.
    • Jurgen Faul für die Audio Tools Library, die mir ein Lesen und Schreiben der Tags ermöglichte.

    Credits über weitere Bestandteile von Disharmony findet ihr in der copying.txt in den Paketen / der Disharmony-Installation. Die solltet ihr sowieso lesen, wegen Haftungsausschluss und so

    6. Schlusswort

    Ich hoffe, euch gefällt Disharmony genauso wie mir, und dass ich viel liebe Kritik und neue User bekomme xD Viel Spaß wünsche ich jedenfalls damit!

    * Je nach Version wird dafür von Cherry / BananenJoe ForceHarmony oder mein ProjectRunner2000 benötigt.
    ** Die MIDI wird mit vierfacher Geschwindigkeit abgespielt, so lange, bis das erste Note-On-Event kommt.

    Geändert von derula (30.09.2011 um 01:30 Uhr)

  2. #2
    Moin, habe eben ein Update hochgeladen, das auch tatsächlich Keypatch-kompatibel ist! Also wer das Problem gehabt haben sollte, dass er den Keypatch nicht mit Disharmony benutzen konnte: neue Version laden!

    Nebenbei wurden noch ein paar andere Sachen gefixt (siehe Homepage).

  3. #3
    Sorry für Doppelpost, wollte nur mal ne neue Version ankündigen.

    Immer noch Beta, bitte melden, wenn ihr Bugs findet! In diesem Thread zum Beispiel ist noch viel Platz

    Hauptneuerungen:
    - Etliche Bugfixes
    - Verbessertes und lokalisiertes Setup (dieses gibt es nun auch vollständig in französisch, spanisch und deutsch)
    - Loopstartpunkt für MIDIs kann geändert werden (Controller 111, also Original-Harmony-kompatibel)
    - Da Leute eine Einschränkung der Original-Harmony verwendet haben um einzelne Sounds anzuhalten, habe ich ein ähnliches Feature eingebaut: Spielt man einen Sound auf Lautstärke 0 ab, werden alle andere gerade spielende Sounds desselben Dateinamen angehalten.
    - Harmony-Patcher-Tool hinzugefügt (kann im Gegensatz zu ForceHarmony oder ProjectRunner auch die RPG2003.exe patchen, danke Bananen-Joe)
    - Effekteunterstützung (siehe Hilfedatei und Effekteverwaltungs-Tool)
    - Multikanal-Audio (auch für nicht-MIDI) und separate Steuerung der Kanäle
    - Tools auf französisch und deutsch übersetzt

    Zur Homepage

  4. #4
    Ah gut, das der Thread mal wieder hochkommt, ich hätte tatsächlich was zu melden. Die Disharmony hatt auf Vista (zumindest bei mir) einen bitteren Beigeschmack. Es laggt. Zu sehen ist das toll an Peuteris Grey. Ich habs dann bei mir selber eingebaut und musste festellen, das es auch da zu Laggs kommt.
    Ändert man nun die Harmony-File wieder zurück hört das laggen auf (falls das wichtig sein sollte).

    edit:
    Gerade eben mal die neue Dishamrony getestet. Laggen ist nicht mehr soooo heftig, allerdings kommt es immer mal wieder zum stocken (Was auch an meinem Rechner liegen kann).

    Geändert von R.D. (12.09.2009 um 14:09 Uhr)

  5. #5
    Zitat Zitat von R.D. Beitrag anzeigen
    Gerade eben mal die neue Dishamrony getestet. Laggen ist nicht mehr soooo heftig, allerdings kommt es immer mal wieder zum stocken (Was auch an meinem Rechner liegen kann).
    Das ist... schön. Naja, hört sich zumindest besser an als das andere Ergebnis von neulich. Da hat mir jemand gemeldet, dass es unter Vista das ganze Spiel einfriert bei der ersten abgespielten MP3 ^^'



    Danke jedenfalls für die Antwort ich werde sehen, was ich tun kann.

  6. #6
    Zitat Zitat von derula Beitrag anzeigen
    - Da Leute eine Einschränkung der Original-Harmony verwendet haben um einzelne Sounds anzuhalten, habe ich ein ähnliches Feature eingebaut: Spielt man einen Sound auf Lautstärke 0 ab, werden alle andere gerade spielende Sounds desselben Dateinamen angehalten.
    Die Funktion hab ich gebraucht Allerdings kommt dann folgende Fehlermeldung:

  7. #7
    Da der Loop Editor bei mir in der Vergangenheit schon Probleme bereitet hat, habe ich ihn gleich zuerst getestet, siehe da es gibt ne Menge Errors.











    Die letzten beiden wiederholen sich wenn ich irgendwo auf den Bildschirm klicke, ich habe nach 3 Loops entschlossen, unten in der Startleise beim letzten Fehlerfenster ("Error") mal "Gruppe schließen" zu wählen und bekam es wenigstens zu.

    EDIT: EffectsManager und HarmonyPatcherGUI funktionieren problemlos.

    Geändert von MagicMaker (13.09.2009 um 16:54 Uhr)

  8. #8
    Zitat Zitat von Yukari Beitrag anzeigen
    Die Funktion hab ich gebraucht Allerdings kommt dann folgende Fehlermeldung:
    Oh ups. Sieht so aus als wäre es ein leichter Fix. Melde mich wieder

    Zitat Zitat von MagicMaker Beitrag anzeigen
    Da der Loop Editor bei mir in der Vergangenheit schon Probleme bereitet hat, habe ich ihn gleich zuerst getestet, siehe da es gibt ne Menge Errors.
    Zitat Zitat von derula
    Nochmal zu der Sache wegen Loop-Editor-Absturz: siehe diesen Bug im Bugtracker vom Project JEDI. Zitat:
    Zitat Zitat von obones
    This is a windowblinds problem, not ours.
    Plus it is well known that WindowBlinds is not stable.
    We won't do anything about this, just don't use WindowBlinds
    Dem habe ich nichts hinzuzufügen. ^^ Nur eines noch: Theoretisch könnte ich natürlich auch den Standard-[?]-Button von Windows nehmen, aber der funktioniert nur mit Komponenten mit eigenem Window-Handle (Normale Buttons, Edits), und in LoopEditor sind viele rein grafische Komponenten (Play-/Test-Button, Fortschritts-/Loopanzeige). Um es damit funktionieren zu lassen müsste ich die alle in einen eigenen Container setzen, der ein eigenes Window-Handle hat, und das will ich ehrlich gesagt nicht machen, nur um WindowBlinds-kompatibel zu werden ^^ (siehe obiges Zitat)

  9. #9
    Zitat Zitat von derula Beitrag anzeigen
    Oh ups. Sieht so aus als wäre es ein leichter Fix. Melde mich wieder
    Das war es tatsächlich. Habe Yukari eine Version zum Testen geschickt, bekam aber leider keine Antwort. Eigentlich müsste es allerdings mit folgender Version behoben sein:

    24.10.2009 Disharmony 0.9.5.30:
    - Fixed a bug where stopping sounds by playing them again at volume 0 crashed the game.
    - Fixed a bug where setting out-of-bounds volume values crashed the game or did weird things.
    - Fixed Harmony Patcher GUI that failed to enable the patch button and then failed to patch.
    - Added Spanish translation for tools. Thanks again to EN.I!

    Übrigens habe ich Disharmony unter Vista getestet und keine Probleme feststellen können mit der neuesten Version. Eine ältere Version hat dagegen Probleme bereitet. Sollte Disharmony also unter Vista nicht richtig funktionieren, stellt sicher, dass ihr die neueste Version habt!

  10. #10
    ACHTUNG! Es wurden Lizensierungsprobleme mit Disharmony festgestellt. Ich empfehle deshalb, Disharmony momentan nicht in euren Projekten zu verwenden, da es einen Lizenzbruch darstellen würde. Im Moment ist unbekannt, wann und ob das Problem behoben werden wird.

    Solange das Problem besteht, ist Disharmony nicht mehr von meiner Webseite downloadbar. Jede Verwendung geschieht auf eigene Verantwortung.

  11. #11
    Was genau für Lizenzprobleme?

  12. #12
    Teile der verwendeten Bibliotheken sind LGPL-lizensiert, andere MPL-lizensiert. Das lässt sich so nicht ohne weiteres mischen. Ich müsste entweder ganz Disharmony LGPL-lizensieren (was evtl wegen der MPL-Bestandteile nicht geht und außerdem hab ich Ineluki versprochen den Sourcecode nicht freizugeben) oder die LGPL-Bestandteile ersetzen oder in eine extra-DLL auslagern. Der TURBU-Macher hat mich darauf hingewiesen...

  13. #13
    LGPL-Bestandteile in eine extra-DLL auslagern? Klingt am vernünftigsten.

  14. #14
    Nur, dass eine zentrale Idee von Disharmony war, alles in einer DLL zu haben. Sonst hätte ich wahrscheinlich auch FMOD verwendet statt cbDSMixer.

  15. #15
    Eine neue Version von Disharmony ist nun fertiggestellt! Das Problem wurde behoben; Disharmony kann nun 100,5% legal verwendet werden! :P

    Außerdem gibt es einen Haufen neue Features:

    30.09.2011 Disharmony 0.9.7.52 (Tool-Versionen 0.9.2):
    - Lizenzproblem behoben.
    - Lautstärke kann nun mit Variablen geändert werden ohne zu laggen.
    - GUI für eigene Keypatch-Funktion zu EffectsManager hinzugefügt.
    - LoopEditor kann nun RMXP-Loopstartpunkte in OGG-Dateien importieren.
    - Sprachpakete funktionieren nun in allen Regionen mit gleicher Sprache.
    - Upgrade auf neueste Delphi-Version.
    - Soundeffekte werden nun komplett in den Speicher geladen (nicht mehr gestreamed).
    - Soundeffekte werden für kurze Zeit im Speicher gehalten, um schneller wiederholt werden zu können.
    - System-Soundeffekte bleiben nun permanent im Speicher für schnellere Wiedergabe.
    - Verbesserte Wiedergabe von Tracker-Formaten mittels libmodplug (mit Dank an Mason Wheeler!).
    - .link.wav-Dateien können nun auch auf MIDI-Dateien zeigen.
    - Kleinen Bug im Installer behoben.

    Geändert von derula (30.09.2011 um 01:31 Uhr)

  16. #16
    Zitat Zitat von derula Beitrag anzeigen

    - Soundeffekte werden nun komplett in den Speicher geladen (nicht mehr gestreamed).
    - Soundeffekte werden für kurze Zeit im Speicher gehalten, um schneller wiederholt werden zu können.
    - System-Soundeffekte bleiben nun permanent im Speicher für schnellere Wiedergabe.
    Heisst das, dass es nun nicht mehr laggt wenn zuviele Soundeffekte (hintereinander) abgespielt werden?

  17. #17
    Zitat Zitat von Supermike Beitrag anzeigen
    Heisst das, dass es nun nicht mehr laggt wenn zuviele Soundeffekte (hintereinander) abgespielt werden?
    Jain. Wenn derselbe Soundeffekt mehrmals schnell hintereinander abgespielt wird, sollte das wesentlich schneller laufen; auch wenn viele Systemsounds schnell aufeinanderfolgend abgespielt werden. Wenn viele verschiedene Nicht-System-Soundeffekte abgespielt werden, wird kaum eine Veränderung bemerkbar sein (es sei denn, die Soundeffekte sind sehr lang... in dem Fall wird sich der Lag wohl verschlimmern xD kommt dieser Fall vor? Wenn ja könnte ich die Verschlimmerung wieder rückgängig machen und sehr lange Sounds wieder gestreamed abspielen.)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •