SDB:Abspielen von MIDI Dateien

aus openSUSE, der freien Wissensdatenbank

(Weitergeleitet von Abspielen von MIDI Dateien)


Inhaltsverzeichnis

Hintergrund

Einige Soundkarten haben keinen WaveTable Synthesizer integriert, um MIDI-Dateien mit einem geladenen Sound Font (oder Instrumenten Patch) abzuspielen. In diesem Fall kann ein Software WaveTable Synthesizer wie z.B. fluidsynth oder timidity++ verwendet werden, auf den wir uns in diesem Beispiel konzentrieren werden.

TiMidity ist ein MIDI-zu-WAV Wandler der Musikdateien mittels des Gravis Ultrasound PAT-Formats oder SF2-Fonts umrechnet. MIDI Noten-Dateien werden in Audio-Daten übersetzt und können in Dateien oder als Audio-Signal in Echtzeit ausgegeben werden. Das Programm kann in der Konsole oder innerhalb der grafischen Oberfläche in xterm ausgeführt werden, sowie mit Hilfe verschiedener Werkzeuge für eine grafische Oberfläche (GUI) kompiliert werden (Gtk, Qt, Motif, Tcl/Tk, XAW, etc.).


Anleitung

Zuerst gilt es das TiMidity Paket zu lokalisieren und zu installieren. Falls es nicht bereits installiert ist, können Sie es in unserer Datenbank herunterladen unter:

http://download.opensuse.org/distribution/SL-10.1/inst-source/suse/i586/timidity-2.13.2-21.i586.rpm


Ausführen des Daemons

Um timidity++ im ALSA Server Modus zu starten, geben Sie bitte folgendes ein:

/usr/bin/timidity -iA -B2,8 -Os &. 

Eine Meldung wie "Opening sequencer port: 128:0 128:1" wird angezeigt, darin enthalten der MIDI Port über den der Synthesizer angesprochen werden kann (z.B. durch vkeybd --addr 128:0)

Danach muss der Applikation mitgeteilt werden, dass dieser Synthesizer verwendet werden soll. Um z.B. KMid zu benutzen, wählen wir folgende Schritte:

Settings -> MIDI setup -> TiMidity TiMidity port 0 - ALSA device

Danach sollte der TiMidity-Synthesizer ordnungsgemäß ausgeführt werden, und es ist möglich beliebige MIDI-Dateien mit dem gewählten MIDI-Player abzuspielen.

Beendet wird termidity++ durch:

killall timidity

Wenn Timidity++ beim Booten bereits zur Verfügung gestellt werden soll, kann dies durch Änderungen in der Konfigurationsdatei "alsasound" ermöglicht werden: Siehe dazu am Ende der folgenden Seite: http://josefhuber.com/index.php?option=com_content&view=article&id=12&Itemid=1

Soundqualität verbessern

Die Töne, welche TiMidity wiedergibt, werden einer so genannten Soundbank entnommen. Dort ist sozusagen der Klang eines jeden (unterstützten) Instrumentes hinterlegt. Möchte man nun eine bessere Qualität erziehen, so muss man eine Soundbank installieren, die mehr Details für den Klang eines Instrumentes enthält. Wer Programme wie TuxGuitar zusammen mit TiMidity verwendet, kann nun die Midi-Dateien in besserer Qualität vorhören.

Bevor es an die Einrichtung geht, sei noch angemerkt, dass mehr Qualität auch ihren Preis hat. So sollte schon ein moderner Prozessor und 1 GB RAM vorhanden sein. Zuletzt entscheidet hier wohl aber der eigene Test am eigenen PC.

Zunächst einmal braucht ihr die neue Soundbank. Ich benutzte beispielsweise die SGM-V2.01.sf2, welche sich hier herunterladen lässt.

Wie dort beschrieben, benötigt ihr weiterhin ein spezielles Programm, um die heruntergeladene Datei (eine *.sfArk) zu entpacken. Dieses Programm nennt sich sfArk und lässt sich auf der Seite des Projektes herunterladen. Nachdem ihr sfArk heruntergeladen und entpackt habt, könnt ihr nun an das Erstellen der sf2-Datei machen. Möglicherweise müsst ihr dem Programm vorher noch Ausführungsrechte erteilen.

cd /pfad/zu/sfarkxtc # in entsprechenden Ordner wechseln
chmod u+x /pfad/zu/sfarkxtc # Ausführungsrechte erteilen
./sfarkxtc SGM-V2.01.sfArk # Soundbank entpacken

Ihr solltet nun eine Datei "SGM-V2.01.sf2" im Verzeichnis vorfinden. Folgend müsst ihr TiMidity noch mitteilen, dass ihr nun diese Soundbank benutzten wollt. Führt als root folgendes aus, um die Konfigurationsdatei um 2 Zeilen zu erweitern.

cat >> /usr/share/timidity/timidity.cfg << EOF
dir "/Verzeichnis/in/der/die/Soundbank/liegt"
soundfont "SGM-V2.01.sf2"
EOF

Beim nächsten Start von TiMidity solltet ihr den Unterschied hören können!

Quelle: http://www.tuxguitar.com.ar/forum/3/457/timidity-soundfont-patch/

Hinweis: Ich hoffe ich habe mich bei keinem Schritt geirrt - ist bei mir nämlich alles schon etwas länger her.