Jump to content
Lärs

A Software MIDI Emulation HowTo

Recommended Posts

MIDI is a very important feature to many computer users, and many MIDI musicians/listeners haven't the money to buy a SoundCard with an Emu chip or high-quality hardware wavetable synthesis. With that in mind, I post this small guide in order to help the users of MIDI with computers to discover software synthesis on their Linux Box.

Having a mere PCM-capable soundcard myself, getting MIDI to work on Linux was a hard concept to understand. However it is very possible, and very easy, thanks to a very facilitated software synthesizer called FluidSynth. Fluidsynth is a commandline-driven software synthesizer

Under Mandrake/Mandriva, all it takes is a urpmi fluidsynth as root user. You can optionally install QSynth, a QT frontend for FluidSynth, which also requires Jack (I don't recommend this, FluidSynth runs perfectly fine standalone).

Once you have this set up, go to Getting Started with MIDI on Linux and read the tutorial. It will explain how to work with FluidSynth.

I also recommend Mandrake Digital Audio Workstation for anything that the first guide did not cover.

Good luck, everyone, if you have any questions feel free to ask.

Share this post


Link to post
Share on other sites

Well yes, there is that method, Devries, but it doesn't work with people that have a non-midi piece of crap soundcard like I do :P . That method works perfectly for wavetable SoundBlaster and Audigy cards though. For those people, I highly suggest that guide.

Share this post


Link to post
Share on other sites

Great job Lärs.

This is the general software how-to I've been trying to work on.

 

Do you know if there is any method to launch fluidsynth and load the soundfont (eg. 8MBGMSFX.sf2) with a single command? This will be handy for preloading soundfont when the system boots up.

Edited by zero0w

Share this post


Link to post
Share on other sites

I don't know about launching fluidsynth automatically like that, I know it must be possible because frontends like QSynth interface with fluidsynth. Maybe if I had the time and patience to study Qsynth's code, I could get fluidsynth to run in the background as something similar to a driver. However, I do not know how it is done. I might look into it, great suggestion.

Share this post


Link to post
Share on other sites

I got this from the FluidSynth website.

NAME

      fluidsynth - a SoundFont synthesizer

 

SYNOPSIS

      fluidsynth [options] [ soundfonts ] [ midifiles ]

So I would think the answer to your question, zerow, would be something like this.

fluidsynth --midi-driver=alsa /directory/to/soundfont.sf2

Something like that.

Share this post


Link to post
Share on other sites

zero0w,

 

I have worked on loadin soundfonts at boot for a while. through trial and error i have added a howto for loading a soundfont at boot time. There are a few commands that must be added to your rc.local file. https://mandrivausers.org/index.php?showtopic=29329

 

I hope this helps. I have updated it a few times because I thought I had a solution that ended up not working. But as it is now it works well.

Share this post


Link to post
Share on other sites

Well. I use other method for Mandriva 2006 - TiMidity++

Install

urpmi timidity-instruments timidity timidity-init

Select your soundbank in /etc/timidity/timidity.conf

After reboot You have four synthesis midi ports. In MCC needed run this service. Or as root

service timidity start

.....Lex

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...