-
Task
-
Resolution: Fixed
-
Major
-
None
-
None
Continuing from SPEC-2626
Pipewire should install the gstreamer elements that it comes with and the apps should use pwaudiosink instead of alsasink.
Originally I wanted to avoid that so that the apps don't have to use an agl-specific gstreamer element, but as it turns out there are a couple of limitations with alsasink:
- it's not very easy to change the default latency in order to solve this issue
- it has no way of reporting back to the application that there is another higher-priority app that has taken over the audio stream, making it impossible to implement policies (and it actually hangs if the session manager decides to unlink it from the device)
- there is no way to specify the role of the stream without hacks
# | Subject | Branch | Project | Status | CR | V |
---|---|---|---|---|---|---|
21853,3 | pipewire: add and enable native gstreamer audio source & sink elements for pipewire | master | AGL/meta-agl-devel | Status: MERGED | +2 | +1 |
21854,2 | mediaplayer: gstreamer: use pwaudiosink instead of alsasink | master | apps/agl-service-mediaplayer | Status: MERGED | +2 | +1 |
21855,2 | radio: gstreamer: use pwaudiosink instead of alsasink | master | apps/agl-service-radio | Status: MERGED | +2 | +1 |
21956,1 | Switch to pipewire output | master | apps/phone | Status: MERGED | +2 | +1 |
21972,1 | Switch to pipewire output | halibut | apps/phone | Status: MERGED | +2 | +1 |
21988,1 | navigation: Switch to pipewire output | master | AGL/meta-agl-demo | Status: MERGED | +2 | +1 |
22001,1 | navigation: Switch to pipewire output | halibut | AGL/meta-agl-demo | Status: MERGED | +2 | +1 |