Most allegro apps use the following code to initialise sound: install_sound (DIGI_AUTODETECT, MIDI_AUTODETECT, NULL) This however currently will fail on most motherboards with the FE-devel-CVS allegro since most motherboards don't have a real midi chip these days (only digital/wave out) and thus allegro tries to use the buildin softwavetable synth, this however needs a patchset to work. Most apps now thus don't have sound because they disable sound if this call fails. By adding patches = /usr/share/timidity/timidity.cfg, and requiering timidity++, which provides this files and the patches referenced therein, this problem can be fixed. I've attached a patch against the default allegrorc with this fix.
Created attachment 123460 [details] allegrorc patch
Hans, I tested it with allegro-4.2.0-4 on my rawhide box as well as with allegro-4.0.3 on my FC4 box. I tried it with the following source: #include <allegro.h> int main() { allegro_init(); install_sound (DIGI_AUTODETECT, MIDI_AUTODETECT, NULL); return 0; } END_OF_MAIN(); and everything works as expected, so no error message is reported by install_sound on my i386 (Intel chipset). What is the error you see?
that shoud read: if (install_sound (DIGI_AUTODETECT, MIDI_AUTODETECT, NULL) == -1) printf("error: %s\n", allegro_error); Then I got an error that it couldnot find a suitable midi device or something similar. I found out that it had soft wavetable support by doing a strace and seeing that it couldnot open default.cfg (the default patches config name).
Ok. Sounds good to me. Sound initialization shows the error on my system as well. alegrorc is now updated, thanks.
Thanks, the timidity++ Requires should be a normal Require not a BuildRequire, the timidity patches get used runtime.
allegro-4.2.0-5 is now built. I'll fix the timidity dependency in the next build.