Somewhere between PulseAudio v8.0 and master commit 0f48b7c82378c32194b625d1fd886eee7f1e5928, Totem failes with the following errors: $ GST_DEBUG=2 PULSE_LOG=4 totem brown.wav Parsing configuration file '/home/darwish/.config/pulse/client.conf' /home/darwish/.config/pulse/client.conf.d does not exist, ignoring. Using shared memory pool with 1024 slots of size 64.0 KiB each, total size is 64.0 MiB, maximum usable slot size is 65472 Trying to connect to /run/user/1000/pulse/native... SHM possible: yes Protocol version: remote 30, local 30 Negotiated SHM: yes 0:00:00.275566120 24621 0x161f040 WARN basesrc gstbasesrc.c:3486:gst_base_src_start_complete:<source> pad not activated yet 0:00:00.275902725 24621 0x161f040 WARN basesrc gstbasesrc.c:3486:gst_base_src_start_complete:<source> pad not activated yet Format info property 'format.sample_format' type is not string. 0:00:00.285102434 24621 0x21f11e0 WARN pulse pulsesink.c:2167:gst_pulsesink_query_getcaps:<audio-sink-actual-sink-pulse> Could not create probe stream 0:00:00.365375427 24621 0x7f82c40ffb70 WARN pulse pulsesink.c:2167:gst_pulsesink_query_getcaps:<audio-sink-actual-sink-pulse> Could not create probe stream 0:00:00.374087966 24621 0x7f82c40ffb70 WARN pulse pulsesink.c:2167:gst_pulsesink_query_getcaps:<audio-sink-actual-sink-pulse> Could not create probe stream 0:00:00.374392912 24621 0x7f82c40ffb70 WARN playsink gstplaysink.c:2916:gen_audio_chain:<playsink> error: Failed to configure the audio sink. 0:00:00.375476196 24621 0x7f82c40ffb70 WARN wavparse gstwavparse.c:2261:gst_wavparse_loop:<wavparse0> error: Internal data flow error. 0:00:00.375555318 24621 0x7f82c40ffb70 WARN wavparse gstwavparse.c:2261:gst_wavparse_loop:<wavparse0> error: streaming task paused, reason not-linked (-1) 0:00:00.442942584 24621 0x161f040 ERROR default totem-gst-helpers.c:61:totem_gst_message_print: message = Internal GStreamer error: pad problem. Please file a bug at http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer. 0:00:00.442996447 24621 0x161f040 ERROR default totem-gst-helpers.c:63:totem_gst_message_print: domain = 5890 (gst-core-error-quark) 0:00:00.443018667 24621 0x161f040 ERROR default totem-gst-helpers.c:64:totem_gst_message_print: code = 5 0:00:00.443030278 24621 0x161f040 ERROR default totem-gst-helpers.c:65:totem_gst_message_print: debug = gstplaysink.c(2916): gen_audio_chain (): /GstPlayBin:play/GstPlaySink:playsink: Failed to configure the audio sink. 0:00:00.443040339 24621 0x161f040 ERROR default totem-gst-helpers.c:66:totem_gst_message_print: source = <playsink> 0:00:00.443050652 24621 0x161f040 ERROR default totem-gst-helpers.c:67:totem_gst_message_print: uri = (NULL) Meanwhile, on PulseAudio v8.0, everything runs smoothly and Totem is able to play the file without _any_ errors. Bug extracted from mailing list discussions here: http://article.gmane.org/gmane.comp.audio.pulseaudio.general/25788
Marked as a v9.0 release blocker
We have the root cause of this bug. The options are to revert the offending patch for 9.0 (leaving the underlying problem unaddressed, but this is not a regression). The alternative is to look at merging my patches to drop json-c as a dep soon. Root cause from email discussion follows: ---- Okay, so this is a fun one. The offending commit is: commit 12a202c510dcacbd2b85fcc1170484eb16fef491 Author: Arun Raghavan <git@arunraghavan.net> Date: Thu Dec 31 09:27:56 2015 +0530 format: Make pa_format_info_valid() stricter for PCM We should do stricter validation when we can. The check fails at: if (json_object_get_type(o) != json_type_string) { pa_log_debug("Format info property '%s' type is not string.", key); json_object_put(o); return -PA_ERR_INVALID; } Rhythmbox and Totem are linked to the json-glib library which *also* has a json_object_get_type(). That is the function which gets called, and returns a junk type which makes this code fail.
(In reply to Arun Raghavan from comment #2) > We have the root cause of this bug. The options are to revert the offending > patch for 9.0 (leaving the underlying problem unaddressed, but this is not a > regression). The alternative is to look at merging my patches to drop json-c > as a dep soon. My vote goes to reverting the offending patch.
Reverted the patch, so dropping as a blocker. Keeping this open (and changing the description) since I'd like a better fix to go in for 10.0.
Fixed in the "next" branch.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.