When I use alsasink in gstreamer, audio apps (rhythmbox and muine) work fine only when dmix is set to rate 44100. If I set to 48000 or 96000 those apps (and the gstreamer applet too) crash a second after I start playing a sound.
Totem with gstreamer backend, won't play videos at all. If it's set to 44100 in /etc/asound.conf it won't crash, but the video seems to play in 1 frame per second or something like that (I'm not sure that's related to alsa though, or generally to gstreamer).
All my packages are the ~x86 from portage.
I think I've hit the same bug. If I do "gst-inspect-0.8 audioscale" I get:
** (process:4360): CRITICAL **: how to remove plugins?
(process:4360): GStreamer-CRITICAL **: Factory for `audioscale' has no type. This probably means the plugin wasn't found because the registry is broken. The plugin GStreamer was looking for is named 'audioscale' and is expected in file '/usr/lib/gstreamer-0.8/libgstaudioscale.so'. The registry for this plugin is located at '/var/lib/cache/gstreamer-0.8/registry.xml'
couldn't construct element for some reason
Description: Resamples audio
Package: GStreamer Plugins
Origin URL: http://gstreamer.net/
audioscale: Audio scaler
+-- 1 elements
Rhythmbox complains about audioscale too before crashing. This is with ~x86 gstreamer and gst-plugins. I've tried the "stupid approach" of remerging both gstreamer and gst-plugins but this didn't seem to help. When I merge gst-plugins I do see audioscale getting registered at the end. Emerge info, which doesn't seem to show my gcc is hardened:
Portage 2.0.51_rc1 (default-x86-2004.2, gcc-3.3.4, glibc-22.214.171.12440420-r1, 2.6.8-gentoo-r3 i686)
System uname: 2.6.8-gentoo-r3 i686 AMD Athlon(tm) XP 2600+
Gentoo Base System version 1.5.3
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
CFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control"
CXXFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer"
FEATURES="autoaddcvs ccache sandbox userpriv usersandbox"
GENTOO_MIRRORS="ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo/ ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo"
is the initial reports machine also hardened ?
I'm beginning to suspect hardened is causing this. I've been playing around with it a bit. gst-inspect-0.8 gave the same critical error on other stuff from gst-plugins, but worked for something like gst-plugins-mad, which was an older version I merged from before hardened gcc. I then upgraded gst-plugins-mad to latest ~x86 version, and it started failing in the same way. It might be the upgrade of course, but I somehow doubt it. I'd like to avoid a gcc recompile, but if nothing turns up soon I'll do that (have had other issues with it).
as far as i know the problems of gstreamer with alsa are related to alsa bugs, but i'm not sure, since alsa works perfectly with all other native alsa apps or oss apps with emulation on my machine. so i don't know if the problem is related to gstreamer of alsa, and if gentoo bugs is the place to report it at all.
i see varying behaviours with gstreamer+alsa. sometimes it works ok, sometimes resampling in dmix breaks it, sometimes it starts playing and then crashes, sometimes it crashes right away, sometimes it segfaults etc...
i have had hard time to see some logic in the bugginess of it, so i thought of sharing with others, since i don't if i'm the only one to get such a behaviour.
by the way, if this is related to alsa, then i'm using alsa's atiixp driver. if any of you has the same chip it might help tracing the problem. my alsa driver version is from cvs.
FWIW, I've never gotten gstreamer to work right with ALSA, and I've given up on trying...
I think not all people commenting here are seeing the same bug. My symptoms: "gst-inspect-0.8 audioscale" (or anything else) fails with a GStreamer-CRITICAL error. Gstreamer doesn't work at all, alsa works fine. My problem is not alsa-related, since parts of gstreamer that don't use alsa fail. If other people here have gstreamer mostly working except for alsa sound output (gst-inspect and perhaps video output work fine) then it's not the same bug. If other people do get the gst-inspect errors, I'd like to know if they compiled gcc with hardened in USE.
well, video with gstreamer never worked for me, so the only gstreamer stuff that i could run were rhythmbox and muine and nautilis sound preview. those did work for some time with alsasink, but now they don't. they do work with osssink (through emulation). alsasink might start working here again some day...
I can confirm the issue I was seeing was caused by hardened gcc. I just remerged gcc with USE=-hardened and then remerged gst-plugins, and the gst-inspect-0.8 audioscale now works. I haven't tried an actual app yet, but I'm pretty sure this solves my problem.
@ Marien : can you get a backtrace with debugging info of such a crash ?
@ initial reporter : like the gst-plugins-alsa ebuild notes, alsa support is known broken on some hardware. Afaik at this point it's only usable for sound-only applications, not video. It's best to use is alsa trough oss emulation via gst-plugins-oss atm.
I don't really have the time to investigate this fully at the moment, especially since it'll involve some gcc juggling (I don't know of a way to have a hardened and non-hardened gcc simultaneously installed, so I'll have to quickpkg the gcc's or somehow use my server's hardened gcc. Figuring out this setup will take me a bit more time than I have available right now). I hope to get to it in about a week.
gst-inspect-0.8 didn't crash, it just "failed critically". I think the crashes in actual apps were caused by those apps not recovering gracefully from the failing instantiation of a plugin, or something like that. I doubt backtraces from that are very useful. I'll try to figure out what turns out differently for a hardened gst-plugins compile as soon as possible.
guys, i have never used hardened gcc and don't intend to, so my problem is not related to that. it's a general gstreamer fault on a really regular system... alsa does not work well with gstreamer. i have to use osssink to get it right without crashing my apps. also almost no video files play right with gstreamer (through totem). actually i only found till this day one video file that played right and well, but it didn't work when trying full-screen and resizing.
i would just like to know if anyone else has the same results with gstreamer + totem, and also with rhythmbox.
giving this up, general gst issues
@ comment 13 : current versions in portage are known not to work well, that is why gstreamer is not the default backend for totem.