Bugzilla – Bug 1221160
GStreamer: proper support for pipewire
Last modified: 2024-05-17 08:21:36 UTC
Created attachment 873327 [details] pipeline from the gst-play-1.0 So Antinio pushed: https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1932/ To support GST_PLUGIN_FEATURE_RANK=pipewiresink:267 or similar. But it looks like PulseSink is still selected as output: LANG=en GST_PLUGIN_FEATURE_RANK=pipewiresink:267 GST_DEBUG_DUMP_DOT_DIR=/tmp gst-play-1.0 /tmp/a.mp3 ; dot -T pdf `ls -rt /tmp/*dot|tail -1` >/tmp/a.pdf
With export GST_PLUGIN_FEATURE_RANK=pipewiresink:267, I correctly see: $ for a in alsasink pulsesink pipewiresink ; do echo $a; gst-inspect-1.0 $a|grep Rank; done alsasink Rank primary (256) pulsesink Rank primary + 10 (266) pipewiresink Rank primary + 11 (267)
Have you removed the gstreamer cache to be sure the ranks are correctly recalculated? Try doing: rm ~/.cache/gstreamer-1.0/registry.x86_64.bin And then test gst-play again. Also, I'm preparing another patch that adds a configuration file for the pipewire gstreamer plugin so that the rank can be increased automatically by the pipewire-pulseaudio package by dropping a configuration file that modifies the default configuration without setting any environment variable.
(In reply to Antonio Larrosa from comment #2) > Have you removed the gstreamer cache to be sure the ranks are correctly > recalculated? Try doing: > > rm ~/.cache/gstreamer-1.0/registry.x86_64.bin Ah, no. > And then test gst-play again. Then I see (once): (gst-play-1.0:20950): GStreamer-WARNING **: 13:02:08.182: External plugin loader failed. This most likely means that the plugin loader helper binary was not found or could not be run. You might need to set the GST_PLUGIN_SCANNER environment variable if your setup is unusual. This should normally not be required though. And it still selects pulsesink.
So gstreamer is fixed WRT GST_PLUGIN_FEATURE_RANK=pipewiresink:267 in TW already. Do you plan on setting that by default?