Description of problem: I have an AWE64 soundcard and use the snd_sbawe module. In order to play a MIDI file via the card's wave table, e.g. via "aplaymidi -p 65:0", a sound font needs to be loaded. The command to do this is "/bin/sfxload /etc/midi/GU11-ROM.SF2". There needs to be a way to have this command automatically executed at a time which is late enough to work but no later than when the first MIDI file begins to play. In addition, the mechanism should be automatically configured so that using the soundcard's wave table is as easy as using the rest of its features. See "Additional Information" below for my solution to this problem, which I implemented manually but which could easily be incorporated into awesfx, kudzu, or udev. Version-Release number of selected component (if applicable): I'm currently running a fully updated Fedora Core 3 stable system with awesfx-0.4.3a-16. How reproducible: Every time. Steps to Reproduce: 1. Configure the sound system while an AWE64 soundcard (or something similar) is installed. 2. Unmute the sound channels and adjust their levels to appropriate values. 3. Play a MIDI file, e.g. "aplaymidi -p 65:0 /path/to/name.mid". Actual results: The needed command, i.e. "/bin/sfxload /etc/midi/GU11-ROM.SF2", doesn't appear anywhere, and playing the MIDI file yields silence. Expected results: The sound font should get automatically loaded, and playing the MIDI file should be audible. Additional info: Since sfxload uses /dev/sequencer, and since /dev/sequencer is created by loading snd_seq_oss, I tried adding the following command to modprobe.conf: install snd_seq_oss modprobe -i snd_seq_oss && sfxload /etc/midi/GU11-ROM.SF2 This didn't work. In addition, it caused dmesg to show reports like (I'm sorry, I no longer have something I can cut-and-paste) "missing event n1, rebasing to n2". Assuming that sfxload was just taking too long, I tried the following modification of the above so that sfxload would run in the background: install snd_seq_oss modprobe -i snd_seq_oss && (sfxload /etc/midi/GU11-ROM.SF2 &) This, too, didn't work. I then guessed that the problem might be that /dev/sequencer is being created asynchronously by udev at some later time, which would, of course, cause an immediate execution of sfxload to potentially fail. My next attempt, therefore, which seems to be working reliably 100% of the time, was to create a script in /etc/dev.d/sequencer/ called sfxload.dev with the following content (without the indentation): #!/bin/sh [ "${ACTION}" = "add" ] && sfxload /etc/midi/GU11-ROM.SF2 This script must, of course, be made executable.
Fedora Core 3 is now maintained by the Fedora Legacy project for security updates only. If this problem is a security issue, please reopen and reassign to the Fedora Legacy product. If it is not a security issue and hasn't been resolved in the current FC5 updates or in the FC6 test release, reopen and change the version to match. Thank you!
Wontfix. Anyway, GU11-ROM.SF2 dosn't work for SB cards and HW midi is quite obsolete now.