Recent Changes - Search:


SoundSetup

(This page is under construction. Please add stuff. )

Cheap sound cards

Some sound cards and motherboards with integrated sound don't have FM-synthesis or wavetable synthesis. This includes the chipset in many laptops as well as close to all pro level cards. If you run

 lsmod | grep snd_intel

and you see the module snd_intel8x0m, you have such a card. (There are many other soundcards and motherboards in this category. Please add them if you know them!)

If so you must tell solfege to run an external program to play sounds. This can be set in the preferences window.

List of cards/computers/motherboards that don't have a synth:

  • Fujitsu-Siemens Amilo 7400 (laptop)
  • Sound Blaster PCI 128 (sound card)
  • Asus K8V SE Deluxe (motherboard)

Timidity as an ALSA software sequencer

If you are running linux and your timidity program has been compiled with ALSA support, you can set up timidity as an ALSA sequencer client. Also, you have to have OSS emulation enabled in your ALSA setup because Solfege does not yet have a native ALSA driver.

Run this on the command prompt:

 timidity -iA -B2,8 -Os -EFreverb=0

Then you can set Solfege to write to /dev/music. Try different synth numbers until you get sound. Synth number 1 works on my laptop.

FIXME is the following true?? Please notice that you might not be able to use lesson files that run external programs at the same time you run timidity as an ALSA sequencer client.

Software synths on MS Windows

This document states that MS Windows XP Pro has a software synth included. What about other versions of MS Windows?

Errors

 ALSA lib pcm_hw.c:1172:(snd_pcm_hw_open) open /dev/snd/pcmC0D0p failed: Device or resource busy
 ALSA lib pcm_dmix.c:868:(snd_pcm_dmix_open) unable to open slave
 Can't open pcm device 'default'.
 Couldn't open ALSA pcm device (`s')

If you see a message similar to the above one, it is possible that you have esd running using the OSS emulation module. You should run a version of esd that has native ALSA drivers. On Debian you should install the package libesd-alsa0 instead of libesd0.

pmidi and timidity

The combination pmidi as an external midi player and timidity as a software synth is not working on my Amilo 7400 laptop. The music is playing, but the rhythm is wrong. (TomCato)

Troubleshooting sound on linux

I think the most common question asked on the mailing list is what to do when there is no sound. This page tries to give people a list of things to check to find out what the real problem is. Often, but not always, the problem is your sound setup and not Solfege.

Everybody is invited to help improve this page. Rewrite it completely, add a question, or just fix a single paragraph! Do whatever you like. TomCato is no sound guru and needs your help!

Some urls that might help:

Right now, there are not many solutions on this page. But this list should give you an idea what to look for.

Get playing .wav files to work

Can you play .wav files? Try to run

 $ aplay somewavfile.wav

or

 $ esdplay somewavfile.wav

Whenever I (TomCato) have had problems this is the first step that have to work some way or another to get sound in Solfege. What program you use to play the .wav file is not important. aplay and esdplay are just two examples.

You have to get this to work. Check that the sound card is not muted and the volume is turned up (alsamixer). There are many other controls in alsamixer, for example PCM, that you also have to check. Check also that you have plugged in the speaker cable at the correct place. :-)

If this works, you should be able to get timidity to work, even if you don't have a soundcard that does FM-synthesis or wavetable synthesis.

If aplay or esdplay do not work, installing xmms may be very an easy solution. After xmms is installed, test it to make sure it will play a *.wav file. If that works, then launch Solfege and go to File > Preferences. On the 'Sound setup' tab, in the '.wav file player' field change '/usr/bin/aplay' to '/usr/bin/xmms'. Press 'Test' and everything should work fine.

Timidity as an external midi player.

Solfege can use an external midi player program like timidity to play midi files it creates. Where somefile.mid is a midi file, this command should play it, even if you sound hardware doesn't have a hardware synth.

 $ timidity somefile.mid

If this works, you can select "timidity %s" to use as an external midi player on the Sound page of the Preferences window.

If this gives no sound, but you can play .wav files, there is something wrong with you timidity setup. /etc/timidity.conf needs to point to the patch files. And not every linux distro sets this up correctly. Please read the timidity docs or search on www.google.com.

In Debian (and possibly other distro's) installing freepats (apt-get install freepats) automagically takes care of the timidity configuration.

This sounds pretty horrible though, the standard freepats are of very low quality compared to the free soundfonts you can use with timidity. A working config using a free high quality steinway piano sf looks like

 opt -s 44100
 opt -EFchorus=d
 opt -EFresamp=g
 opt -EFreverb=f
 opt -EFvlpf=c
 opt --no-anti-alias
 soundfont /home/username/soundfonts/WST25FStein_00Sep22.SF2

Using a device file

Solfege can write directly to /dev/music (aka /dev/sequencer2) or /dev/sequencer. If you try to do this but get no sound and no error messages, it is possible that you have to load some data onto the sound card. If you own a card that use the awe32 driver, for example SoundBlaster Live, you have to use sfxload to load a SoundFont file.

 $ sfxload 8mbgmsfx.sf2

There might be other sound cards that require a similar setup, but I don't know.

Timidity Setup - to prevent "scratchy playback"

On a Dell D620 - I don't know if this is recommended or safe but it worked for me. The sound was very scratchy especially during polyphonic passages in Solfege. What I did -> File>Preferences>Sound Setup .midi file player settings= /usr/bin/timidity -idq -p 5 -Os %s This was done on a from-source-built GNU Solfege 3.8.0

Using Solfege with software Samplers

Why software samplers

Software samplers such as LinuxSampler (linux) and GigaStudio, Kontakt, Halion (Windows) play MIDI signals using recorded sounds. This allows your PC to sound as close as possible to a real instrument.

Linux: LinuxSampler for .gig gigastudio files (using JACK audio connection kit)

Note: the following procedure describes my setup. I use JACK, so the instructions include it, but I don't know if it is required, there might be a way to use linuxsampler without JACK, I don't know. What follows is simply what worked for me.

1) If you don't have jack already, install jack and qjackctl, a gui for controlling jack. Start qjackctl and press start button to start jack server. There is an option to start jack server automatically on startup of qjackctl, you may want to use it.

2) Install linuxsampler and qsampler. You may want to use your distro's package manager to install packages specifically made for your distro, if available; or you can compile from source and install yourself - check http://www.linuxsampler.org(approve sites). Launch qsampler. Qsampler is a control interface for linuxsampler, so you have to either start linuxsampler first, or select within qsampler the option to "start server locally" in the options dialogue, or you can specify -s option in commandline to launch linuxsampler automatically on qsampler startup. Within qsampler you have to load a .gig instrument bank and choose to use jack as output.
linuxsampler doesn't connect by default to alsa output, so you should go to qjackctl, press "connect" button an within the "Audio" tab connect the linuxsampler readable client to the alsa_pcm writable client.

3) Install pmidi, a midi file player. (I recommend this program because I couldn't get aplaymidi to work - perhaps you can) This will send solfege's midi output to linuxsampler. http://www.parabola.demon.co.uk/alsa/pmidi.html(approve sites)

4) In solfege, go to File > Preferences > Sound Setup and select "use external midiplayer" option. Type
/usr/bin/pmidi -p 129:0 %s
in the midi file player box. This command tells Solfege to send output as a midi file to pmidi, which reads the midi file and sends midi data to linuxsampler (listening on alsa port 129:0 by default, as far as I know). Linuxsampler will then play the file. You need to make sure that you have an instrument loaded in linuxsampler, and that linuxsampler is connected to alsa_pcm for output, as said in step 2.

Press "apply changes and play test sound"...

MS-Windows

I have succesfully tried the config below. The same idea should work for most software synths / samplers out there.

1) In Solfege: Edit > Preferences > Midi Setup, select 'windows multimedia output, synth number' and set the number to 1.

2) Use a sequencer (I used Cubase SX 2) to receive the midi signal: add a midi track and set the input to MIDI IN, the output to the sampler (I used KONTAKT 2 as a VST insrument)

3) Load the instrument into the sampler and enjoy!!!

Edit - History - Print - Recent Changes - Search
Page last modified on August 16, 2007, at 09:58 PM