On Tue, Jan 29, 2008 at 11:32:44PM -0500, [EMAIL PROTECTED] wrote: > On 28 January 2008 at 14:52, Brad <[EMAIL PROTECTED]> wrote: > > > On Sunday 27 January 2008 13:09:40 [EMAIL PROTECTED] wrote: > > > A while back after a snapshot update I noted that gcompris would make > > > horrid squealing noises upon launch and thus be unusable if run with > > > sound enabled. > > > > > > As of gcompris 8.4 it uses gstreamer for sound. If I launch > > > /usr/local/bin/gst-visualise-0.10 (part of gstreamer-plugins-base) > > > with no arguments, the machine begins its squealing in the exact same > > > manner. > > > > > > The gcompris website ( http://gcompris.net/-News- ) says the issue is > > > fixed in gstreamer-plugins-base 0.10.15 and higher (their workaround > > > didn't work for me). -current has 0.10.12. > > > > > > Is it acceptable for me to post an update to just gstreamer-plugins-base > > > or should all of gstreamer be updated, or should I just try to backport > > > that specific fix? > > > > > > Thanks. > > > > A full update of gstreamer would be very useful. > > Thanks. > > I'm working my way through it... core and plugins-base are done. I'll > post when it's complete. > > Unfortunately I don't think it will solve my issue -- even the new > gst-visualise still squeals like the old one. > > Which makes me suspect the recent commits to ac97, which is the only > other change I'm aware of... ah well, more work to do :-) >
probably what tripped this off was r1.12 of src/lib/libossaudio/ossaudio.c -- [EMAIL PROTECTED] SDF Public Access UNIX System - http://sdf.lonestar.org --- gstosshelper.c.orig Sat Dec 10 06:57:48 2005 +++ gstosshelper.c Thu Feb 14 10:43:38 2008 @@ -250,12 +250,18 @@ if (probe->min == -1 || probe->max == -1) { /* This is a workaround for drivers that return -EINVAL (or another * error) for rates outside of [8000,48000]. If this fails, the * driver is seriously buggy, and probably doesn't work with other * media libraries/apps. */ probe->min = gst_oss_helper_rate_check_rate (probe, 8000); + if (probe->min == -1) + probe->min = gst_oss_helper_rate_check_rate (probe, 32000); + if (probe->min == -1) + probe->min = gst_oss_helper_rate_check_rate (probe, 44100); + if (probe->min == -1) + probe->min = gst_oss_helper_rate_check_rate (probe, 48000); probe->max = gst_oss_helper_rate_check_rate (probe, 48000); } if (probe->min == -1 || probe->max == -1) { GST_DEBUG ("unexpected check_rate error"); return FALSE; } although, this is a more fitting comment: /* This is a workaround for drivers that return -EINVAL (or another * error) for rates outside of [8000,48000]. If this fails, then * gstreamer is seriously braindead yet still overly complex and * is a poor choice for media libraries/apps. */