I'm full alsa. I installer gstreamer right out of the box. I try to launch totem, but it failed. I try: # gst-launch-0.8 alsasrc But it complains: ** (process:19094): CRITICAL **: how to remove plugins? (process:19094): GStreamer-CRITICAL **: Factory for `alsasrc' has no type. This probably means the plugin wasn't found because the registry is broken. The plugin GStreamer was looking for is named 'alsa' and is expected in file '/usr/ lib/gstreamer-0.8/libgstalsa.so'. The registry for this plugin is located at '/ var/lib/cache/gstreamer-0.8/registry.xml' ERREUR: le tube n'a pas pu etre construit: pas d'element "alsasrc". I found the error: /usr/lib/gstreamer-0.8/*.la are chmod 0755 Just make: # chmod a-x /usr/lib/gstreamer-0.8/*.la solve the problem. ... okay, it rise an other, but solved this one :) Reproducible: Always Steps to Reproduce: 1. gst-launch-0.8 alsasrc 2. 3. Portage 2.0.51.22-r3 (hardened/x86/2.6, gcc-3.3.6, glibc-2.3.5-r2, 2.6.13-gab-v2 i686) ================================================================= System uname: 2.6.13-gab-v2 i686 Intel(R) Pentium(R) 4 CPU 2.60GHz Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O3 -pipe -march=pentium4" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/ X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -pipe -march=pentium4" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://mir.zyrianes.net/gentoo/ http://ftp.belnet.be/mirror/ rsync.gentoo.org/gentoo/ http://www.mirrorservice.org/sites/www.ibiblio.org/ gentoo/" LANG="fr_FR@euro" MAKEOPTS="-j3" PKGDIR="/usr/portage//packages/x86/" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage/" SYNC="rsync://rsync.fr.gentoo.org/gentoo-portage" USE="X a52 aac alsa bash-completion berkdb bitmap-fonts bluetooth bzip2 cdparanoia cdr crypt curl dbus divx4linux dlloader dts dvd dvdr esd exif expat fam ffmpeg gd gif gnome gpm gstreamer gtk gtk2 hardened imagemagick jpeg ldap mad matroska mmx mp3 mpeg msn ncurses nls ogg oggvorbis opengl pam perl pic png python readline sdl ssl sysvipc tcpd theora threads tiff userlocales vorbis x86 xml2 xmms xpm xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Update: # chmod a-x /usr/lib/gstreamer-0.8/*.so also :)
Strange: root rynn:~# gst-launch-0.8 alsasink ! goom (gst-launch-0.8:6349): GStreamer-CRITICAL **: how to remove plugins? (gst-launch-0.8:6349): GStreamer-CRITICAL **: Factory for `alsasink' has no type. This probably means the plugin wasn't found because the registry is broken. The plugin GStreamer was looking for is named 'alsa' and is expected in file '/usr/lib/gstreamer-0.8/libgstalsa.so'. The registry for this plugin is located at '/var/lib/cache/gstreamer-0.8/registry.xml' ERREUR: le tube n'a pas pu etre construit: pas d'element "alsasink". root rynn:~# chmod -x /usr/lib/gstreamer-0.8/* root rynn:~# gst-launch-0.8 alsasink ! goom AVERTISSEMENT: tube erroné: impossible de connecter alsasink0 a goom0 Tentative d'execution malgrè tout. EXECUTION du tube en cours ... ERROR: from element /pipeline0/alsasink0: Internal GStreamer error: pad problem. File a bug. Additional debug info: gstpad.c(3377): gst_pad_pull: /pipeline0/alsasink0: pull on pad alsasink0:sink but it was unlinked Execution ended after 1 iterations (sum 939000 ns, average 939000 ns, min 939000 ns, max 939000 ns). root rynn:~# chmod -x /usr/lib/gstreamer-0.8/* root rynn:~# gst-launch-0.8 alsasink ! goom AVERTISSEMENT: tube erroné: impossible de connecter alsasink0 a goom0 Tentative d'execution malgrè tout. [ ... ] root rynn:~# gst-launch-0.8 alsasink ! goom (gst-launch-0.8:7480): GStreamer-CRITICAL **: how to remove plugins? [ ... ] root rynn:~# chmod +x /usr/lib/gstreamer-0.8/* root rynn:~# gst-launch-0.8 alsasink ! goom AVERTISSEMENT: tube erroné: impossible de connecter alsasink0 a goom0 Tentative d'execution malgrè tout. [ ... ] root rynn:~# gst-launch-0.8 alsasink ! goom (gst-launch-0.8:7973): GStreamer-CRITICAL **: how to remove plugins? [ ... ] ---------------------------------------------------------------- It's as if I have to 'touch' something in the directory to make it 'work'
Strange: root rynn:~# gst-launch-0.8 alsasink ! goom (gst-launch-0.8:6349): GStreamer-CRITICAL **: how to remove plugins? (gst-launch-0.8:6349): GStreamer-CRITICAL **: Factory for `alsasink' has no type. This probably means the plugin wasn't found because the registry is broken. The plugin GStreamer was looking for is named 'alsa' and is expected in file '/usr/lib/gstreamer-0.8/libgstalsa.so'. The registry for this plugin is located at '/var/lib/cache/gstreamer-0.8/registry.xml' ERREUR: le tube n'a pas pu etre construit: pas d'element "alsasink". root rynn:~# chmod -x /usr/lib/gstreamer-0.8/* root rynn:~# gst-launch-0.8 alsasink ! goom AVERTISSEMENT: tube erroné: impossible de connecter alsasink0 a goom0 Tentative d'execution malgrè tout. EXECUTION du tube en cours ... ERROR: from element /pipeline0/alsasink0: Internal GStreamer error: pad problem. File a bug. Additional debug info: gstpad.c(3377): gst_pad_pull: /pipeline0/alsasink0: pull on pad alsasink0:sink but it was unlinked Execution ended after 1 iterations (sum 939000 ns, average 939000 ns, min 939000 ns, max 939000 ns). root rynn:~# chmod -x /usr/lib/gstreamer-0.8/* root rynn:~# gst-launch-0.8 alsasink ! goom AVERTISSEMENT: tube erroné: impossible de connecter alsasink0 a goom0 Tentative d'execution malgrè tout. [ ... ] root rynn:~# gst-launch-0.8 alsasink ! goom (gst-launch-0.8:7480): GStreamer-CRITICAL **: how to remove plugins? [ ... ] root rynn:~# chmod +x /usr/lib/gstreamer-0.8/* root rynn:~# gst-launch-0.8 alsasink ! goom AVERTISSEMENT: tube erroné: impossible de connecter alsasink0 a goom0 Tentative d'execution malgrè tout. [ ... ] root rynn:~# gst-launch-0.8 alsasink ! goom (gst-launch-0.8:7973): GStreamer-CRITICAL **: how to remove plugins? [ ... ] ---------------------------------------------------------------- It's as if I have to 'touch' something in the directory to make it 'work'
Do you have prelinking enabled ? If so, please have a look at bug #81512
Could also be a problem with hardened, look at bug #70631
I tried to make: 'LDFLAGS="-nonow" emerge -va gstreamer gst-plugins gst-plugins-ogg gst-plugins- esd gst-plugins-flac gst-plugins-vorbis gst-plugins-alsa gst-plugins-cdparanoia gst-plugins-mad' as said in same bug, with no luck Putting 'use hardened && append-ldflags “-Xcompiler -nonow”' (as said in Bug 70631) in gst-plugins.eclass make gstreamer work ... Almost: mad plugin don't work, some video appears distorted. (ffplay and vlc play them well, with sound) I think this bug is closed. I'll open an other one if I don't find how to make mad plugin work!