Bug 1221160 - GStreamer: proper support for pipewire
Summary: GStreamer: proper support for pipewire
Status: NEW
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Sound (show other bugs)
Version: Current
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Antonio Larrosa
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-03-08 07:24 UTC by Jiri Slaby
Modified: 2024-05-17 08:21 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
pipeline from the gst-play-1.0 (36.90 KB, application/pdf)
2024-03-08 07:24 UTC, Jiri Slaby
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jiri Slaby 2024-03-08 07:24:58 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
Comment 1 Jiri Slaby 2024-03-08 07:32:21 UTC
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)
Comment 2 Antonio Larrosa 2024-03-08 08:45:20 UTC
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.
Comment 3 Jiri Slaby 2024-03-08 12:03:30 UTC
(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.
Comment 4 Jiri Slaby 2024-05-17 08:21:36 UTC
So gstreamer is fixed WRT GST_PLUGIN_FEATURE_RANK=pipewiresink:267 in TW already.

Do you plan on setting that by default?