Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 297183 - Unable to play/stream ogg file with gstreamer-0.10.24 and pulse plugin
Summary: Unable to play/stream ogg file with gstreamer-0.10.24 and pulse plugin
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GNOME (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: GStreamer package maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-12-16 15:44 UTC by Christophe
Modified: 2011-05-19 14:07 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christophe 2009-12-16 15:44:47 UTC
I stream music from a Gentoo box to a Windows PC with pulse. vlc, xine, audacious, all those works fine.

Exaile, Banshee, Totem (gnome player) are all failing to play ogg music files
with error such as "pa_stream_proplist_update() failed: Not supported"

exaile-0.3.0.1
banshee-1.4.3-r2 and banshee-1.5.0
totem-2.26.3-r1

gstreamer-0.10.24
pulseaudio-0.9.15-r2
gst-plugins-pulse-0.10.16

Using test command from previous bug report which was closed without being resolved (it was for mp3 files). http://bugs.gentoo.org/show_bug.cgi?id=232974

gst-launch-0.10 -v filesrc location=./test.ogg ! decodebin ! audioconvert ! pulsesink
Setting pipeline to PAUSED ...
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src: caps = application/ogg
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstOggDemux:oggdemux0.GstPad:sink: caps = application/ogg
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstQueue:queue0.GstPad:sink: caps = audio/x-vorbis
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstQueue:queue0.GstPad:src: caps = audio/x-vorbis
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstVorbisDec:vorbisdec1.GstPad:sink: caps = audio/x-vorbis
/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:src0: caps = audio/x-raw-float, rate=(int)44100, channels=(int)2, endianness=(int)1234, width=(int)32
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstVorbisDec:vorbisdec1.GstPad:src: caps = audio/x-raw-float, rate=(int)44100, channels=(int)2, endianness=(int)1234, width=(int)32
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = audio/x-raw-float, rate=(int)44100, channels=(int)2, endianness=(int)1234, width=(int)32
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps = audio/x-raw-float, rate=(int)44100, channels=(int)2, endianness=(int)1234, width=(int)32
/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:src0.GstProxyPad:proxypad1: caps = audio/x-raw-float, rate=(int)44100, channels=(int)2, endianness=(int)1234, width=(int)32
/GstPipeline:pipeline0/GstPulseSink:pulsesink0.GstPad:sink: caps = audio/x-raw-float, rate=(int)44100, channels=(int)2, endianness=(int)1234, width=(int)32
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstPulseSinkClock
ERROR: from element /GstPipeline:pipeline0/GstPulseSink:pulsesink0: pa_stream_proplist_update() failed: Not supported
Additional debug info:
pulsesink.c(1992): gst_pulsesink_change_props (): /GstPipeline:pipeline0/GstPulseSink:pulsesink0
Execution ended after 82480 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
/GstPipeline:pipeline0/GstPulseSink:pulsesink0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstAudioConvert:audioconvert0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstDecodeBin:decodebin0.GstGhostPad:src0: caps = NULL
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstVorbisDec:vorbisdec1.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstVorbisDec:vorbisdec1.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstQueue:queue0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstQueue:queue0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstOggDemux:oggdemux0.GstOggPad:serial_7ccef794: caps = NULL
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstOggDemux:oggdemux0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstDecodeBin:decodebin0/GstTypeFindElement:typefind.GstPad:src: caps = NULL
Setting pipeline to NULL ...
Freeing pipeline ...


Reproducible: Always

Steps to Reproduce:
1. Open Exaile
2. Try to play a ogg file
3.

Actual Results:  
This is the terminal ouput
>> exaile
INFO    : Loading Exaile 0.3.0.1...
INFO    : Loading settings...
INFO    : Setting up deferred idle manager function...
INFO    : Loading plugins...
INFO    : Loading collection...
INFO    : Loading devices...
INFO    : Loading interface...
INFO    : HAL Providers: [<cd.CDHandler object at 0x14c0790>]
INFO    : Loading main window...
INFO    : Loading panels...
INFO    : Connecting panel events...
INFO    : Connecting main window events...
INFO    : Done loading main window...
INFO    : Playing file:///disk0/media/music/Freddie Mercury Montserrat Caballe/Barcelona/01. Barcelona.ogg
INFO    : Attempting to find covers for 'Barcelona' by 'Freddie Mercury & Montserrat Caballé' from 'Barcelona'
ERROR   : <gst.Message GstMessageError, gerror=(GstGError)NULL, debug=(string)"pulsesink.c\(1992\):\ gst_pulsesink_change_props\ \(\):\ /GstPipeline:pipeline0/GstBin:bin0/GstBin:bin1/GstPulseSink:pulsesink0"; from pulsesink0 at 0xee3400> ['__class__', '__cmp__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__grefcount__', '__gstminiobject_init__', '__gtype__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'copy', 'flags', 'parse_async_start', 'parse_buffering', 'parse_buffering_stats', 'parse_clock_lost', 'parse_clock_provide', 'parse_duration', 'parse_error', 'parse_info', 'parse_new_clock', 'parse_request_state', 'parse_segment_done', 'parse_segment_start', 'parse_state_changed', 'parse_step_done', 'parse_step_start', 'parse_stream_status', 'parse_structure_change', 'parse_tag', 'parse_tag_full', 'parse_warning', 'set_buffering_stats', 'set_seqnum', 'src', 'structure', 'timestamp', 'type']

This is the error popup:
pa_stream_proplist_update() failed: Not supported




emerge --info
Portage 2.1.6.13 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.31-gentoo-r6 x86_64)
=================================================================
System uname: Linux-2.6.31-gentoo-r6-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_5200+-with-gentoo-2.0.1
Timestamp of tree: Wed, 16 Dec 2009 07:45:02 +0000
app-shells/bash:     4.0_p35
dev-java/java-config: 1.3.7-r1, 2.1.9-r1
dev-lang/python:     2.6.4
dev-python/pycrypto: 2.0.1-r8
dev-util/cmake:      2.6.4-r3
sys-apps/baselayout: 2.0.1
sys-apps/openrc:     0.4.3-r5
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6b
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -O2 -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=athlon64 -O2 -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://gentoo.arcticnetwork.ca/pub/gentoo/ http://gentoo.osuosl.org/ ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ ftp://ftp.gtlib.gatech.edu/pub/gentoo ftp://ftp.ussg.iu.edu/pub/linux/gentoo "
LANG="en_US.utf8"
LC_ALL="en_US.utf8"
LDFLAGS="-Wl,-O1"
LINGUAS="en"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/sabayon /usr/local/overlays/portage"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="32bit 3dnow 64bit X a52 aac acpi alsa amd64 avahi bash-completion berkdb bonobo branding bzip2 cairo caps cddb cdparanoia cdr cli consolekit cracklib cxx daap dbus divx divx4linux dri dts dvd dvdr dvi emboss emerald encode evo fam ffmpeg fftw firefox flac font-server foomaticdb fortran gdbm gif gimp gimpprint glitz glut gmedia gnome gnomedb gpm gsf gstreamer gtk hal hddtemp iconv id3 id3tag imagemagick ioemu jpeg libburn libnotify libsamplerate lm_sensors mad metar mikmod mjpeg mmkeys mmx mng modules mono mozembed mozilla mp3 mp4 mpeg mudflap multilib mysql nautilus ncurses network nfs nonfsv4 nptl nptlonly nsplugin nvidia ogg oggvorbis ole openal opengl openmp pam pcre pdf perl plotutils png ppds pppd pulseaudio pygrub python qt3support qt4 quicktime readline realmedia reflection samba screen sdl sensord server session sftplogging slang smp soundtouch sourceview spell spl sse sse2 ssl startup-notification stream subversion svg sysfs tcpd theora threads thunar thunderbird tiff tk totem truetype twolame unicode usb v4l v4l2 vamp vorbis wma wmp x264 xine xml xorg xscreensaver xulrunner xv xvid zlib" ALSA_CARDS="usb-audio" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia vesa fbdev"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Rémi Cardona (RETIRED) gentoo-dev 2009-12-16 20:20:40 UTC
Hum, pulse 0.9.15 is getting old...

@Diego, is there a chance that gst-plugins-pulse 0.10.24 isn't really compatible with that version of PA anymore?

Thanks
Comment 2 Olivier Crete (RETIRED) gentoo-dev 2009-12-16 20:28:25 UTC
In theory, gst maintains compatiblity all the way down to 0.9.11... In practice, we should probably get a newer PA stable asap.. We should probably go for 0.19.21. Its more than a month old now.
Comment 3 Diego Elio Pettenò (RETIRED) gentoo-dev 2009-12-16 20:35:03 UTC
There's a bug open for .19-r0 stable (bug #294185) and I don't think that was completed yet.

I'm not sure about .21 stable because most people seem to complain about flat volumes, I'd rather wait .22.
Comment 4 Mart Raudsepp gentoo-dev 2010-03-10 10:33:16 UTC
Christophe, how is this working for you now? A newer pulseaudio has been stable for some time now to test with. Please report back
Comment 5 Christophe 2010-03-10 18:25:03 UTC
I have to stress this is NOT a pulse problem (afaik), this is a gstreamer and/or its plugins bug. Pulse works fines as I can play all those files with audacious, xine and vlc. 

I just tested some video files and files encoded mp4 or realaudio works. Even found online some ogg sound files encoded with ac3 or vorbis (480kbps, 5.1 surround) who do work. After wondering if it was my encodings somehow (although again they all play fine in audacious), I started testing ogg files found online. Some works, some don't. So for example

File who do not work:
http://commons.wikimedia.org/wiki/File:Tromboon-sample.ogg
File who work:
http://commons.wikimedia.org/wiki/File:Example.ogg

I cannot analyze ogg files, but if anyone can look at those 2 and see how they differ, it might be the base of the problem.

This is not an isolated case, I could not find working ogg file on this site - showcasing ogg music:
http://clickass.org/?s=music

Tested today with pulse-0.9.21.1, gst-plugins-pulse-0.10.16, gstreamer-0.10.25.

Comment 6 Christophe 2010-03-10 18:45:56 UTC
Well I found ogginfo.. and I found the difference. All ogg files which have a comment section failed.

Using Audacity to reencode the same file: encoded with comment, file failed to stream, encoded after removing comment, it worked.

I went back to all working ogg files I found, they do not have comment. All my music files do have comments of course - which explain why they failed.

I hope that's enough to pinpoint where the bug is now.
Comment 7 Mart Raudsepp gentoo-dev 2010-03-14 23:19:04 UTC
Can you test with gst-plugins-pulse-0.10.17?
It's on the way to stable in bug 308379. I think it will probably be marked stable on amd64 within a day, so could wait that out and re-test please.

Many bug fixes in gst-plugins-pulse-0.10.17, including one that might be somewhat relevant here:

commit 89b0c2fc4f8a9b9562f23033be343c26345436db
pulse: use 'performer' as a fallback for 'artist' tag
Comment 8 Mart Raudsepp gentoo-dev 2010-03-14 23:26:01 UTC
Adjusting CCs - gnome@ doesn't maintain pulse plugin, Jim Ramsay (lack) does co-maintain it however :)

I found another commit slight relevant here from gst-plugins-ogg-0.10.26+ (bumping ~amd64 to 0.10.28 later today) related to tags as a OGM vorbis text comment or some such, but as those example files you provided work for me through direct alsa plugin, I doubt that that fix is actually relevant to your problem
Comment 9 Christophe 2010-03-17 15:02:36 UTC
Upgraded to gst-plugins-pulse-0.10.17, but no change. Still failed, same error for file with certain tags in them.

After checking the fields one by one, only ARTIST and TITLE seem to trigger the error. From the output of ogginfo, based in the Trombone file listed above:

This one with TITLE set failed:
User comments section follows...
	GENRE=classic
	ALBUM=test
	TRACKNUMBER=1
	TITLE=tracktitle
	DATE=1969
	COMMENTS=test
	date=2005/06/05

This one with ARTIST failed:
User comments section follows...
	GENRE=classic
	TRACKNUMBER=1
	ALBUM=test
	DATE=1969
	COMMENTS=test
	date=2005/06/05
	ARTIST=name

But this one with neither works:
User comments section follows...
	TRACKNUMBER=1
	ALBUM=test
	DATE=1969
	date=2005/06/05
	GENRE=classic
	COMMENTS=test
Comment 10 Arun Raghavan (RETIRED) gentoo-dev 2011-05-18 04:13:14 UTC
Christophe, does this work with a reasonably new PulseAudio version?
Comment 11 Christophe 2011-05-19 14:02:12 UTC
My setup has changed a bit since (no longer streaming from Gentoo to the Windows boxes). But just tested with the pipe command on the Gentoo box. With:

pulseaudio-0.9.22
gst-plugins-pulse-0.10.23

All files worked. Including the trombone file tested above. So assume it was fixed.