{"object_kind":"push","event_name":"push","before":"80478e75482f096afea391117fa648e6e6765147","after":"3887e1ca8242dc26314ef8fffd134b6d230a4309","ref":"refs/heads/master","ref_protected":true,"checkout_sha":"3887e1ca8242dc26314ef8fffd134b6d230a4309","message":null,"user_id":761,"user_name":"George Kiagiadakis","user_username":"gkiagia","user_email":"","user_avatar":"https://secure.gravatar.com/avatar/fef80de08e4b130d46f64ddfd085c154e4b8cd4c45f8ba9dc8f6dc3f3ce79986?s=80&d=identicon","project_id":2941,"project":{"id":2941,"name":"wireplumber","description":"Session / policy manager implementation for PipeWire","web_url":"https://gitlab.freedesktop.org/pipewire/wireplumber","avatar_url":null,"git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","git_http_url":"https://gitlab.freedesktop.org/pipewire/wireplumber.git","namespace":"PipeWire","visibility_level":20,"path_with_namespace":"pipewire/wireplumber","default_branch":"master","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/pipewire/wireplumber","url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","http_url":"https://gitlab.freedesktop.org/pipewire/wireplumber.git"},"commits":[{"id":"6a9e977d2681310a76c0ac8d2fca812d932e6e47","message":"autoswitch-bluetooth-profile.lua: Refactor and fix issues with saved profiles\n\nThis patch improves the BT profile autoswitch logic so that it is simpler and\nmore robust. Instead of just relying on capture clients that are linked to (or\nunlinked from) the BT loopback source node to evaluate whether we have to switch\nto a headset profile or not, we now also evaluate the autoswitch every time the\nBT loopback source node state changes. This avoids problems with some capture\nclients that pause the input stream without closing them.\n\nApart from this, the patch also fixes some issues with saved profiles if the\nuser manually switched to a headset profile when no capture streams are present.\nThe autoswitch logic should restore back the non-headset profile (A2DP) every\ntime a capture client is disconnected or the BT loopback source node stops\nrunning.\n\nFinally, the 'bluetooth.autoswitch-to-headset-profile' setting will now register\nor remove the necessary hooks depending on whether the setting is enabled or\ndisabled, improving WirePlumber performance if autoswitching is disabled.\n","title":"autoswitch-bluetooth-profile.lua: Refactor and fix issues with saved profiles","timestamp":"2025-12-23T19:54:07+02:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/6a9e977d2681310a76c0ac8d2fca812d932e6e47","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":[],"modified":["src/scripts/device/autoswitch-bluetooth-profile.lua"],"removed":[]},{"id":"da831fdc65babbc41140cf5ccd85237b9a801b83","message":"monitors/bluez.lua: Create sink loopback for SCO-A2DP sink nodes\n\nIf the BT profile autoswitch setting is enabled, we also want to create a sink\nloopback for SCO-A2DP sink nodes. Since BT nodes are removed and created again\nwhen the profile changes, this avoids confusing some apps making them think\nthat the BT profile has not changed at all, because the loopback nodes are\nalways present, even when switching profiles.\n","title":"monitors/bluez.lua: Create sink loopback for SCO-A2DP sink nodes","timestamp":"2025-12-23T19:54:07+02:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/da831fdc65babbc41140cf5ccd85237b9a801b83","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":[],"modified":["src/scripts/monitors/bluez.lua"],"removed":[]},{"id":"00c272670c642ec562ec6207239e9fbbad41a225","message":"state-routes.lua: Add new 'bluetooth.keep-volume-on-profile-changed' setting\n\nIf enabled, this setting will use the same volume levels as the previous\nprofile. This is useful on some bluetooth devices if the bluetooth profile\naudioswitch is enabled.\n","title":"state-routes.lua: Add new 'bluetooth.keep-volume-on-profile-changed' setting","timestamp":"2025-12-23T19:54:07+02:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/00c272670c642ec562ec6207239e9fbbad41a225","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":[],"modified":["po/conf.pot","src/config/wireplumber.conf","src/scripts/device/state-routes.lua","src/scripts/lib/device-info-cache.lua"],"removed":[]},{"id":"3887e1ca8242dc26314ef8fffd134b6d230a4309","message":"monitor/bluez.lua: Don't set priority.driver in loopback nodes\n\nLoopback nodes should never be the driver as it can cause audio issues.\n","title":"monitor/bluez.lua: Don't set priority.driver in loopback nodes","timestamp":"2025-12-23T19:54:07+02:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/3887e1ca8242dc26314ef8fffd134b6d230a4309","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":[],"modified":["src/scripts/monitors/bluez.lua"],"removed":[]}],"total_commits_count":4,"push_options":{},"repository":{"name":"wireplumber","url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","description":"Session / policy manager implementation for PipeWire","homepage":"https://gitlab.freedesktop.org/pipewire/wireplumber","git_http_url":"https://gitlab.freedesktop.org/pipewire/wireplumber.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","visibility_level":20}}