--- audio_esd.c.orig Mon May 22 13:45:14 2000 +++ audio_esd.c Wed Sep 19 19:34:07 2001 @@ -75,7 +75,21 @@ else if (ai->rate > esd_rate) return -1; - ai->fn = esd_play_stream_fallback(format, ai->rate, param.esdserver, "mpg123"); + ai->fn = esd_play_stream_fallback(format, ai->rate, NULL, "mpg123"); + + if (ai->fn < 0) { + ai->rate = 44100; + ai->fn = esd_play_stream_fallback(format, ai->rate, NULL, "mpg123"); + + if (ai->fn < 0) { + format = ESD_BITS8 | ESD_STREAM | ESD_PLAY; + format |= ESD_MONO; + ai->rate = 22050; + ai->format = AUDIO_FORMAT_UNSIGNED_8; + ai->channels = 1; + ai->fn = esd_play_stream_fallback(format, ai->rate, NULL, "mpg123"); + } + } return (ai->fn); }