Frage

begann ich ein kleines Projekt, das mit MIDI-Dateien arbeiten umfasst. Ich habe mich gefragt, ist es ein C # oder VB.Net Code dass peforms dass Guss zwischen MIDI und WAV-Dateien?

War es hilfreich?

Lösung

Sie könnten versuchen, irgendwie Schnittstelle mit Timidity , die Open Source ist:

  

TiMidity ++ ist ein Software-Synthesizer. Es kann MIDI-Dateien abspielen, indem sie in PCM-Wellenformdaten; Geben Sie ihm ein MIDI-Daten zusammen mit digitalen Instrumentendaten-Dateien, dann synthetisiert sie in Echtzeit, und spielt. Es kann nicht nur Töne spielen, sondern auch die erzeugten Wellenformen in Festplatten als verschiedene Audio-Formate speichern.

FluidSynth ist ein in jüngster Zeit aktualisiert Open Source Projekt in ähnlicher Weise:

  

FluidSynth ist ein Echtzeit-Software-Synthesizer auf der Grundlage der SoundFont- 2 Spezifikationen.

Sie können einige freie Soundfonts herunterladen (die tatsächlichen PCM-Daten durch diesen Synthesizer verwendet, um „Rendern“, um die MIDI-Dateien) von den Seiten auf diese Liste .

Andere Tipps

MIDI-Dateien nur Noten und Controller-Informationen enthalten, nicht Geräusche. Um Klänge aus einer MIDI-Datei zu erhalten, müssen Sie die Datei über einen Musik-Synthesizer oder Sampler übergeben, die die Noten und Controller-Informationen in aktuellen Sounds konvertiert.

In der Praxis bedeutet dies, dass eine bestimmte MIDI-Datei keinen bestimmten Sound es hat. Der Ton, dass die Ergebnisse aus der Umwandlung werden eine MIDI-Datei, um Audio auf der Qualität des Synthesizers oder Sample-Bibliothek, und die Klänge variieren, die ausgewählt werden, um die Konvertierung durchzuführen.

Viele Soundkarten haben die Fähigkeit zur Produktion von Ton von MIDI-Dateien. Sie können dies tun, weil viele MIDI-Dateien einen Standard namens General MIDI-Spezifikation . Die General MIDI-Spezifikation stellt eine standardisierte Art und Weise spezifische Instrument Zuweisungen abzubilden. Wenn Ihre MIDI-Datei entspricht diesen Standard, können Sie es durch einen General MIDI Klangerzeuger spielen und ein Snare-Drum zu klingen wie eine Snare Drum erwarten, und nicht wie eine Trompete.

Wenn Sie ein anspruchsvolles Musikproduktionspaket haben wie Cakewalk , können Sie laden Sie eine MIDI-Datei hinein, und es wird seine on-Board-Sound-Libraries verwenden, um eine Audio-Datei für Sie zu machen, und dies kann tatsächlich schneller als in Echtzeit durchgeführt werden (dh es muss nicht den Ton über den Klang spielen Karte und erfassen die Ausgabe).

ich denke, was ich versuche zu sagen ist, es gibt eine Menge von Teilen dieses zu bewegen. Es gibt kein einziges Stück Code oder einem Klassenmodul, die dies für Sie tun.

Es gibt eine Reihe von Programmen sind Sie, dass tun wird kaufen können diese (google „convert midi to WAV“), aber ich bin gekommen, nie öffentlich verfügbare .NET-Code über das dies tut (ich glaube, einige dieser Programme sind in .NET geschrieben, aber der Quellcode ist nicht verfügbar).

Ich habe einen Online-Freund, der auf einem kommerziellen MIDI-to-WAV-Konverter funktioniert, aber es ist nicht in .Net und es wird nicht Open Source sein. Als Robert Harvey erwähnte, ist dies überhaupt keine einfache Aufgabe, da es im Grunde beinhaltet Ihren eigenen Software-Synthesizer (eine Aufgabe nach meinem Herzen) zu schreiben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top