[neon/backports-focal/pipewire]: Summary of bulk changes made

KDE Git Services - Bulk Change null at kde.org
Mon Mar 22 12:41:55 GMT 2021


Git repository change summary for neon/backports-focal/pipewire
Pushed by sitter into branch 'Neon/release-lts'.
Changed from b832e295a2719d94946b08806994345b92fb8607 to b519d5c82fbc589ea4bc46f7b6483104d948e689
Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository.

This change contains the following new commits:

Git commit df1dbee687c819095a6fddce3b24943f9ac47dbc by Wim Taymans (on behalf of Pauli Virtanen) on 18/02/2021 at 11:33..
bluez5: include a2dp codec profiles in route profiles
https://invent.kde.org/neon/backports-focal/pipewire/commit/df1dbee687c819095a6fddce3b24943f9ac47dbc

Git commit d75a79babc9e83a55389f2cc04ef702353ae855e by Wim Taymans (on behalf of Pauli Virtanen) on 18/02/2021 at 11:33..
bluez5: add delay adjustment property + fallback value for a2dp-sink

Not all devices report their A2DP delay. In those cases, use a fallback
value of 150ms by default.

Make the delay adjustable with a SPA_Prop, and expose it as a part of
the route. Implement the corresponding parts in media-session.
https://invent.kde.org/neon/backports-focal/pipewire/commit/d75a79babc9e83a55389f2cc04ef702353ae855e

Git commit ed9614077cfbc1a9917d4e6707a78e2337c8296e by Wim Taymans (on behalf of Pauli Virtanen) on 18/02/2021 at 11:33..
pulse-server: implement node latency offset

Also add facility for storing user data on objects.
https://invent.kde.org/neon/backports-focal/pipewire/commit/ed9614077cfbc1a9917d4e6707a78e2337c8296e

Git commit 2efdb78239f2454a544443154e31d79c4d618ac6 by Wim Taymans (on behalf of Pauli Virtanen) on 18/02/2021 at 11:33..
media-session: save and restore latencyOffsetNsec
https://invent.kde.org/neon/backports-focal/pipewire/commit/2efdb78239f2454a544443154e31d79c4d618ac6

Git commit 63a3811aa76802e9585e04cf12bf8de617442105 by Wim Taymans on 18/02/2021 at 11:42..
fix some warnings
https://invent.kde.org/neon/backports-focal/pipewire/commit/63a3811aa76802e9585e04cf12bf8de617442105

Git commit 6a219092818a7a7e357441256d8070ae77ac2d3a by eater on 18/02/2021 at 13:01..
spa: escape double quotes
https://invent.kde.org/neon/backports-focal/pipewire/commit/6a219092818a7a7e357441256d8070ae77ac2d3a

Git commit a22602f436c08a6b1d1651f2e07d8026dc5833b9 by Wim Taymans on 18/02/2021 at 15:18..
README: update some documentation
https://invent.kde.org/neon/backports-focal/pipewire/commit/a22602f436c08a6b1d1651f2e07d8026dc5833b9

Git commit 250a10cd638659391a26b98c9f1287d3a0807b5e by Wim Taymans on 18/02/2021 at 16:21..
conf: put "" around string with potential special chars
https://invent.kde.org/neon/backports-focal/pipewire/commit/250a10cd638659391a26b98c9f1287d3a0807b5e

Git commit 8c5ca000ef7fddd9be9cd2211d880736e97b956d by Wim Taymans on 18/02/2021 at 16:47..
bluez5: volumes need to be distributed to all channels

Otherwise some channels might become silent.

See #741
https://invent.kde.org/neon/backports-focal/pipewire/commit/8c5ca000ef7fddd9be9cd2211d880736e97b956d

Git commit 930b411075a5c1b0d9ddcfe7dd2dbfdc27baab90 by Wim Taymans on 18/02/2021 at 18:25..
bluez5: set the right volumes on the node
https://invent.kde.org/neon/backports-focal/pipewire/commit/930b411075a5c1b0d9ddcfe7dd2dbfdc27baab90

Git commit 7a5a94470453e0cbd3a087b1be2aa8960ff43c07 by Wim Taymans (on behalf of Frédéric Danis) on 18/02/2021 at 18:32..
bluez5: backend-native: Check volume values

The value from +VGM/+VGS AT commands or events should be between 0 than 15.
https://invent.kde.org/neon/backports-focal/pipewire/commit/7a5a94470453e0cbd3a087b1be2aa8960ff43c07

Git commit 84fc63e60168e2c2f43875423899b4ae3bd89a7b by Wim Taymans on 18/02/2021 at 18:51..
media-session: don't switch to pro-audio by default

Ignore the pro-audio profile when finding the best profile. We only
want to enable the profile when explicitly set.

Fixes #761
https://invent.kde.org/neon/backports-focal/pipewire/commit/84fc63e60168e2c2f43875423899b4ae3bd89a7b

Git commit 44919c83fc51aa5e1a22c903e841897c1b4d274c by Wim Taymans on 19/02/2021 at 08:57..
audioconvert: keep better track of param changes

Keep track of the param changes with the user counter. Make sure to
flip the serial switch whenever a change is pending. Previously
we copied the param from the channelmixer or follower but that
did not always result in a serial change.

Fixes #764
https://invent.kde.org/neon/backports-focal/pipewire/commit/44919c83fc51aa5e1a22c903e841897c1b4d274c

Git commit b9241b1d73228946410a9ca850f1de710120cc76 by Wim Taymans on 19/02/2021 at 09:06..
alsa: set application.name
https://invent.kde.org/neon/backports-focal/pipewire/commit/b9241b1d73228946410a9ca850f1de710120cc76

Git commit dd1bf796cbee639bbca1b9b299b744eb6c245780 by Wim Taymans (on behalf of Bryan Quigley) on 19/02/2021 at 09:08..
systemd: add sandboxing and slice similar to pulseaudio

Adds as much sandboxing as seems to work with user sessions.
Adds pipewire to session slice per https://systemd.io/DESKTOP_ENVIRONMENTS/

Inspired from https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/blob/master/src/daemon/systemd/user/pulseaudio.service.in

Fixes: 763
https://invent.kde.org/neon/backports-focal/pipewire/commit/dd1bf796cbee639bbca1b9b299b744eb6c245780

Git commit 08ea7d5cd6a07ed3624417e4f7ff2612d00a7a7d by Wim Taymans on 19/02/2021 at 10:43..
properties: ignore some property updates

Ignore property updates for keys that we manage ourselves like the
object.id, node.id etc. Otherwise a client can replace this with
their local ids and cause confusion.
https://invent.kde.org/neon/backports-focal/pipewire/commit/08ea7d5cd6a07ed3624417e4f7ff2612d00a7a7d

Git commit 686524ce40f217163eb2c56d81618ee97292ba73 by Wim Taymans on 19/02/2021 at 11:44..
context: use the log.level from the config file

Use log.level from the config file if not otherwise set with
PIPEWIRE_DEBUG env.
Make client log.level = 0 by default to avoid spamming the console
with errors.

Fixes #725
Fixes #769
https://invent.kde.org/neon/backports-focal/pipewire/commit/686524ce40f217163eb2c56d81618ee97292ba73

Git commit 4b591df145afa316e8e047764f9b98fc10cbacd9 by Wim Taymans on 19/02/2021 at 13:57..
pulse-server: print encoding name in format_info
https://invent.kde.org/neon/backports-focal/pipewire/commit/4b591df145afa316e8e047764f9b98fc10cbacd9

Git commit fcf00b3d352d931446a384a768b999520662b599 by Wim Taymans on 19/02/2021 at 14:25..
pulse-server: handle unsupported formats

We can only handle PCM encodings for now, fail conversion otherwise.
If we have no supported formats, return an error code.

VLC first try to send AC3 or EAC3 passthrough and then tries again
with decoded data. If we accept the encoded data we are just playing
noise.

Fixes #428
https://invent.kde.org/neon/backports-focal/pipewire/commit/fcf00b3d352d931446a384a768b999520662b599

Git commit b35969c706d53b7900c159c566d463f152db5e77 by Wim Taymans (on behalf of dreamer) on 19/02/2021 at 14:33..
script depends on bash, set bash with shebang
https://invent.kde.org/neon/backports-focal/pipewire/commit/b35969c706d53b7900c159c566d463f152db5e77

Git commit 715a3a642a4f1c1f624e0a9dc0394b1819b69f93 by Wim Taymans on 19/02/2021 at 15:10..
jack: handle client init error with -EIO
https://invent.kde.org/neon/backports-focal/pipewire/commit/715a3a642a4f1c1f624e0a9dc0394b1819b69f93

Git commit 91875c1fd8ece6b1b94130c50304b715654f8681 by Wim Taymans on 19/02/2021 at 15:42..
pw-cli: always output to stdout

Use spa_debug_pod because spa_debug_format outputs to stderr
https://invent.kde.org/neon/backports-focal/pipewire/commit/91875c1fd8ece6b1b94130c50304b715654f8681

Git commit 72e03e3dc8e69cfb59219b3feb72ba3e927cdec9 by Wim Taymans on 19/02/2021 at 16:48..
media-session: add -c option to load custom config
https://invent.kde.org/neon/backports-focal/pipewire/commit/72e03e3dc8e69cfb59219b3feb72ba3e927cdec9

Git commit 3673265ae20d7b59e89cad6c5238c232796731b2 by Wim Taymans on 19/02/2021 at 16:54..
policy-node: don't crash without metadata
https://invent.kde.org/neon/backports-focal/pipewire/commit/3673265ae20d7b59e89cad6c5238c232796731b2

Git commit a5dc2493dfccfc168cef01162f38f90e986b8af4 by Pauli Virtanen on 19/02/2021 at 19:16..
bluez5: route shouldn't list a2dp profiles when not connected
https://invent.kde.org/neon/backports-focal/pipewire/commit/a5dc2493dfccfc168cef01162f38f90e986b8af4

Git commit 71e37f93f3173e4979d01a055e9bc6d1e77cf72c by Wim Taymans on 20/02/2021 at 19:59..
PIPEWIRE_LATENCY always overrides app settings
https://invent.kde.org/neon/backports-focal/pipewire/commit/71e37f93f3173e4979d01a055e9bc6d1e77cf72c

Git commit 149319819aa5d4e39770c35a0c00f6c2963e2bf3 by Wim Taymans on 20/02/2021 at 20:02..
jack: apply PIPEWIRE_PROPS after reading config

First apply config properties, then PIPEWIRE_PROPS.
We can set the node.latency in jack.conf
https://invent.kde.org/neon/backports-focal/pipewire/commit/149319819aa5d4e39770c35a0c00f6c2963e2bf3

Git commit 5738cb74ef4ad44eec674057f18d4764cbb9c69b by Wim Taymans on 20/02/2021 at 20:03..
Add filter and stream properties

Mostly latency but also adapter properties for streams.
https://invent.kde.org/neon/backports-focal/pipewire/commit/5738cb74ef4ad44eec674057f18d4764cbb9c69b

Git commit fa39cae9d3a0300bd49a46d9aa63b1b24ff69b26 by Wim Taymans on 20/02/2021 at 20:06..
pulse-server: we can add stream.properties as well
https://invent.kde.org/neon/backports-focal/pipewire/commit/fa39cae9d3a0300bd49a46d9aa63b1b24ff69b26

Git commit 1c3a17362e5ea2572abec8522bb674f140cb61ce by Wim Taymans on 21/02/2021 at 08:43..
pulse-server: fix weird property handling

There is no need to copy the properties, just pass ownership.
Make sure to always have properties for the server. Ensure we
clean up properties on error.
https://invent.kde.org/neon/backports-focal/pipewire/commit/1c3a17362e5ea2572abec8522bb674f140cb61ce

Git commit c067fd0a20654268846b3c734927a341d7b6e9b2 by Wim Taymans on 22/02/2021 at 09:07..
alsa: log device name in visible debug messages
https://invent.kde.org/neon/backports-focal/pipewire/commit/c067fd0a20654268846b3c734927a341d7b6e9b2

Git commit 5ae92fd643850d97dc63a75dc2ae6f89d1b6700c by Wim Taymans on 22/02/2021 at 09:54..
media-session: Fix saved_profile check

ID_INVALID is when the profile was not saved.
https://invent.kde.org/neon/backports-focal/pipewire/commit/5ae92fd643850d97dc63a75dc2ae6f89d1b6700c

Git commit 8414092763d203e1919548f626cf7e9c23a6650e by Wim Taymans on 22/02/2021 at 15:51..
Rework profile/route handling

Add save property to Profile and Route params to notify the session
manager that they should be saved. Let the session manager only save
the Profile and Routes with the save flag.
Make pulse-server set the save flag on Profile and Route changes.
The result is that we can make a difference between user requested
changes and automatical changes and only remember the user preferences.
When a port changes availability, first check if we need to perform
a profile switch, if not select the new best port.
https://invent.kde.org/neon/backports-focal/pipewire/commit/8414092763d203e1919548f626cf7e9c23a6650e

Git commit 3b0fcdd5256a1a7fc06abccb19ca8a27cbabf2b8 by Wim Taymans on 22/02/2021 at 16:47..
media-session: don't save invalid route properties

When we switch away from a route, don't save the properties.
https://invent.kde.org/neon/backports-focal/pipewire/commit/3b0fcdd5256a1a7fc06abccb19ca8a27cbabf2b8

Git commit ab45b16a05316d346ddc500a7ea4992283c7e4fd by Wim Taymans on 23/02/2021 at 10:09..
media-session: improve routing

First check all the routes to see if anything changed. If there is
a change check if we need a profile switch.
Then check all the active routes and restore state when they changed.
https://invent.kde.org/neon/backports-focal/pipewire/commit/ab45b16a05316d346ddc500a7ea4992283c7e4fd

Git commit 8712cfb6a18e9893b0ae58a87f3180c2e1a76d3e by Wim Taymans on 23/02/2021 at 11:29..
pulse-server: remove MIN_BLOCK

It is not really used and minreq is good enough
https://invent.kde.org/neon/backports-focal/pipewire/commit/8712cfb6a18e9893b0ae58a87f3180c2e1a76d3e

Git commit 43f8f39d3a8f86fa314706fc68e0e4776ad6095b by Wim Taymans on 23/02/2021 at 13:57..
pulse-server: move some config params to config file

Also make the minreq/fragsize larger by default.
https://invent.kde.org/neon/backports-focal/pipewire/commit/43f8f39d3a8f86fa314706fc68e0e4776ad6095b

Git commit d54da879bf5f9fa9009e1ab27e8d52eae3141764 by Wim Taymans on 23/02/2021 at 15:13..
jack: add config option to shorten and filter names
https://invent.kde.org/neon/backports-focal/pipewire/commit/d54da879bf5f9fa9009e1ab27e8d52eae3141764

Git commit d2fb6db21fdff538e8b27246da301a94994b3d97 by Wim Taymans on 23/02/2021 at 16:17..
alsa: use configured rate and channels when enumerating formats

When we have a rate or channels configured, set this in the hw_params
to restrict the enumeration of the remaining parameters. If we,
for example want 8 channels, some cards restrict the formats in that
case and we don't want to enumerate impossible combinations.

Fixes #782
https://invent.kde.org/neon/backports-focal/pipewire/commit/d2fb6db21fdff538e8b27246da301a94994b3d97

Git commit b7c6f70ae3dde7c82f631edf6521c56775360338 by Wim Taymans (on behalf of George Kiagiadakis) on 23/02/2021 at 16:21..
systemd: add sandboxing also for the system service

Based on dd1bf796cbee639bbca1b9b299b744eb6c245780
and https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/blob/master/src/daemon/systemd/user/pulseaudio.service.in

See also: #763
https://invent.kde.org/neon/backports-focal/pipewire/commit/b7c6f70ae3dde7c82f631edf6521c56775360338

Git commit 3a7ce9660afce7c18dde09cbe931219a97b853b1 by Wim Taymans (on behalf of George Kiagiadakis) on 23/02/2021 at 16:21..
meson: add option to enable/disable media-session
https://invent.kde.org/neon/backports-focal/pipewire/commit/3a7ce9660afce7c18dde09cbe931219a97b853b1

Git commit 012a68f8ef33705f1a40ec8ac294b8cce7f6aa88 by Wim Taymans (on behalf of George Kiagiadakis) on 23/02/2021 at 16:21..
systemd: add unit files for pipewire-media-session

... and disable starting it from context.exec in the config
https://invent.kde.org/neon/backports-focal/pipewire/commit/012a68f8ef33705f1a40ec8ac294b8cce7f6aa88

Git commit 217f93a31777199acd864216987a091941e6e8ec by Wim Taymans (on behalf of Ivan) on 23/02/2021 at 16:23..
fix: Change script shebang to support non-FHS *NIX systems (e.g NixOS)
https://invent.kde.org/neon/backports-focal/pipewire/commit/217f93a31777199acd864216987a091941e6e8ec

Git commit 1f2cb7ac674694abbc602665fd15dadfa8e3760e by Wim Taymans on 23/02/2021 at 16:48..
don't crash with missing libraries
https://invent.kde.org/neon/backports-focal/pipewire/commit/1f2cb7ac674694abbc602665fd15dadfa8e3760e

Git commit 9e0946111319d33649aedda3dba9ad2229648b5e by Wim Taymans on 23/02/2021 at 17:20..
alsa: gracefully handle NULL params
https://invent.kde.org/neon/backports-focal/pipewire/commit/9e0946111319d33649aedda3dba9ad2229648b5e

Git commit e340a44a357e4550e169bc8825c6aa8b4ceb76db by Wim Taymans on 23/02/2021 at 20:11..
jack: fix names of our ports

Write our port name into the port.name

See #796
See #780
See #569
https://invent.kde.org/neon/backports-focal/pipewire/commit/e340a44a357e4550e169bc8825c6aa8b4ceb76db

Git commit 72acd752f68a35c40641262be1c69014170d0734 by Wim Taymans on 24/02/2021 at 11:55..
pulse-server: don't use the pending_sample after free

Destroying the sample_play will free the user_data, which is the
pending_sample info. So don't try to use the pending_sample anymore
after destroy.
https://invent.kde.org/neon/backports-focal/pipewire/commit/72acd752f68a35c40641262be1c69014170d0734

Git commit 27f85d1f52b52bb2cba0900b1e4e2377672a0459 by Wim Taymans on 24/02/2021 at 13:58..
tools: remove registry listener before destroying

Otherwise we access freed memory when we try to remove
the listener later.
https://invent.kde.org/neon/backports-focal/pipewire/commit/27f85d1f52b52bb2cba0900b1e4e2377672a0459

Git commit 6f262103610838b6385bdeab4b8ea504af3a717e by Wim Taymans on 24/02/2021 at 19:28..
media-session: simplify routing a bit

1) detect port changes
2) restore or save port changes
3) if port changes:
     check and restore the best profile
     else check and restore the best ports
4) if profile changed, check and restore best ports

See #533
See #708
https://invent.kde.org/neon/backports-focal/pipewire/commit/6f262103610838b6385bdeab4b8ea504af3a717e

Git commit fd544544ab33de8dd4f4b26c421247a1b427b644 by Wim Taymans (on behalf of Gleb Popov) on 24/02/2021 at 19:29..
Link v4l2 plugin to libinotify on FreeBSD
https://invent.kde.org/neon/backports-focal/pipewire/commit/fd544544ab33de8dd4f4b26c421247a1b427b644

Git commit af5ba6cf4ce02008df6e4ae6bd1951c9f24ecaf0 by Wim Taymans (on behalf of Gleb Popov) on 24/02/2021 at 19:29..
Define ENODATA if it isn't defined.
https://invent.kde.org/neon/backports-focal/pipewire/commit/af5ba6cf4ce02008df6e4ae6bd1951c9f24ecaf0

Git commit 3faf3888212e4fad8ac939fa96a31578d692ccdb by Wim Taymans (on behalf of Gleb Popov) on 24/02/2021 at 19:29..
Guard some non-portable error code defines with #ifdef's
https://invent.kde.org/neon/backports-focal/pipewire/commit/3faf3888212e4fad8ac939fa96a31578d692ccdb

Git commit c5e42aa9db1e86db08e06bc69ef5e87716d516c8 by Wim Taymans (on behalf of Gleb Popov) on 24/02/2021 at 19:29..
Define Linux-specific O_PATH and MAP_LOCKED flags to 0 on FreeBSD
https://invent.kde.org/neon/backports-focal/pipewire/commit/c5e42aa9db1e86db08e06bc69ef5e87716d516c8

Git commit dbc9a520ef65cfaac2b1a448cb46f45551c4af6d by Wim Taymans (on behalf of Gleb Popov) on 24/02/2021 at 19:29..
Check for sys/mount.h and sys/vfs.h headers and include them conditionally
https://invent.kde.org/neon/backports-focal/pipewire/commit/dbc9a520ef65cfaac2b1a448cb46f45551c4af6d

Git commit 8768cf1b6817cfe1a54be5423a269550c47bd4f4 by Wim Taymans on 24/02/2021 at 21:05..
jack: increase client name size

Increase the client name size and try hard not to exceed the client name
size especially when adding the Monitor suffix.
Also avoid some potentially unsafe strncpy.

See #788
https://invent.kde.org/neon/backports-focal/pipewire/commit/8768cf1b6817cfe1a54be5423a269550c47bd4f4

Git commit 6114ca7c4a5a30e9eefb5dfe4a34c22a51510ba4 by Wim Taymans (on behalf of Pauli Virtanen) on 24/02/2021 at 21:14..
bluez5: fix queueing codec switches

Make queueing a codec switch work properly.  When receiving the dbus
reply, it should move to latest one. Others should be discarded.

Previously, it instead hit an assert, if there were more than two
queued.
https://invent.kde.org/neon/backports-focal/pipewire/commit/6114ca7c4a5a30e9eefb5dfe4a34c22a51510ba4

Git commit 2491f56355dc33efde170bf357870a9f38c94230 by Wim Taymans (on behalf of George Kiagiadakis) on 24/02/2021 at 21:15..
config: ignore module-portal load failures

When running pipewire as a system-wide daemon, module-portal
obviously doesn't load. Make it optional so that the default
config doesn't fail in system-wide mode
https://invent.kde.org/neon/backports-focal/pipewire/commit/2491f56355dc33efde170bf357870a9f38c94230

Git commit 32512a8962dd0c60fb2f10ae61866f2da796d038 by Wim Taymans (on behalf of George Kiagiadakis) on 24/02/2021 at 21:15..
systemd: system-mode: preserve /run/pipewire after the daemon stops

/run/pipewire is initially created by pipewire.socket when it creates
the socket file, but it is owned by root with mode 0755.

In the .service unit, RuntimeDirectory=pipewire re-creates /run/pipewire
for user pipewire (owned by pipewire:pipewire, 0755) when this unit starts.
This is necessary for the pipewire daemon to be able to write the .lock file.

By default, when the service unit stops, systemd deletes this runtime
directory and therefore it also deletes the socket that is owned by
pipewire.socket. When this happens, the service is no longer
socket-activateable even though pipewire.socket is active.

RuntimeDirectoryPreserve=yes prevents the service unit from removing
this runtime directory and socket activation still works as expected
https://invent.kde.org/neon/backports-focal/pipewire/commit/32512a8962dd0c60fb2f10ae61866f2da796d038

Git commit 27cfff7965222a9640f7dafd67b1c2b1aa5506c9 by Wim Taymans (on behalf of George Kiagiadakis) on 24/02/2021 at 21:15..
systemd: do not specify RuntimeDirectory on the media-session service

This will just re-create /run/pipewire for no good reason; the one
in pipewire.service is enough
https://invent.kde.org/neon/backports-focal/pipewire/commit/27cfff7965222a9640f7dafd67b1c2b1aa5506c9

Git commit eacda22a7b9ca304b8a79b415761e23e66de2a76 by Wim Taymans on 24/02/2021 at 21:23..
jack: make constant of Monitor extension

See #788
https://invent.kde.org/neon/backports-focal/pipewire/commit/eacda22a7b9ca304b8a79b415761e23e66de2a76

Git commit 7cf07da39252f597e71626221094515faf1dab48 by Wim Taymans on 25/02/2021 at 06:00..
Start media-session and pulse-server in uninstalled config

Also update the INSTALL instructions to match reality.
https://invent.kde.org/neon/backports-focal/pipewire/commit/7cf07da39252f597e71626221094515faf1dab48

Git commit 20eb61b88294442c8845d59d203be3473a3ca9bb by Wim Taymans on 25/02/2021 at 09:28..
alsa: sync with pulseaudio
https://invent.kde.org/neon/backports-focal/pipewire/commit/20eb61b88294442c8845d59d203be3473a3ca9bb

Git commit 087811e171a23002406e67c71c23923c30f8e9f4 by Wim Taymans (on behalf of Gleb Popov) on 25/02/2021 at 09:34..
Fix FreeBSD build on Cirrus CI
https://invent.kde.org/neon/backports-focal/pipewire/commit/087811e171a23002406e67c71c23923c30f8e9f4

Git commit 9f53057b51c9d7ce68c240c21b459dc0b7d6acaf by Wim Taymans (on behalf of Gleb Popov) on 25/02/2021 at 09:34..
Add userspace implementation of getrandom() for FreeBSD 11
https://invent.kde.org/neon/backports-focal/pipewire/commit/9f53057b51c9d7ce68c240c21b459dc0b7d6acaf

Git commit 96fda265e0856e9ddae7cb8c3cece839bfe721ea by Wim Taymans (on behalf of Gleb Popov) on 25/02/2021 at 09:34..
Fix compiler warning by including a required header
https://invent.kde.org/neon/backports-focal/pipewire/commit/96fda265e0856e9ddae7cb8c3cece839bfe721ea

Git commit 1a12d6082a4e325c3b846308c04453d385ae6f78 by Wim Taymans on 25/02/2021 at 11:14..
stream: improve draining

After we drained, set the io state to NEED_DATA again. This will
trigger a new _process callback, if we have new buffers we will
exit the drain state and produce more data, if we have no buffers we
reenter the drained state and signal the drained event.

This effectively provides a way to exit the drain state by pushing
a new buffer into the stream.
https://invent.kde.org/neon/backports-focal/pipewire/commit/1a12d6082a4e325c3b846308c04453d385ae6f78

Git commit 555d5db384c01a7b69e37e6d5560331ab25a5e29 by Wim Taymans on 25/02/2021 at 11:14..
alsa: make sure we are started when draining

We need to be started before waiting for drain.

Fixes #787
https://invent.kde.org/neon/backports-focal/pipewire/commit/555d5db384c01a7b69e37e6d5560331ab25a5e29

Git commit 293d9b3c5d97dcbc77a062ea9ae795d743a9c05d by Wim Taymans on 25/02/2021 at 11:25..
context: set max-quantum to 4096 by default

Some devices seem to have trouble with larger quantum.

See #724
https://invent.kde.org/neon/backports-focal/pipewire/commit/293d9b3c5d97dcbc77a062ea9ae795d743a9c05d

Git commit 8784445eaeec08c0c1c5b5c04abe38d5d5bc53e5 by Wim Taymans (on behalf of James) on 25/02/2021 at 12:05..
Add run-pulse rule. Not sure if all env vars are needed here.
https://invent.kde.org/neon/backports-focal/pipewire/commit/8784445eaeec08c0c1c5b5c04abe38d5d5bc53e5

Git commit f0ca8881122ab1282f0dbd11348952091d68a6a4 by Wim Taymans (on behalf of James) on 25/02/2021 at 12:05..
PATH not needed for run-pulse
https://invent.kde.org/neon/backports-focal/pipewire/commit/f0ca8881122ab1282f0dbd11348952091d68a6a4

Git commit cab87b6d3e156a0e7c49a0df2f6de623425ac4c3 by Wim Taymans on 25/02/2021 at 12:35..
pipewire: make pipewire a generic launcher

It uses the basename as the config file so you can symlink to it
and make new custom servers.
https://invent.kde.org/neon/backports-focal/pipewire/commit/cab87b6d3e156a0e7c49a0df2f6de623425ac4c3

Git commit d080cd4819095baf4fae6cffe225333c65eec926 by Wim Taymans on 25/02/2021 at 15:18..
channelmix: fix 7.1 to stereo and 3.1 downmix
https://invent.kde.org/neon/backports-focal/pipewire/commit/d080cd4819095baf4fae6cffe225333c65eec926

Git commit 6ce3705f5e6b3deefd2991e2086fd1d4ec009859 by Wim Taymans on 25/02/2021 at 16:41..
fmtconvert: fix channel remapping
https://invent.kde.org/neon/backports-focal/pipewire/commit/6ce3705f5e6b3deefd2991e2086fd1d4ec009859

Git commit 8386ddff78464d4572dc2fb64d3aeddb567fb4aa by Wim Taymans on 25/02/2021 at 16:42..
alsa-plugin: Fix default channel layout

We need to use the default channel layout that alsa clients expect.
Remove query chmap, nobody uses that, we need to use the alsa default
channel map.
Implement set_chmap in case anybody wants to set a custom map.
https://invent.kde.org/neon/backports-focal/pipewire/commit/8386ddff78464d4572dc2fb64d3aeddb567fb4aa

Git commit f7d756460e5cdb585752a44cfb673b9e63c483be by Wim Taymans on 25/02/2021 at 20:16..
alsa: add option to use device channel map instead of default

See #461
https://invent.kde.org/neon/backports-focal/pipewire/commit/f7d756460e5cdb585752a44cfb673b9e63c483be

Git commit 08445d2c4a9674bb527ab3034425db32044c872d by Wim Taymans (on behalf of Ivan) on 25/02/2021 at 20:23..
docs: Fit systemd services into one command for convenience

... also added some information about enabling pipewire-media-session.service
https://invent.kde.org/neon/backports-focal/pipewire/commit/08445d2c4a9674bb527ab3034425db32044c872d

Git commit e2181c582d299e982d02a6d937c6b6326ae02ba4 by Wim Taymans on 26/02/2021 at 17:40..
audioconvert: fix channel remapping some more

See #461
https://invent.kde.org/neon/backports-focal/pipewire/commit/e2181c582d299e982d02a6d937c6b6326ae02ba4

Git commit 80a543e0438c8286a833e188e21a70672ba2b653 by Wim Taymans on 26/02/2021 at 19:45..
adapter: improve error message

Make sure we debug the result code that is returned.
https://invent.kde.org/neon/backports-focal/pipewire/commit/80a543e0438c8286a833e188e21a70672ba2b653

Git commit 50437029a3f299a459c38dddd017567396c53b8f by Wim Taymans on 26/02/2021 at 20:12..
channelmix: improve debug, add passthrough state
https://invent.kde.org/neon/backports-focal/pipewire/commit/50437029a3f299a459c38dddd017567396c53b8f

Git commit d5d8150e05a90adea3efdb5faa57d4893d16dddf by Wim Taymans on 26/02/2021 at 20:14..
fmtconvert: prefer planar formats when possible

It's easier to convert to and from.
https://invent.kde.org/neon/backports-focal/pipewire/commit/d5d8150e05a90adea3efdb5faa57d4893d16dddf

Git commit 9662bc96ababaa3c7e0fc9b47ad57fb1ae214686 by Wim Taymans on 26/02/2021 at 20:15..
null-audio-sink: support and prefer planar F32P

It's easier to convert to and also the native format for the converter
so that it can operate in passthrough mode without any copies.
https://invent.kde.org/neon/backports-focal/pipewire/commit/9662bc96ababaa3c7e0fc9b47ad57fb1ae214686

Git commit 15e6a825f2acf0ad032f2c166df9185909162870 by Wim Taymans on 01/03/2021 at 12:56..
pulse-server: don't read past the end of the string
https://invent.kde.org/neon/backports-focal/pipewire/commit/15e6a825f2acf0ad032f2c166df9185909162870

Git commit e19263140a1cd8ba6e378d6a2791f8d57a816a25 by Wim Taymans on 01/03/2021 at 13:57..
pulse-server: improve module handling

Make a registry of modules
Assign an unique number to each module with the MODULE_FLAG bit set
so that we can also enumerate them
Implement enumerating our internally loaded modules
Implement unloading of the module using the module id
Move module-null-sink into a separate file
Use Audio/Sink if no other media.class was given, so that it works
just like the pulseaudio module
Enable linger=true in all cases.
https://invent.kde.org/neon/backports-focal/pipewire/commit/e19263140a1cd8ba6e378d6a2791f8d57a816a25

Git commit 157d423246c6b6923f0a5bc0748dbe3174cea07b by Wim Taymans on 01/03/2021 at 15:55..
bluez5: remove stray route param field

This info is also in the classes field.
https://invent.kde.org/neon/backports-focal/pipewire/commit/157d423246c6b6923f0a5bc0748dbe3174cea07b

Git commit 5ae286702e9042d3a844c4abbe60d780abfefe66 by Wim Taymans on 01/03/2021 at 16:01..
audioconvert: make sure we update the flags

When we get a param update, update with the new flags.
https://invent.kde.org/neon/backports-focal/pipewire/commit/5ae286702e9042d3a844c4abbe60d780abfefe66

Git commit 00e52ec16761d4a693c6910cd7fb7e03d922f8c8 by Wim Taymans on 01/03/2021 at 17:09..
resample: in drain, feed silence in all channels
https://invent.kde.org/neon/backports-focal/pipewire/commit/00e52ec16761d4a693c6910cd7fb7e03d922f8c8

Git commit 00d8d1472da571a4f1316ed2be30950d1a1588c9 by Wim Taymans on 01/03/2021 at 18:51..
channelmix: fix 7.1 to quad downmix
https://invent.kde.org/neon/backports-focal/pipewire/commit/00d8d1472da571a4f1316ed2be30950d1a1588c9

Git commit 1dfa36d77b36fe2012a6323c4611b271c194e58d by Wim Taymans on 02/03/2021 at 09:34..
alsa: reconfigure max latency based on buffer size

We can't ever support a latency larger than half the buffer size.
Take a fourth of the buffer size to have some extre headroom.

See #724
https://invent.kde.org/neon/backports-focal/pipewire/commit/1dfa36d77b36fe2012a6323c4611b271c194e58d

Git commit 0e2a153bd34c2da6c426c819ef5272f4b8bdfbd8 by Wim Taymans (on behalf of Frédéric Danis) on 02/03/2021 at 09:43..
bluez5: Start only one backend at a time for HSP/HFP

This will prevent to run the different backends concurrently.

The native backend will only register to BlueZ if neither oFono nor
hsphfpd are running. If one of them starts, the native backend will be
unregistered and the corresponding backend will register to its daemon.
https://invent.kde.org/neon/backports-focal/pipewire/commit/0e2a153bd34c2da6c426c819ef5272f4b8bdfbd8

Git commit a57d3e4dae3e53094a9a57373bda9551c158e4a0 by Wim Taymans on 02/03/2021 at 09:46..
Revert "context: set max-quantum to 4096 by default"

This reverts commit 293d9b3c5d97dcbc77a062ea9ae795d743a9c05d.

The root cause of this might now be fixed.

See #724
https://invent.kde.org/neon/backports-focal/pipewire/commit/a57d3e4dae3e53094a9a57373bda9551c158e4a0

Git commit 0aadc0450d7ad24103cfb70b808ae1ed3c5099c7 by Wim Taymans on 02/03/2021 at 14:03..
alsa: implement poll_descriptors

In there we can evaluate the poll fd and make sure it blocks or not
in the following poll based on the buffer filled levels. Some API
is very sensitive about this, it seems.

Fixes #433
https://invent.kde.org/neon/backports-focal/pipewire/commit/0aadc0450d7ad24103cfb70b808ae1ed3c5099c7

Git commit 97cc27600ab7b796cc38508e787078caaad1c864 by Wim Taymans (on behalf of Huang-Huang Bao) on 02/03/2021 at 14:08..
bluez5: add missing function defination
https://invent.kde.org/neon/backports-focal/pipewire/commit/97cc27600ab7b796cc38508e787078caaad1c864

Git commit 8b97416417c2994b787d81960ae185c7aa7cd39b by Arnaud Ferraris on 02/03/2021 at 17:06..
json: add integer parsing functions

While most numeric values used in pipewire are floating-point values, it 
can still be useful to be able to directly parse integer values.
https://invent.kde.org/neon/backports-focal/pipewire/commit/8b97416417c2994b787d81960ae185c7aa7cd39b

Git commit c32c532e2ae4283e7c81ab87f5ea9f72d478eaf5 by jasker5183 on 02/03/2021 at 19:33..
Update bluetooth issue.md
https://invent.kde.org/neon/backports-focal/pipewire/commit/c32c532e2ae4283e7c81ab87f5ea9f72d478eaf5

Git commit 04a13471fb998d8e287b6618abfef6c5ec2185f5 by Wim Taymans (on behalf of jasker5183) on 02/03/2021 at 19:37..
Update issue.md
https://invent.kde.org/neon/backports-focal/pipewire/commit/04a13471fb998d8e287b6618abfef6c5ec2185f5

Git commit 302282ef5945512edccae7beceeb2d22feb09d1b by Pauli Virtanen on 02/03/2021 at 20:20..
bluez5: set channel information for hfp/hsp transports

Fixes volume problems.
https://invent.kde.org/neon/backports-focal/pipewire/commit/302282ef5945512edccae7beceeb2d22feb09d1b

Git commit 4389e449032b8bdf9b2f5bba5b8fd49aae14fa1e by Pauli Virtanen on 02/03/2021 at 21:46..
bluez5: emit props change events only if values actually changed

This may avoid infinite loops if parameters are being set based on events
sent by parameter changes. It's also what alsa-acp devices do, so bluez5
should follow.
https://invent.kde.org/neon/backports-focal/pipewire/commit/4389e449032b8bdf9b2f5bba5b8fd49aae14fa1e

Git commit c8804c3d6d9a0555c491904deb0271d35db99923 by Wim Taymans on 03/03/2021 at 12:27..
context: make a new node.max-latency property

node.latency also influences the pipeline latency in that it can
push the latency above the default value.
node.max-latency, instead, is only used to clamp the final latency
of the pipeline.
https://invent.kde.org/neon/backports-focal/pipewire/commit/c8804c3d6d9a0555c491904deb0271d35db99923

Git commit 8981e11c5344f560572f2e4f9dad92e119d298b0 by Wim Taymans on 03/03/2021 at 14:40..
alsa: various improvements

Remove some magic constants that are not needed anymore with the
headroom.
Clamp the error to some reasonable value so that we don't adjust the
rate too much but still apply all of the correction calculated by the
dll.
Remove the bandwidth adjustment.
Also update the matching and resample fields when we reassign the
node to a new driver. This could cause the new follower to not activate
the adaptive resampler and get out of sync.
https://invent.kde.org/neon/backports-focal/pipewire/commit/8981e11c5344f560572f2e4f9dad92e119d298b0

Git commit 052bc85dad0318c7980bfd5e4c41ccfa7afc83d1 by Wim Taymans on 03/03/2021 at 14:54..
jack: ship our own jack headers and build against them
https://invent.kde.org/neon/backports-focal/pipewire/commit/052bc85dad0318c7980bfd5e4c41ccfa7afc83d1

Git commit 3bcc59120a776b1ad9698aab7603f8b8cec5fbc6 by Wim Taymans on 03/03/2021 at 15:55..
alsa: fix timeout adjustment

Only adjust the timeout when the quantum increases so that we end u
with exactly the number of samples of the new quantum.

Suppose we are handling a quantum of 1024, we wake up with 1024
samples in the device, we now notice a quantum of 8192 and will pull
in the 8192 samples, we then have 1024 + 8192 samples in the buffer.
Schedule a timeout for 1024 samples so that we end up in the timout
with 8192 samples in the device.
https://invent.kde.org/neon/backports-focal/pipewire/commit/3bcc59120a776b1ad9698aab7603f8b8cec5fbc6

Git commit a36af57899ef940082ce56131004072d4445fa11 by Wim Taymans on 03/03/2021 at 16:01..
alsa: reschedule the timeout based on new quantum

Always reschedule the timeout based on the new quantum. If the
quantum descreased we want to wait some more until the buffer only
has the new quantum of samples left.
https://invent.kde.org/neon/backports-focal/pipewire/commit/a36af57899ef940082ce56131004072d4445fa11

Git commit e210c5f21cd74fb6dbaf8bcd2319ee84f6bed34f by Wim Taymans on 03/03/2021 at 16:15..
alsa: include headroom in silence buffers
https://invent.kde.org/neon/backports-focal/pipewire/commit/e210c5f21cd74fb6dbaf8bcd2319ee84f6bed34f

Git commit 67b431cfca53e040277b3901c26eb6c7c5ec838e by Wim Taymans on 03/03/2021 at 18:56..
rtkit: boost default rt.prio to 88

See #685
https://invent.kde.org/neon/backports-focal/pipewire/commit/67b431cfca53e040277b3901c26eb6c7c5ec838e

Git commit 9168ec433595c93f3f0cfd714478db731b5fcba6 by Wim Taymans (on behalf of George Kiagiadakis) on 03/03/2021 at 18:57..
backend-hsphfpd: fix compilation
https://invent.kde.org/neon/backports-focal/pipewire/commit/9168ec433595c93f3f0cfd714478db731b5fcba6

Git commit 1b370f2cad6105c5162ffb22c1a1e97027d1f781 by Wim Taymans (on behalf of George Kiagiadakis) on 03/03/2021 at 18:57..
ci: enable building most optional features, so that they are tested
https://invent.kde.org/neon/backports-focal/pipewire/commit/1b370f2cad6105c5162ffb22c1a1e97027d1f781

Git commit 29be757598063c49b21abb64a9aab6c8ccb887fd by Wim Taymans (on behalf of Jonas Holmberg) on 03/03/2021 at 19:00..
pipewire-alsa: fix drain for capture

Since pw_stream doesn't call the drained callback after flush for
capture it has to be called explicitly from process.
https://invent.kde.org/neon/backports-focal/pipewire/commit/29be757598063c49b21abb64a9aab6c8ccb887fd

Git commit c135f9c7eee6b0d79565c1f16d7cfce5fc013aa3 by Wim Taymans on 04/03/2021 at 09:13..
alsa: always set read_size
https://invent.kde.org/neon/backports-focal/pipewire/commit/c135f9c7eee6b0d79565c1f16d7cfce5fc013aa3

Git commit e15104c5cb72cc87b5f301172d8795840f7da66a by Wim Taymans on 04/03/2021 at 09:20..
alsa: make resync less aggressive
https://invent.kde.org/neon/backports-focal/pipewire/commit/e15104c5cb72cc87b5f301172d8795840f7da66a

Git commit 3af768f12422c973f76f324578f29cbce259de83 by Wim Taymans on 04/03/2021 at 09:27..
resample: take into account the number of queued input samples

Take the queued input samples into account when calculating the
required input size. This can be 0 when there is still enough
data queued in the input for another period.

Handle 0 read_size in alsa-source and make it push out a 0 buffer,
this will then drain the resampler and make it ask for a new buffer
size. This makes the transition from one period to another more
seamless for the resampler.

Fixes #805
https://invent.kde.org/neon/backports-focal/pipewire/commit/3af768f12422c973f76f324578f29cbce259de83

Git commit a4b0b9afe5a782a7f4a8fe153ecf51bcb0180ae3 by Wim Taymans on 04/03/2021 at 09:57..
build: check for getrandom and sys/random.h

Fixes #833
https://invent.kde.org/neon/backports-focal/pipewire/commit/a4b0b9afe5a782a7f4a8fe153ecf51bcb0180ae3

Git commit 28b28ef92c83810b16651687bf715d2bd896ce48 by Wim Taymans on 04/03/2021 at 09:58..
pipewire: align the spa_handle to 8 bytes

See #835
https://invent.kde.org/neon/backports-focal/pipewire/commit/28b28ef92c83810b16651687bf715d2bd896ce48

Git commit 184bdbeb4c973e3cc9753add5a61faba816f2722 by Wim Taymans on 04/03/2021 at 10:56..
alsa-plugin: Implement query_chmaps again

Return a list of our supported channel positions.

Fixes #825
https://invent.kde.org/neon/backports-focal/pipewire/commit/184bdbeb4c973e3cc9753add5a61faba816f2722

Git commit 1642e5220f99b22884ee1ad2a47e958b8b199b93 by Wim Taymans on 04/03/2021 at 11:45..
media-session: sanitize device names as well

See #827
https://invent.kde.org/neon/backports-focal/pipewire/commit/1642e5220f99b22884ee1ad2a47e958b8b199b93

Git commit 68f6c75caed047af32320ab4de0c06457457be54 by Wim Taymans on 04/03/2021 at 15:21..
0.3.23
https://invent.kde.org/neon/backports-focal/pipewire/commit/68f6c75caed047af32320ab4de0c06457457be54

Git commit d98d947e5466de47c7bb97ed26b8bc70408f4534 by Wim Taymans on 04/03/2021 at 17:02..
jack: handle "default" server name
https://invent.kde.org/neon/backports-focal/pipewire/commit/d98d947e5466de47c7bb97ed26b8bc70408f4534

Git commit 0ad603375fbbcb527455ba61c60ea8e3c43ecc1b by Wim Taymans on 04/03/2021 at 17:06..
jack: keep midi ports on the midi-bridge client

Separating them causes problems because there is no actual
client for the resulting ports then.
https://invent.kde.org/neon/backports-focal/pipewire/commit/0ad603375fbbcb527455ba61c60ea8e3c43ecc1b

Git commit 49846d755026bf0ca41ee4350fab6f023e2075e0 by Wim Taymans on 04/03/2021 at 19:16..
alsa-seq: only mark hardware ports as terminal/physical

Use the caps of the port to set the right flags on the new port.
We only want to put the terminal/physical flags on ports that look
like hardware ports. Port created by clients should not have this
flag.
https://invent.kde.org/neon/backports-focal/pipewire/commit/49846d755026bf0ca41ee4350fab6f023e2075e0

Git commit 3c01cfe8f8ecf1c10db4e0456bacc5a8f19977a9 by Wim Taymans (on behalf of Barnabás Pőcze) on 04/03/2021 at 19:18..
protocol-native: connection: fix errno check condition

The branch should be taken if errno is neither EAGAIN,
nor EWOULDBLOCK.

Previously,

  if (errno != EAGAIN || errno != EWOULDBLOCK)

would be taken for all values of errno if EAGAIN != EWOULDBLOCK.
(Except for the ones that are filtered out before.)

Fix that by changing `||` to `&&`.
https://invent.kde.org/neon/backports-focal/pipewire/commit/3c01cfe8f8ecf1c10db4e0456bacc5a8f19977a9

Git commit e89e87ba9434cfa052ee19c502f40dec31a6bc4d by Wim Taymans on 04/03/2021 at 19:40..
alsa-seq: generate the same name as a2jmidid

It is more descriptive and more compatible.
If we change Midi-Bridge to a2j, some apps will parse our port names
in a special way, even (catia).
https://invent.kde.org/neon/backports-focal/pipewire/commit/e89e87ba9434cfa052ee19c502f40dec31a6bc4d

Git commit 93002ecd1155c1473d766e3106b18d32fb71ebc1 by Wim Taymans on 05/03/2021 at 08:23..
media-session: remove unused prefix from load/save state

The prefix was used to filter the properties when loading and
saving but since the conversion to the core provided functions, this
feature is not longer available.

It's not exactly a problem, we could implement the filtering ourselves
afterwards but there is little point because we just ignore the unknown
items and never write invalid items.
https://invent.kde.org/neon/backports-focal/pipewire/commit/93002ecd1155c1473d766e3106b18d32fb71ebc1

Git commit b40397d9866c96bf3cf29472d88ebed5e3237580 by Wim Taymans on 05/03/2021 at 09:34..
media-session: check metadata before using it

The session manager might be configured without metadata support
so check this before attempting to use the metadata. It's not
really a problem because the default sink/source can only be
changed with the pulseaudio API, which activates metadata.
https://invent.kde.org/neon/backports-focal/pipewire/commit/b40397d9866c96bf3cf29472d88ebed5e3237580

Git commit 8d5cc7013db15113a34b50e84221a35e4b90d241 by Wim Taymans on 05/03/2021 at 11:40..
conf: write valid JSON by putting , between keys

Separate keys with , to make a valid json file
https://invent.kde.org/neon/backports-focal/pipewire/commit/8d5cc7013db15113a34b50e84221a35e4b90d241

Git commit c8fd34a41dfa00900a9fec5f2470a59ef4bb1852 by Wim Taymans on 05/03/2021 at 16:37..
metadata: store default-nodes as JSON

Don't just store the id in the metadata but a JSON object with
the node name. This makes it possible to easily introspect the
metadata and also extend the metadata with more fields later.

Instead of matching the metadata id to the global ids we now
have to match it against the name.
https://invent.kde.org/neon/backports-focal/pipewire/commit/c8fd34a41dfa00900a9fec5f2470a59ef4bb1852

Git commit d48155ec51ff464cae29b930941152410a2d4006 by Sjoerd Simons on 05/03/2021 at 19:02..
New upstream version 0.3.23
https://invent.kde.org/neon/backports-focal/pipewire/commit/d48155ec51ff464cae29b930941152410a2d4006

Git commit 951951465c1b651ad4180268e1bbf7481ff6f999 by Sjoerd Simons on 05/03/2021 at 19:02..
Update upstream source from tag 'upstream/0.3.23'

Update to upstream version '0.3.23'
with Debian dir ba9a2ddcde626f3637228378fbef431458e859b2
https://invent.kde.org/neon/backports-focal/pipewire/commit/951951465c1b651ad4180268e1bbf7481ff6f999

Git commit 19cc074b83434d42fd4bf53675f66f44f10d5116 by Sjoerd Simons on 05/03/2021 at 19:02..
New upstream release
https://invent.kde.org/neon/backports-focal/pipewire/commit/19cc074b83434d42fd4bf53675f66f44f10d5116

Git commit 1c365f61690b74e6ae37a1da26a430907f0ac11e by Wim Taymans on 05/03/2021 at 19:16..
policy-node: fix compiler warning
https://invent.kde.org/neon/backports-focal/pipewire/commit/1c365f61690b74e6ae37a1da26a430907f0ac11e

Git commit 662fd8a1f9d769c5a407b6dbe054bdcc53caa481 by Wim Taymans on 05/03/2021 at 19:16..
pulse-server: avoid crashing when clearing metadata

The key will be NULL so we can't strdup it.

Fixes #845
https://invent.kde.org/neon/backports-focal/pipewire/commit/662fd8a1f9d769c5a407b6dbe054bdcc53caa481

Git commit ad334ff8483d809c749190504672d2941817273e by Sjoerd Simons on 05/03/2021 at 20:43..
Target experimental

* Update symbols file
* debian/pipewire.install
  - Install new pipewire-media-session.service
* d/d/p/bluez5-volumes-need-to-be-distributed-to-all-channels.patch
  d/p/bluez5-set-the-right-volumes-on-the-node.patch
  d/p/policy-node-don-t-crash-without-metadata.patch
    - Dropped; All included in upstream release
* Refreshed patches

Signed-off-by: Sjoerd Simons <sjoerd at collabora.com>
https://invent.kde.org/neon/backports-focal/pipewire/commit/ad334ff8483d809c749190504672d2941817273e

Git commit e42261c6d25978ef9a8915c3662c45fdbdc68852 by Pauli Virtanen on 06/03/2021 at 13:19..
bluez5: remove per-device codec filtering

This does not work as intended, because we no longer do a codec switch
on device connect.  It should be done in a different way, but since it's
not used for anything right now, can as well remove it.
https://invent.kde.org/neon/backports-focal/pipewire/commit/e42261c6d25978ef9a8915c3662c45fdbdc68852

Git commit dbebbe2f3327d019b82d9f3b5770755d7d9b3a43 by Wim Taymans on 06/03/2021 at 18:58..
pulse-server: support NULL set-default-sink/source

It is allowed to set a NULL value for the default source/sink, which
then simply clears any configured value.
https://invent.kde.org/neon/backports-focal/pipewire/commit/dbebbe2f3327d019b82d9f3b5770755d7d9b3a43

Git commit d9b80fda37a9af0e7166ad39af91569d002307a6 by Wim Taymans on 06/03/2021 at 19:06..
pulse-server: set our default sink/source immediately

In COMMAND_SET_DEFAULT_SINK/SOURCE, set our default source and sink
immediately instead of waiting for the metadata update. This makes
it possible to check for the new default sink immediately in other
modules.
https://invent.kde.org/neon/backports-focal/pipewire/commit/d9b80fda37a9af0e7166ad39af91569d002307a6

Git commit 5712992fc9de3680d8475a019653828fc1cefda1 by Wim Taymans on 06/03/2021 at 19:08..
stream-restore: Don't save the default sink/source as a target

If the default sink or source is set as the target, just don't save
the new target so that it follows the new default.

This is a workaround for gnome-control-center first setting the
default source/sink and then setting the targets on all
stream-restore database entries to the new default. Setting an
explicit target will pin the stream to that sink/source forever,
which is then making pavucontrol default source/sink toggle
fail.

See #676
https://invent.kde.org/neon/backports-focal/pipewire/commit/5712992fc9de3680d8475a019653828fc1cefda1

Git commit 4d21b5f8bdc5c6d4813f0b006e16661656f373a4 by Wim Taymans (on behalf of fdev31) on 06/03/2021 at 20:22..
Simple upmix of stereo inputs up to 7.1 output
https://invent.kde.org/neon/backports-focal/pipewire/commit/4d21b5f8bdc5c6d4813f0b006e16661656f373a4

Git commit c7309f0248b65d593a84cec0e10d97455d1f9ac8 by Wim Taymans on 06/03/2021 at 20:29..
channelmix: small cleanups

Fix indent
Rename DUAL/QUAD to REAR and SIDE and use it for checking availability
of stereo pairs.
https://invent.kde.org/neon/backports-focal/pipewire/commit/c7309f0248b65d593a84cec0e10d97455d1f9ac8

Git commit 6324298bc5a716bb301918cfef7f31045e211883 by Wim Taymans on 06/03/2021 at 20:31..
channelmix: add more generic upmixing

Add options to enable lfe filtering and upmix.
Enable upmix by default, lfe is disabled because we don't actually
do a lowpass filter yet.
https://invent.kde.org/neon/backports-focal/pipewire/commit/6324298bc5a716bb301918cfef7f31045e211883

Git commit a99f3a90ef9244e1ff4535882fdd3ed326f51876 by Pauli Virtanen on 06/03/2021 at 23:37..
bluez5: correct EnumRoute availability

Mark bluez5 routes always available in EnumRoute, because there's always
a device connected.

Fixes default-route resetting profiles back, when they are manually
changed.
https://invent.kde.org/neon/backports-focal/pipewire/commit/a99f3a90ef9244e1ff4535882fdd3ed326f51876

Git commit 2aa261659da9fa9e81f9c609225e1b04772470a4 by Wim Taymans on 07/03/2021 at 07:18..
pulse-server: handle NULL default_sink/source

Don't crash when default_sink/source is NULL

See #676
https://invent.kde.org/neon/backports-focal/pipewire/commit/2aa261659da9fa9e81f9c609225e1b04772470a4

Git commit ffab69f651e8a37cbcc2ae1fe7b0dc0e1a36ea8d by Wim Taymans on 07/03/2021 at 08:44..
jack: move some debug to info

Use info to lay out the general app flow
https://invent.kde.org/neon/backports-focal/pipewire/commit/ffab69f651e8a37cbcc2ae1fe7b0dc0e1a36ea8d

Git commit 6c8c58ab4ee8323414a6d215c0790771a79b09b5 by Wim Taymans on 07/03/2021 at 08:44..
jack: also match system ports in get_ports

Fixes #850
https://invent.kde.org/neon/backports-focal/pipewire/commit/6c8c58ab4ee8323414a6d215c0790771a79b09b5

Git commit 3e2d897f97c23e7dc3b548df4fd746db2730d2f4 by Wim Taymans on 07/03/2021 at 09:46..
jack: improve debug
https://invent.kde.org/neon/backports-focal/pipewire/commit/3e2d897f97c23e7dc3b548df4fd746db2730d2f4

Git commit 59f86df9f3a6fe25c2b1d5e72f76bdf302a21f27 by Wim Taymans on 08/03/2021 at 10:52..
media-session: move profile switch to default-profile

Move the profile switching from default-route to the default-profile
module. This makes more sense and it also allows us to restore the
saved profile when it becomes available.

Make default-profile always check if the saved profile can be restored
before attempting to switch to the best profile.

Default-route now just monitors profile changes and restores the
routes associated with it.

See #466
https://invent.kde.org/neon/backports-focal/pipewire/commit/59f86df9f3a6fe25c2b1d5e72f76bdf302a21f27

Git commit d603c1086ac135648d9807e8807c07e437e52fab by Wim Taymans on 08/03/2021 at 12:20..
media-session: (re)schedule rescan after new pending operation

Every time a new operation is started, schedule a rescan. This
ensures that there are no more pending actions before the policy
module scans the nodes.

This has the effect that all devices and nodes are up to data and
ready to be used by policy-node.

Fixes #789
https://invent.kde.org/neon/backports-focal/pipewire/commit/d603c1086ac135648d9807e8807c07e437e52fab

Git commit 1b6060ef5f10de09da23481e36f1ea4b131a257b by Wim Taymans on 08/03/2021 at 14:14..
media-session: schedule more rescan for pending changes

Trigger/delay a rescan until the profiles, routes and stream
volume are restored.

See #789
https://invent.kde.org/neon/backports-focal/pipewire/commit/1b6060ef5f10de09da23481e36f1ea4b131a257b

Git commit ffeb2e0f0e511e36aede1706adae210428b411db by Wim Taymans on 08/03/2021 at 14:36..
alsa: fill with right amount of silence when starting

When we start or after an xrun, we need fill the buffer with one
period + headroom of samples, not period*2. This is because after
start we set our timeout immediately and expect there to be
period + headroom samples in the buffer.

With period*2 we take one period longer to start and we also feed
one period of error in the dll, which causes it to wobble for no
good reason.
https://invent.kde.org/neon/backports-focal/pipewire/commit/ffeb2e0f0e511e36aede1706adae210428b411db

Git commit 2c1f8af2e687e7924c8a1a36125519b4211ee949 by Wim Taymans on 08/03/2021 at 15:29..
alsa: correct dll error after quantum change

When the quantum is changed, the error between the current and
expected buffer levels needs to be corrected with the quantum
difference.

For example, say we are running with a 1024 quantum and the quantum
is changed to 8192, when we wake up the filled level might be
1016 vs expected 8192, 1024 - 8192 = -7168. The real error for the
timeout was 1016 - 8192 - (-7168) = -8.
https://invent.kde.org/neon/backports-focal/pipewire/commit/2c1f8af2e687e7924c8a1a36125519b4211ee949

Git commit 99b2973c31b731e9cc89caf800dc7acef8db06a0 by Wim Taymans on 08/03/2021 at 15:55..
resample: disable when not used.
https://invent.kde.org/neon/backports-focal/pipewire/commit/99b2973c31b731e9cc89caf800dc7acef8db06a0

Git commit cab5cf3ccb41e8c5fbc646b22e4004dc9237b52f by Wim Taymans on 08/03/2021 at 16:12..
alsa: add resampler delay in clock delay reporting
https://invent.kde.org/neon/backports-focal/pipewire/commit/cab5cf3ccb41e8c5fbc646b22e4004dc9237b52f

Git commit 6fd870a5f0f8b6675df92af7bfcff95805357ead by Wim Taymans on 08/03/2021 at 16:40..
alsa: pass the right direction to ucm_set_port()

The function requires true for playback ports and false otherwise.

See #867
https://invent.kde.org/neon/backports-focal/pipewire/commit/6fd870a5f0f8b6675df92af7bfcff95805357ead

Git commit 511bafb4361ee6225b69e59823e982140d595f63 by Pauli Virtanen on 08/03/2021 at 21:42..
bluez5: release transports on profile change

SCO transports have timer-delayed release, but they need to be released
immediately when changing profiles to close connections before switching
to A2DP.
https://invent.kde.org/neon/backports-focal/pipewire/commit/511bafb4361ee6225b69e59823e982140d595f63

Git commit e095105e5766552d2e23dca17c95984a19464e65 by Wim Taymans on 09/03/2021 at 07:52..
resample: fix passthrough check

Only in passthrough we need to just copy input to output. Otherwise
we need to ask the resampler for the conversion size.
https://invent.kde.org/neon/backports-focal/pipewire/commit/e095105e5766552d2e23dca17c95984a19464e65

Git commit 808b54bc197120e0a1cf705b746448e31e37a178 by Wim Taymans (on behalf of Pauli Virtanen) on 09/03/2021 at 08:03..
bluez5: sco-io: fallback packet size when read size unknown should be even

Reported write MTU is odd for some adapters, which will misalign CVSD
frames, so round fallback value to even.
https://invent.kde.org/neon/backports-focal/pipewire/commit/808b54bc197120e0a1cf705b746448e31e37a178

Git commit d29bdf64ee14a8326940418c8878e19541cd0b1c by Wim Taymans on 09/03/2021 at 08:55..
pulse-server: reply async to some requests

Trigger a roundtrip before we send the reply to the client for many
methods like set_volume/set_mute etc.

this ensure that we get the updated information from the server before
we reply so that a subsequent query returns the up-to-data information.

Fixes #868
https://invent.kde.org/neon/backports-focal/pipewire/commit/d29bdf64ee14a8326940418c8878e19541cd0b1c

Git commit 82c452a93d2114c861490db449e20d89c3028e3a by Wim Taymans on 09/03/2021 at 11:08..
pulse-server: expose sync method
https://invent.kde.org/neon/backports-focal/pipewire/commit/82c452a93d2114c861490db449e20d89c3028e3a

Git commit c237ccfbda1d9707ba0c74d62ae5b74e78b7425e by Wim Taymans on 09/03/2021 at 11:09..
pulse-server: use the manager sync method for async replies

Use the manager sync method to wait until all pending queries are
finished. It is the manager that will query the new parameters so
we need to wait until that completes.

See #868
https://invent.kde.org/neon/backports-focal/pipewire/commit/c237ccfbda1d9707ba0c74d62ae5b74e78b7425e

Git commit c0ab4b1b8d99a6465d1f3025ef9bb3056b59ece2 by Wim Taymans on 09/03/2021 at 11:25..
bluez5: fix compiler warning
https://invent.kde.org/neon/backports-focal/pipewire/commit/c0ab4b1b8d99a6465d1f3025ef9bb3056b59ece2

Git commit fc044a37afac6c5f52df8a911217fecfdaa6ec4b by Wim Taymans on 09/03/2021 at 11:47..
resample: don't copy too much

When we are in passthrough mode, copy only the min of input and
output size or else we might overread/overwrite.

See #875
https://invent.kde.org/neon/backports-focal/pipewire/commit/fc044a37afac6c5f52df8a911217fecfdaa6ec4b

Git commit dd0342167f4c06846fa929c5efd07f98448b446c by Wim Taymans on 09/03/2021 at 11:48..
policy-node: move variable up in scope

We are using it outside of the scope it is defined in.
https://invent.kde.org/neon/backports-focal/pipewire/commit/dd0342167f4c06846fa929c5efd07f98448b446c

Git commit aa0e0043d383d6d38a1d0841680b70551176a809 by Wim Taymans on 09/03/2021 at 12:21..
alsa: only recompute threshold when quantum changes
https://invent.kde.org/neon/backports-focal/pipewire/commit/aa0e0043d383d6d38a1d0841680b70551176a809

Git commit 63a34f4f844388bb64a490ba206e1944047a28c8 by Wim Taymans on 09/03/2021 at 14:46..
alsa: after XRun, fill with previous threshold

It is possible that the quantum has changed before the xrun and
then we will assume the previous quantum was in the device.
https://invent.kde.org/neon/backports-focal/pipewire/commit/63a34f4f844388bb64a490ba206e1944047a28c8

Git commit 0881d5b881b9f955498b18561aa6e50e234a6d8f by Wim Taymans on 09/03/2021 at 14:48..
context: restart graph recalculation when something changed

When we were busy with the graph recalculation and something changed,
restart the graph state change to get the new change applied.

For example, when we start a node and it has a max-quantum set, we
need to restart our calculation with the new quantum limits.
https://invent.kde.org/neon/backports-focal/pipewire/commit/0881d5b881b9f955498b18561aa6e50e234a6d8f

Git commit 4f816c1fb04e08c25c651ff11190d104ccc588bd by Wim Taymans on 10/03/2021 at 12:01..
loop: never try to block in the thread

When we are calling invoke from the thread, the call will be completed
in the thread and there is no need to block for completion.
https://invent.kde.org/neon/backports-focal/pipewire/commit/4f816c1fb04e08c25c651ff11190d104ccc588bd

Git commit cc26ef961426ec579f8de6b336db942528fd4280 by Wim Taymans on 10/03/2021 at 12:03..
impl-node: update the io position from the data-loop

So that the update is synchronized with the data processing and
we don't accidentally process an old driver activation.
https://invent.kde.org/neon/backports-focal/pipewire/commit/cc26ef961426ec579f8de6b336db942528fd4280

Git commit 62def0399f68abb2a302b506cbed42a185de8a5e by Wim Taymans on 10/03/2021 at 12:06..
impl-node: rework link activation

Only activate the links when the node is added to a driver. Otherwise
the driver will expect us to decrement the activation counters for the
links but that won't happen because the node will not be processed
yet.

Instead we activate the links that were not activated yet when the
node is activated.

This improves scheduling for newly added links and nodes.
https://invent.kde.org/neon/backports-focal/pipewire/commit/62def0399f68abb2a302b506cbed42a185de8a5e

Git commit 78e9e5958efce02dad98a67ed93ab2ab1e531999 by Wim Taymans on 10/03/2021 at 12:28..
impl-node: delay starting the driver node

Only start the driver node after we have added ourselves to the
driver node or else we might start too soon, before there is anything
to schedule and we cause driver underruns.
https://invent.kde.org/neon/backports-focal/pipewire/commit/78e9e5958efce02dad98a67ed93ab2ab1e531999

Git commit ef4b3c403e735c966ac8facf9753d04a55765880 by Wim Taymans on 10/03/2021 at 14:27..
media-session: -1 as node.target is default

A node.target property of -1 also means to follow the default
sink/source. The ALSA plugin might use this to select the
target node and would otherwise not move to the new default sink.
https://invent.kde.org/neon/backports-focal/pipewire/commit/ef4b3c403e735c966ac8facf9753d04a55765880

Git commit d5fc67cf066208bdec2ceb7253d3429c6c6b71ba by Wim Taymans on 10/03/2021 at 15:55..
pulse-server: Prefer the formats of the extended format API

Fix enumerate the formats from the extended API and then append
the old API formats.

See #876
https://invent.kde.org/neon/backports-focal/pipewire/commit/d5fc67cf066208bdec2ceb7253d3429c6c6b71ba

Git commit e334c5862ea11106d014de974e25909f8181e550 by Wim Taymans on 10/03/2021 at 16:27..
pulse-server: fill in the format info
https://invent.kde.org/neon/backports-focal/pipewire/commit/e334c5862ea11106d014de974e25909f8181e550

Git commit 2931522d2c6ead2bee3e06bbdd468192b5daf07a by FeRD (Frank Dana) on 10/03/2021 at 16:41..
pw-cli: Make 'dump' type arg case-insensitive
https://invent.kde.org/neon/backports-focal/pipewire/commit/2931522d2c6ead2bee3e06bbdd468192b5daf07a

Git commit 98bedb3895d03f246b344500cb8593c14605934b by Pauli Virtanen on 10/03/2021 at 19:32..
bluez5: don't set a2dp codec for source device initial profiles

Source devices don't have the a2dp codec profiles, so don't set a codec
profile as the initial one.
https://invent.kde.org/neon/backports-focal/pipewire/commit/98bedb3895d03f246b344500cb8593c14605934b

Git commit 485bae5eb00c0f5d3d91bd8bf1b302896571f4ed by Wim Taymans (on behalf of Thibault Saunier) on 10/03/2021 at 20:18..
meson: Use `feature` options everywhere it makes sense
https://invent.kde.org/neon/backports-focal/pipewire/commit/485bae5eb00c0f5d3d91bd8bf1b302896571f4ed

Git commit d295d9716066e07cf9e92d4c996f6928f396a944 by Wim Taymans on 11/03/2021 at 08:32..
media-session: only restore best profile when something changed

Keep track of the best profile. Only try to switch away from the
saved profile when something changed and the saved profile is not
available.

This makes it possible to select an unavailable profile but when
something is changed, it will switch away from it.
https://invent.kde.org/neon/backports-focal/pipewire/commit/d295d9716066e07cf9e92d4c996f6928f396a944

Git commit 38d36f1921d2433c71a0fe1bca596f9260f36bf7 by Wim Taymans on 11/03/2021 at 09:22..
media-session: improve saved profile restore

We only want to restore the saved profile when it is available, when
it is not available and there was no change in best profile, leave
the profile as it is.
https://invent.kde.org/neon/backports-focal/pipewire/commit/38d36f1921d2433c71a0fe1bca596f9260f36bf7

Git commit d63f4234ae9406102a1a58a78e921376062bb673 by Wim Taymans on 11/03/2021 at 10:26..
channelmix: remap volumes

The volumes set with the properties need to be reordered to match
the volumes of our internal layout.
https://invent.kde.org/neon/backports-focal/pipewire/commit/d63f4234ae9406102a1a58a78e921376062bb673

Git commit bdea557fb1550ac2fb4962fd8d08f33c9d136314 by Wim Taymans on 11/03/2021 at 14:18..
module-portal: improve error message

Pass some error messages and errno around to give a better error
message (instead of ENOMEM) when the connection with dbus fails.
https://invent.kde.org/neon/backports-focal/pipewire/commit/bdea557fb1550ac2fb4962fd8d08f33c9d136314

Git commit fdcbe6794110357a8d2fa3c997fcc7515c91f0da by Wim Taymans on 11/03/2021 at 14:23..
context: add info log about parsed config sections

So that we can see what's being parsed or not.
https://invent.kde.org/neon/backports-focal/pipewire/commit/fdcbe6794110357a8d2fa3c997fcc7515c91f0da

Git commit a5922a9c0a69ec1c492bc25ec52b64cb5bf4ae4b by Wim Taymans on 11/03/2021 at 14:39..
pulse-server: use async reply for set_default_sink/source

Because we set the default sink/source before calling the metadata,
we don't send out updates about the new sink and this confuses
pavucontrol.

Instead, use the new async reply to reply once the new metadata has
been configured and the defaults have been updated.
https://invent.kde.org/neon/backports-focal/pipewire/commit/a5922a9c0a69ec1c492bc25ec52b64cb5bf4ae4b

Git commit b4cf78b5a6467120a2d6ad5a8917559d9c75401f by Wim Taymans on 11/03/2021 at 17:34..
alsa-pcm: improve debug
https://invent.kde.org/neon/backports-focal/pipewire/commit/b4cf78b5a6467120a2d6ad5a8917559d9c75401f

Git commit 9cd9339c2a34d15090129468fe943b53442ed8e1 by Wim Taymans on 11/03/2021 at 17:37..
alsa-pcm: only disable IRQ when not batch

For batch devices we want to keep the IRQ so that the pointers are
updated with the period-size. Brings my UMC404HD to 4.8ms roundtrip
times with IRQ at 6 sample and batch enabled.
https://invent.kde.org/neon/backports-focal/pipewire/commit/9cd9339c2a34d15090129468fe943b53442ed8e1

Git commit 22f6e8e36dc10c34e99738fb04bbfedc87b3d9ee by Wim Taymans (on behalf of Thibault Saunier) on 11/03/2021 at 18:29..
meson: Fixed remaining issues from the port to `feature` options
https://invent.kde.org/neon/backports-focal/pipewire/commit/22f6e8e36dc10c34e99738fb04bbfedc87b3d9ee

Git commit f41de50b28a71209eb811f6167f7f6fc517ffbc3 by Wim Taymans on 12/03/2021 at 08:23..
json: escape and unescape invalid unicode chars
https://invent.kde.org/neon/backports-focal/pipewire/commit/f41de50b28a71209eb811f6167f7f6fc517ffbc3

Git commit 6562a2ab790b25441e32bde23d06f0ac3dce6957 by Wim Taymans on 12/03/2021 at 09:36..
channelmix: clean up param handling

Use defines to access the different params.
Fix the name of the function to emit properties.
https://invent.kde.org/neon/backports-focal/pipewire/commit/6562a2ab790b25441e32bde23d06f0ac3dce6957

Git commit 86cf4ad5a54ea82356889a8bc7c6694e4015c71d by Wim Taymans on 12/03/2021 at 10:10..
audioconvert: keep better track of changed params

Keep all the children param flags around and use those to decide
if something changed. Also don't change the param flag serial when
we are simply adding a listener.

This should reduce the number of param updates, most notably the
PropInfo that was updated along with the Props on volume changes.
https://invent.kde.org/neon/backports-focal/pipewire/commit/86cf4ad5a54ea82356889a8bc7c6694e4015c71d

Git commit 90b0410280da65f5b8f879da7f204735b6d27cb1 by Wim Taymans on 12/03/2021 at 11:39..
conf: improve config files

Make arrays from config sections that should really be an array.
Having the module name as the object key technically makes it
impossible to load the same module twice because the key can only
be once in the object.

The same applies to the context.objects and context.exec sections.

This also makes it somewhat easier to parse the config..
https://invent.kde.org/neon/backports-focal/pipewire/commit/90b0410280da65f5b8f879da7f204735b6d27cb1

Git commit 196fe8b51bc19b0770fd1a7b7d4c25708c2ec64f by Wim Taymans on 12/03/2021 at 14:58..
jack: use configured node.latency when inactive

In the inactive state, use the configured latency values for the
node instead of the current values used in the graph. We need to
do this because the graph only changes the buffer-size to our
requirements when the node becomes active.

Some clients do get_buffer_size before activating and would then
get a different value from when they would activate, causing some
apps to be confused and stop.

See #886
https://invent.kde.org/neon/backports-focal/pipewire/commit/196fe8b51bc19b0770fd1a7b7d4c25708c2ec64f

Git commit 0078b3b73ef4de313572aeaaa991405ea2d60b87 by Wim Taymans (on behalf of Dmitry Sharshakov) on 12/03/2021 at 15:45..
backend-native: get battery status via HFP
https://invent.kde.org/neon/backports-focal/pipewire/commit/0078b3b73ef4de313572aeaaa991405ea2d60b87

Git commit a1ed8aec6845304b0e6a5a2863fbbebddd9539d5 by Wim Taymans (on behalf of Dmitry Sharshakov) on 12/03/2021 at 15:45..
chore: bluez5: move spa_bt_monitor to common header file
https://invent.kde.org/neon/backports-focal/pipewire/commit/a1ed8aec6845304b0e6a5a2863fbbebddd9539d5

Git commit 2683c1ef5eadcfd68bbf0809da02d15d05858375 by Wim Taymans (on behalf of Dmitry Sharshakov) on 12/03/2021 at 15:45..
backend-native: report battery status to BlueZ
https://invent.kde.org/neon/backports-focal/pipewire/commit/2683c1ef5eadcfd68bbf0809da02d15d05858375

Git commit 48cc5915fb80d976535278cf2bb5efc3e994bc11 by Wim Taymans (on behalf of Dmitry Sharshakov) on 12/03/2021 at 15:45..
chore: backend-native: remove unused define
https://invent.kde.org/neon/backports-focal/pipewire/commit/48cc5915fb80d976535278cf2bb5efc3e994bc11

Git commit 5c9028a94dc4b8aaf9f4e6bb393de0e1a7ecc7c1 by Wim Taymans (on behalf of Dmitry Sharshakov) on 12/03/2021 at 15:45..
bluez5-dbus: move battery provider functions, fix ghost batteries
https://invent.kde.org/neon/backports-focal/pipewire/commit/5c9028a94dc4b8aaf9f4e6bb393de0e1a7ecc7c1

Git commit a0ac3ac8dd81c9768928b516c45349e00dc93408 by Wim Taymans (on behalf of Dmitry Sharshakov) on 12/03/2021 at 15:45..
fix: cancel and free battery register pending call
https://invent.kde.org/neon/backports-focal/pipewire/commit/a0ac3ac8dd81c9768928b516c45349e00dc93408

Git commit e2ac16ccbd4a563628202ce38c290a1452f7d465 by Wim Taymans (on behalf of Dmitry Sharshakov) on 12/03/2021 at 15:45..
fix: remove v-battery when device disconnects
https://invent.kde.org/neon/backports-focal/pipewire/commit/e2ac16ccbd4a563628202ce38c290a1452f7d465

Git commit d6be84ddd0901e5cade1a6c59970643314a2b9fa by Huang-Huang Bao on 13/03/2021 at 11:06..
bluez5: close sco socket if bluetooth daemon disappeared

Fixes pipewire/pipewire#853
https://invent.kde.org/neon/backports-focal/pipewire/commit/d6be84ddd0901e5cade1a6c59970643314a2b9fa

Git commit 801bd982330baf51d26728c211aa6903ce46ff03 by Wim Taymans on 13/03/2021 at 11:54..
audioconvert: use preallocated empty buffer to drain

Avoid calling memset on a large piece of memory when draining
the resampler because it might use up all the allocated time in
our realtime thread. Instead use a prealloced empty buffer.
https://invent.kde.org/neon/backports-focal/pipewire/commit/801bd982330baf51d26728c211aa6903ce46ff03

Git commit a9bf93030e8c427a3479ccf79265f85953cf5586 by Wim Taymans on 13/03/2021 at 12:53..
resample: limit input size to max size of empty space

When flushing use the max size of the empty space, not the
max size of the input buffers, which might be larger.
https://invent.kde.org/neon/backports-focal/pipewire/commit/a9bf93030e8c427a3479ccf79265f85953cf5586

Git commit 2ae68516989ad9259a764a4720e1499009d99736 by Wim Taymans (on behalf of Albert Chang) on 13/03/2021 at 14:47..
pulse-server: create pid file on start up

Some PulseAudio clients, such as QEMU, check that the pid file exists
prior to initialization.
https://invent.kde.org/neon/backports-focal/pipewire/commit/2ae68516989ad9259a764a4720e1499009d99736

Git commit 9cdf3d1a0b50f8ad9e2d5c3b6cac00a099530954 by Wim Taymans (on behalf of Jan Alexander Steffens (heftig)) on 13/03/2021 at 14:49..
meson.build: Check strndupa using has_header_symbol

It's a macro here, which has_function misses, at least from meson
0.57.1.
https://invent.kde.org/neon/backports-focal/pipewire/commit/9cdf3d1a0b50f8ad9e2d5c3b6cac00a099530954

Git commit 6e2f78fffccdae266a271dcf1d6cd72b3dd1e36b by Wim Taymans (on behalf of Jan Alexander Steffens (heftig)) on 13/03/2021 at 14:50..
acp: Check return value of asprintf

Building with `-D c_args="-D_FORTIFY_SOURCE=2"` triggers warnings:

    ../spa/plugins/alsa/acp/acp.c: In function ‘add_pro_profile’:
    ../spa/plugins/alsa/acp/acp.c:298:2: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
      298 |  asprintf(&device, "hw:%d", index);
          |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../spa/plugins/alsa/acp/acp.c:334:4: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
      334 |    asprintf(&name, "Mapping pro-output-%d", dev);
          |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../spa/plugins/alsa/acp/acp.c:364:4: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
      364 |    asprintf(&name, "Mapping pro-input-%d", dev);
          |    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
https://invent.kde.org/neon/backports-focal/pipewire/commit/6e2f78fffccdae266a271dcf1d6cd72b3dd1e36b

Git commit ac9bcdee31760a12ec317fde7536976bbcfc25d2 by Jan Alexander Steffens (heftig) on 13/03/2021 at 19:09..
pulse-server: Error out if pid file name would be too long
https://invent.kde.org/neon/backports-focal/pipewire/commit/ac9bcdee31760a12ec317fde7536976bbcfc25d2

Git commit c6aa48548e5d1ed430ddeeef85c2a09c10539a8e by Jan Alexander Steffens (heftig) on 13/03/2021 at 19:09..
pulse-server: Use fprintf to write the pid file

This simplifies the code and also avoids a warning with _FORTIFY_SOURCE:

    ../pipewire/src/modules/module-protocol-pulse/pulse-server.c: In function ‘create_pid_file’:
    ../pipewire/src/modules/module-protocol-pulse/pulse-server.c:6028:2: warning: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
     6028 |  write(fd, pid_str, strlen(pid_str) + 1);
          |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
https://invent.kde.org/neon/backports-focal/pipewire/commit/c6aa48548e5d1ed430ddeeef85c2a09c10539a8e

Git commit 4873dbcf8e3ea05f83d8e9a44580e8a1ed387729 by Wim Taymans on 13/03/2021 at 19:30..
pw-dump: respect NO_COLOR

See no-color.org
https://invent.kde.org/neon/backports-focal/pipewire/commit/4873dbcf8e3ea05f83d8e9a44580e8a1ed387729

Git commit da5c43fb33e590fef3d1584a612232e24f48b228 by Wim Taymans on 13/03/2021 at 19:36..
logger: printf \n even when colors disabled
https://invent.kde.org/neon/backports-focal/pipewire/commit/da5c43fb33e590fef3d1584a612232e24f48b228

Git commit c974318686ced66546861494509d2ee93fc110d9 by Wim Taymans on 13/03/2021 at 19:36..
pipewire: disable colors when NO_COLOR is set

See no-color.org
https://invent.kde.org/neon/backports-focal/pipewire/commit/c974318686ced66546861494509d2ee93fc110d9

Git commit a9c247bdab9199e131fa7bd8d681784de400ac05 by Wim Taymans (on behalf of insop) on 13/03/2021 at 21:13..
Minor typo fixes
https://invent.kde.org/neon/backports-focal/pipewire/commit/a9c247bdab9199e131fa7bd8d681784de400ac05

Git commit 762663e74e4e3d72de925eb467ac3bf672ba2e51 by Huang-Huang Bao on 14/03/2021 at 05:32..
meson: create soft link for 'pipewire-uninstalled', fix gdb target in Makefile
https://invent.kde.org/neon/backports-focal/pipewire/commit/762663e74e4e3d72de925eb467ac3bf672ba2e51

Git commit 2d1f84fd7dcd55907376aa186eb32838538246de by Wim Taymans on 14/03/2021 at 08:28..
json: Move past the end char of a symbol

So that we can put a \0 there and continue parsing the rest of
the string. This allows us to in-place parse_string.
https://invent.kde.org/neon/backports-focal/pipewire/commit/2d1f84fd7dcd55907376aa186eb32838538246de

Git commit eb4a43948876de96f4a4ed3afdd38c9ead888b7f by Wim Taymans on 14/03/2021 at 08:32..
conf: parse json config in-place

Avoid allocs by parsing the json in-place.
https://invent.kde.org/neon/backports-focal/pipewire/commit/eb4a43948876de96f4a4ed3afdd38c9ead888b7f

Git commit cc12755c6c29cce1b5a0791df3d21fbe08de8c9d by Wim Taymans on 14/03/2021 at 09:23..
json: ignore '\0'

We ignore '\0' chars as we use the string length to check for the
end and the 0 chars might be inserted to parse the json in-place.
https://invent.kde.org/neon/backports-focal/pipewire/commit/cc12755c6c29cce1b5a0791df3d21fbe08de8c9d

Git commit c4e3b5adbcb516b36207771b18e8a8da275a4b60 by Wim Taymans on 14/03/2021 at 13:13..
alsa: don't double the resampler delay

The delay of the resampler is what it reports, don't double it.

See #854
https://invent.kde.org/neon/backports-focal/pipewire/commit/c4e3b5adbcb516b36207771b18e8a8da275a4b60

Git commit 17fd38c3a5e4a665cbe24ecf6b3aef795d4ea4df by Wim Taymans on 14/03/2021 at 14:42..
channelmix: use front-center matrix values

Use the front-center matrix values to mix left and right.
https://invent.kde.org/neon/backports-focal/pipewire/commit/17fd38c3a5e4a665cbe24ecf6b3aef795d4ea4df

Git commit 017900575c5de5264e07aec0443aaee4fa593058 by Wim Taymans on 14/03/2021 at 16:08..
alsa: don't compensate for resampler delay

Don't try to move closer to the read/write pointers in the ringbuffer
to compensate for the resampler delay. We might not have enough time
anymore to complete a cycle without xruns. The delay is properly
reported in the clock times and should also be reported on the port
latency eventually.
https://invent.kde.org/neon/backports-focal/pipewire/commit/017900575c5de5264e07aec0443aaee4fa593058

Git commit f372de8608a39c8fa6ec9c49839121ade3402e48 by Wim Taymans on 14/03/2021 at 19:06..
resample: refactor rate match code

Use the same code to start rate matching so that we get the same
results for passthrough.
https://invent.kde.org/neon/backports-focal/pipewire/commit/f372de8608a39c8fa6ec9c49839121ade3402e48

Git commit b07bfd066195089952886844365bf2beae4111f0 by Wim Taymans on 14/03/2021 at 20:42..
alsa: fix dll handling

Pass the right value for the rate, we need to pass the graph rate.
Don't reduce bandwidth, it is not needed.

Fixes timings for reading the alsa-sequencer.
https://invent.kde.org/neon/backports-focal/pipewire/commit/b07bfd066195089952886844365bf2beae4111f0

Git commit 4c9af21ec6b2dcd1811ed2859ffb4fa69d8d12d6 by Ivan on 14/03/2021 at 22:14..
meson: Add 'feature' options to enable/disable bluetooth codecs

Fixes: #606
https://invent.kde.org/neon/backports-focal/pipewire/commit/4c9af21ec6b2dcd1811ed2859ffb4fa69d8d12d6

Git commit 864d0148c226a27e9bce33320c3f3dfffdc520b9 by Ivan on 14/03/2021 at 22:54..
meson: Change codec options description
https://invent.kde.org/neon/backports-focal/pipewire/commit/864d0148c226a27e9bce33320c3f3dfffdc520b9

Git commit 5b8c7c405d813e731a90b5d004c3cb42af5da329 by Wim Taymans (on behalf of Pauli Virtanen) on 15/03/2021 at 08:20..
media-session: deal with global id race conditions

To resolve monitor and policy core global ids racing with each other,
use separate registry event handlers for both cores.  Each handles only
their own objects, determined by where the object handle was created.

Postpone handling of policy core new global events after monitor sync,
which orders them after the corresponding monitor proxy and registry
events. Monitor core is then more up-to-date, so we resolve id clashes
in favor of monitor globals, which avoids duplicate objects.

Fix use-after-free by tracking whether a monitor holds references to
sm_object. Keep also objects pending for id in a list, so that they can
be cleaned up on session_shutdown (monitors may leak objects at
shutdown, because spa objectinfo events won't be handled then).

Caveats:

Zombie objects may still created if policy core is late by several
events, but in those cases the corresponding remove events are already
in the queue.

Also, there's a (theoretical) possibility that pw_registry_bind will
bind the wrong object, if the registry event is handled too late and an
id is reused by the server.

For details, see reverted 77e4fdb1e485681635b282579d1c8d26f828a0a6
for which this is a another approach.
https://invent.kde.org/neon/backports-focal/pipewire/commit/5b8c7c405d813e731a90b5d004c3cb42af5da329

Git commit 8ba6e98320d65fa6b079e429275d3d480717f7d4 by Wim Taymans (on behalf of Pauli Virtanen) on 15/03/2021 at 08:20..
media-session: move libcamera+bluez5 device removal to object free callback

libcamera + bluez5 devices should be freed/unloaded via the sm_object
free callback, similarly as in alsa and v4l2 monitors.  This ensures
they are run at session_shutdown.
https://invent.kde.org/neon/backports-focal/pipewire/commit/8ba6e98320d65fa6b079e429275d3d480717f7d4

Git commit 996474163708032779bcecb17c02cd44c4d71953 by Wim Taymans on 15/03/2021 at 10:42..
context: non-passive loopback links also active a driver

If a driver node is linked with a non-passive link to itself, it
should also become running.

One example of this is the Midi bridge, that needs to start when you
link one device to another. The devices are all on the same node
so linking devices would result in loopback connections.
https://invent.kde.org/neon/backports-focal/pipewire/commit/996474163708032779bcecb17c02cd44c4d71953

Git commit 0b6d3e4b713843e39057f0ae2c62e07476a434b4 by Wim Taymans on 15/03/2021 at 10:51..
default-routes: reconfigure the profile when routes change

When something changes to the route status, try to reconfigure the
current profile.
https://invent.kde.org/neon/backports-focal/pipewire/commit/0b6d3e4b713843e39057f0ae2c62e07476a434b4

Git commit 85a102f41464ede32b61d68b1077609f871fbe45 by Wim Taymans on 15/03/2021 at 13:57..
default-profile: restore saved profile only for first time

Don't always try to restore the saved profile when it's available
but only do this the first time. From then on, try to follow the
best profile when it changes.
https://invent.kde.org/neon/backports-focal/pipewire/commit/85a102f41464ede32b61d68b1077609f871fbe45

Git commit 5c91f23c18207bb7aff29f73cfe530d1739c3f02 by Wim Taymans on 15/03/2021 at 15:06..
default-routes: only restore routes when profile changed

When the profile changes, try to restore the previously saved
routes. Otherwise, follow the best route when it changes.

See #863
https://invent.kde.org/neon/backports-focal/pipewire/commit/5c91f23c18207bb7aff29f73cfe530d1739c3f02

Git commit c7ad443e031bd827e259ffb2ccb03b81e4c2a768 by Pauli Virtanen on 15/03/2021 at 18:47..
bluez5: update supported codec list when profiles changed

When A2DP is connected and new device profiles appear, update also
supported codec list.

Fixes missing codec profiles when A2DP is connected late.
https://invent.kde.org/neon/backports-focal/pipewire/commit/c7ad443e031bd827e259ffb2ccb03b81e4c2a768

Git commit d9c5ea54fd9b2dbca4b73c5b33abe2deb0e837df by Pauli Virtanen on 15/03/2021 at 19:24..
media-session: set bluetooth volume directly on the local adapter node

Avoid problems with session proxy appearing too late by setting props on
directly on the local SPA node.
https://invent.kde.org/neon/backports-focal/pipewire/commit/d9c5ea54fd9b2dbca4b73c5b33abe2deb0e837df

Git commit 8f075619b294d671a25fa8aec49fdcfed8630f97 by Pauli Virtanen on 15/03/2021 at 21:24..
bluez5: set volume for both channels when switching HFP -> A2DP

Retain mono volume level set with HFP, for A2DP, in case session manager
fails to restore it.
https://invent.kde.org/neon/backports-focal/pipewire/commit/8f075619b294d671a25fa8aec49fdcfed8630f97

Git commit 1b1a3b96ec57b520df7d37e225454ddc49b99449 by Wim Taymans on 16/03/2021 at 08:48..
alsa: improve startup

Start with an extra period of silence.
Reconfigure a new timeout if we are too far off from the desired
buffer fill level. Reduce this level to the maximum error we
tollerate.

With this we use the extra period of silence to reconfigure the
timeout until we are close enough and we can start the dll with a
small error.

See #892
https://invent.kde.org/neon/backports-focal/pipewire/commit/1b1a3b96ec57b520df7d37e225454ddc49b99449

Git commit 1a59711ce17089a73763074361336b380c1c3752 by Wim Taymans (on behalf of Florian Hülsmann) on 16/03/2021 at 08:59..
jack: jackserver sources, add stubs for control.h
https://invent.kde.org/neon/backports-focal/pipewire/commit/1a59711ce17089a73763074361336b380c1c3752

Git commit 21ff2740d6f03086f43d22a443c7c6d5b6edd81d by Wim Taymans (on behalf of Florian Hülsmann) on 16/03/2021 at 08:59..
jack: jackctl_server_create2 add dummy driver
https://invent.kde.org/neon/backports-focal/pipewire/commit/21ff2740d6f03086f43d22a443c7c6d5b6edd81d

Git commit 41d4039ee470a8b4847c69e6e221e295ea594e27 by Wim Taymans (on behalf of Florian Hülsmann) on 16/03/2021 at 08:59..
jack: omit debugging macros in jack_{error,info,log}
https://invent.kde.org/neon/backports-focal/pipewire/commit/41d4039ee470a8b4847c69e6e221e295ea594e27

Git commit e7cecaaea605d313e63a25c964b809c731f2b009 by Wim Taymans (on behalf of Huang-Huang Bao) on 16/03/2021 at 10:31..
media-session: apply updated properties to bluez/v4l2 device handle
https://invent.kde.org/neon/backports-focal/pipewire/commit/e7cecaaea605d313e63a25c964b809c731f2b009

Git commit af8272fe08fd95a5031736b4cbdffe3745876fb1 by Wim Taymans (on behalf of Huang-Huang Bao) on 16/03/2021 at 10:31..
bluez5: create device handle before profile negotiation started so that profile handler can retrieve per-device settings
https://invent.kde.org/neon/backports-focal/pipewire/commit/af8272fe08fd95a5031736b4cbdffe3745876fb1

Git commit 374180e211243d86ad08ad759d87c5485105aa7e by Wim Taymans (on behalf of Huang-Huang Bao) on 16/03/2021 at 10:31..
bluez5: pass per-device settings to codec handler, make 'bluez5.sbc-xq-support' a per-device setting
https://invent.kde.org/neon/backports-focal/pipewire/commit/374180e211243d86ad08ad759d87c5485105aa7e

Git commit 01df7671d5fdfb2293b43fcf3694bd2facdc32db by Wim Taymans (on behalf of Huang-Huang Bao) on 16/03/2021 at 10:31..
bluez5: avoid log spamming on debug log level, use log level 'warn' on hsphfpd or ofono registering fail instead of 'error'
https://invent.kde.org/neon/backports-focal/pipewire/commit/01df7671d5fdfb2293b43fcf3694bd2facdc32db

Git commit 75b4c80dc62fbfe0be8a1bacff59f5d0323e8248 by Wim Taymans (on behalf of Huang-Huang Bao) on 16/03/2021 at 10:31..
bluez5: add logic to fallback to previous behavior if connection info handling is not supportrd by session manager (i.e wireplumber).
https://invent.kde.org/neon/backports-focal/pipewire/commit/75b4c80dc62fbfe0be8a1bacff59f5d0323e8248

Git commit f2b537bb65e07479d5d1c1c077cd503e9ace27ef by Wim Taymans on 16/03/2021 at 14:48..
context: fix passive node check

A node starts out as passive but becomes non-passive when there
is a non-passive link to an active node. If there is a link to
an inactive node, the node remains passive.

This fixes suspend of drivers in all cases.

Fixes #898
https://invent.kde.org/neon/backports-focal/pipewire/commit/f2b537bb65e07479d5d1c1c077cd503e9ace27ef

Git commit 6c94dc30a2a034222723b1bc3acce5c3ed4efdfe by Wim Taymans on 16/03/2021 at 16:28..
impl-node: delay start when both a driver and driving

WE can only delay the start for drivers that are driving. Remote
nodes are driving themselves but are not drivers so they need to
start early.

See #879
https://invent.kde.org/neon/backports-focal/pipewire/commit/6c94dc30a2a034222723b1bc3acce5c3ed4efdfe

Git commit d143c169ccb5c41d96b16fd6497d7482d030de8e by Wim Taymans (on behalf of Pauli Virtanen) on 16/03/2021 at 19:06..
media-session: free sm_objects only after session destroy emitted

Allows monitors (eg. bluez5) free any sm_objects they hold in
session_destroy.  In session_shutdown, destroy such objects before the
event, and free them only afterward.

Fixes double-free in bluez monitor.
https://invent.kde.org/neon/backports-focal/pipewire/commit/d143c169ccb5c41d96b16fd6497d7482d030de8e

Git commit 44e0251afd142a07832503cf8cd64c50f4418f5e by Wim Taymans (on behalf of Jonas Holmberg) on 16/03/2021 at 19:09..
impl-node: Make rounding of quantum configurable

Add new context config clock.power-of-two-quantum to make it possible to
not round quantum to closest lower power of two. This makes it possible
to match the quantum of a source node with the quantum of a client
node.
https://invent.kde.org/neon/backports-focal/pipewire/commit/44e0251afd142a07832503cf8cd64c50f4418f5e

Git commit 4d94ba843c60cf4b0255d7b19fb1e97f72f1c2a9 by Wim Taymans (on behalf of Björn Daase) on 16/03/2021 at 19:11..
.codespell-ignore: update excluded words
https://invent.kde.org/neon/backports-focal/pipewire/commit/4d94ba843c60cf4b0255d7b19fb1e97f72f1c2a9

Git commit 5913eb098c30dda9d455a6a807d34868b98fa90c by Wim Taymans (on behalf of Björn Daase) on 16/03/2021 at 19:11..
treewide: fix issues found by codespell
https://invent.kde.org/neon/backports-focal/pipewire/commit/5913eb098c30dda9d455a6a807d34868b98fa90c

Git commit 4200ca98d6cdfefd55d157a8e6dcf0cd3611e439 by Huang-Huang Bao on 17/03/2021 at 00:42..
media-session: don't destroy bluez sm_object in session destroy handler, let object been destroyed in session_shutdown.

Avoid double free on object proxy, although it has been handled by d143c169ccb5c41d96b16fd6497d7482d030de8e.
https://invent.kde.org/neon/backports-focal/pipewire/commit/4200ca98d6cdfefd55d157a8e6dcf0cd3611e439

Git commit e51cc5b537ae931e110e4ae499592b30b2725ef3 by Wim Taymans on 17/03/2021 at 10:09..
channelmix: Prepare for generating LFE channel

Add channelmix.lfe-cutoff property, 0 is disabled
Disable upmix by default
https://invent.kde.org/neon/backports-focal/pipewire/commit/e51cc5b537ae931e110e4ae499592b30b2725ef3

Git commit 14e8073d186cf5d5fdf7e106a765e221c64abfb5 by Wim Taymans on 17/03/2021 at 10:28..
audioconvert: add LFE filter

Use a lowpass filter to generate LFE from the stereo channels.
https://invent.kde.org/neon/backports-focal/pipewire/commit/14e8073d186cf5d5fdf7e106a765e221c64abfb5

Git commit 35c27d0c107dcee82b17f5d4665dbc4400edc3ae by Wim Taymans on 17/03/2021 at 11:23..
media-session: restored saved profile from off

Always attempt to restore the saved profile again from the off state.
This can happen when the device goes into suspend or when hdmi is
unplugged.
https://invent.kde.org/neon/backports-focal/pipewire/commit/35c27d0c107dcee82b17f5d4665dbc4400edc3ae

Git commit f021866adb22d91a64fbc871217803fc04244324 by Huang-Huang Bao on 17/03/2021 at 11:29..
meson: fix symbolic link creating on FreeBSD
https://invent.kde.org/neon/backports-focal/pipewire/commit/f021866adb22d91a64fbc871217803fc04244324

Git commit a96d8aa1aa3871aaf837bc4c7b475823e3e31679 by Wim Taymans on 17/03/2021 at 15:19..
media-session: guard against node destroy while iterating

When we are iterating the nodes and one is destroyed, restart the
scan operation so that we avoid accessing invalid memory.

See #901
https://invent.kde.org/neon/backports-focal/pipewire/commit/a96d8aa1aa3871aaf837bc4c7b475823e3e31679

Git commit 24d795e9a4b800ade8f9da570d607f0eed188daf by Wim Taymans on 17/03/2021 at 15:28..
pulse-server: don't free stream map in disconnect

The cleanup handler might still run and try to iterate the streams
so make sure the map is not freed yet.

See #901
https://invent.kde.org/neon/backports-focal/pipewire/commit/24d795e9a4b800ade8f9da570d607f0eed188daf

Git commit bc47378abca2eff10d696c98279b081fab38ad6e by Wim Taymans on 17/03/2021 at 16:02..
pulse-server: support moving capture streams to monitors

Also resolve the monitor ids to the sink with the monitor ports.
https://invent.kde.org/neon/backports-focal/pipewire/commit/bc47378abca2eff10d696c98279b081fab38ad6e

Git commit 83443967a01cafb0af9a470c6b85666fe7441775 by Wim Taymans (on behalf of Pauli Virtanen) on 17/03/2021 at 16:19..
media-session: set node list change flag

See a96d8aa1aa3871aaf
https://invent.kde.org/neon/backports-focal/pipewire/commit/83443967a01cafb0af9a470c6b85666fe7441775

Git commit 529f4d318fb7de724f30ed3b20126a9895fbc7de by Ivan on 17/03/2021 at 18:52..
meson: Fix build without vulkan headers
Some distros ship Vulkan headers separately. In that case dependency
check is passed but build is failing due to the missing headers.
https://invent.kde.org/neon/backports-focal/pipewire/commit/529f4d318fb7de724f30ed3b20126a9895fbc7de

Git commit 68677774fc018812503221889d1af1eb6bbc5360 by Huang-Huang Bao on 18/03/2021 at 04:09..
bluez5: fix reference to already freed spa_bt_device

Fixes #907
https://invent.kde.org/neon/backports-focal/pipewire/commit/68677774fc018812503221889d1af1eb6bbc5360

Git commit e9adb2844e4e648d1ff3ec7894f66b0e3ea14431 by Wim Taymans (on behalf of Huang-Huang Bao) on 18/03/2021 at 08:24..
bluez5: clear obsolete objects also when bluetooth daemon appeared

See #906
https://invent.kde.org/neon/backports-focal/pipewire/commit/e9adb2844e4e648d1ff3ec7894f66b0e3ea14431

Git commit d0636875eecafae822e3a31e20c1c5162f838106 by Wim Taymans (on behalf of Huang-Huang Bao) on 18/03/2021 at 08:27..
bluez5: fix memory leak on device battery path
https://invent.kde.org/neon/backports-focal/pipewire/commit/d0636875eecafae822e3a31e20c1c5162f838106

Git commit 8d7c5732dbf43b0d719435bb0cc96eaa08222017 by Wim Taymans on 18/03/2021 at 09:28..
pulse-server: remove .monitor suffix when set as default source

We place the sink name in the metadata when it is used as a default
source.
https://invent.kde.org/neon/backports-focal/pipewire/commit/8d7c5732dbf43b0d719435bb0cc96eaa08222017

Git commit 2ee4e94c59bf9fd678224c0a8a257e6e1781a56c by Wim Taymans on 18/03/2021 at 10:57..
policy-node: take into account sinks as a default source

A sink can be set as a default source, which means that the default
source is the monitor ports of the sink.

Move the direction check for later so that we can first check if we
are dealing with a potential default sink/source for the given
direction. If we found a default sink/source, we don't need to do
the direction check anymore.

This makes it possible to set a sink as a configured default source
and have policy-node take this into account when defining the
default.source metadata.

See #715, #908
https://invent.kde.org/neon/backports-focal/pipewire/commit/2ee4e94c59bf9fd678224c0a8a257e6e1781a56c

Git commit 08f2284eeadd63930bd53a4c454d4e03ca1f549e by Wim Taymans on 18/03/2021 at 11:44..
bluez5: add device.string in properties

See #842
https://invent.kde.org/neon/backports-focal/pipewire/commit/08f2284eeadd63930bd53a4c454d4e03ca1f549e

Git commit c81d44e8a9497899d01bcc3054b6aa845e7a066e by Wim Taymans on 18/03/2021 at 13:50..
0.3.24
https://invent.kde.org/neon/backports-focal/pipewire/commit/c81d44e8a9497899d01bcc3054b6aa845e7a066e

Git commit 340a251b5dc3991e37e85e258d4887c30325c7bf by Sjoerd Simons on 18/03/2021 at 19:44..
New upstream version 0.3.24
https://invent.kde.org/neon/backports-focal/pipewire/commit/340a251b5dc3991e37e85e258d4887c30325c7bf

Git commit f60cbec7ae6492dae7579b869a15d2fb3cd0829d by Sjoerd Simons on 18/03/2021 at 19:45..
Update upstream source from tag 'upstream/0.3.24'

Update to upstream version '0.3.24'
with Debian dir 6383bf91f0fe3d57829ddf3bd4961a452c070a1d
https://invent.kde.org/neon/backports-focal/pipewire/commit/f60cbec7ae6492dae7579b869a15d2fb3cd0829d

Git commit 0d0fbf759391e8bde347724bab99ff98c178fd23 by Sjoerd Simons on 18/03/2021 at 19:45..
New upstream release
https://invent.kde.org/neon/backports-focal/pipewire/commit/0d0fbf759391e8bde347724bab99ff98c178fd23

Git commit 76e0031cbe118ccb2fa0a90bb882b693bf1c6a5a by Sjoerd Simons on 18/03/2021 at 20:36..
Update build options and target experimental

Signed-off-by: Sjoerd Simons <sjoerd at collabora.com>
https://invent.kde.org/neon/backports-focal/pipewire/commit/76e0031cbe118ccb2fa0a90bb882b693bf1c6a5a

Git commit b519d5c82fbc589ea4bc46f7b6483104d948e689 by Harald Sitter on 19/03/2021 at 10:23..
Merge tag 'debian/0.3.24-1' into Neon/release-lts

pipewire Debian release 0.3.24-1
https://invent.kde.org/neon/backports-focal/pipewire/commit/b519d5c82fbc589ea4bc46f7b6483104d948e689


More information about the Neon-commits mailing list