{"object_kind":"push","event_name":"push","before":"ed951081b10f969d6606875df8237c1b3e8a149f","after":"a6ad8b3b622a6b67f602c6104fd55d10ebd2495d","ref":"refs/heads/master","ref_protected":true,"checkout_sha":"a6ad8b3b622a6b67f602c6104fd55d10ebd2495d","message":null,"user_id":3060,"user_name":"Wim Taymans","user_username":"wtaymans","user_email":"","user_avatar":"https://secure.gravatar.com/avatar/1ca1bed246cb9b95b7ead6d6be96bb09f0c112953140c8bb38b41aedf4465270?s=80&d=identicon","project_id":4753,"project":{"id":4753,"name":"pipewire","description":"Multimedia processing graphs","web_url":"https://gitlab.freedesktop.org/pipewire/pipewire","avatar_url":"https://gitlab.freedesktop.org/uploads/-/system/project/avatar/4753/pipewire.png","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","git_http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git","namespace":"PipeWire","visibility_level":20,"path_with_namespace":"pipewire/pipewire","default_branch":"master","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/pipewire/pipewire","url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git"},"commits":[{"id":"e9e5bb72a6959b5e1f1b35cf470965b532bb65a5","message":"milan-avb: acmp: preserve talker entity_id across BIND_RX -> CONNECT_TX round-trip\n","title":"milan-avb: acmp: preserve talker entity_id across BIND_RX -> CONNECT_TX round-trip","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/e9e5bb72a6959b5e1f1b35cf470965b532bb65a5","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/acmp-cmds-resps/acmp-milan-v12.c","src/modules/module-avb/aecp-aem-state.h"],"removed":[]},{"id":"1f969b51a8913e16dc2f137d2f0a28d3c5351d7a","message":"milan-avb: stream: stop bumping STREAM_INTERRUPTED on ringbuffer overrun\n","title":"milan-avb: stream: stop bumping STREAM_INTERRUPTED on ringbuffer overrun","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/1f969b51a8913e16dc2f137d2f0a28d3c5351d7a","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/stream.c"],"removed":[]},{"id":"7c4fc7027b22cb673520b13dea54d3304b3f183e","message":"milan-avb: mrp: do not apply RX_LVA to own attributes when transmitting LeaveAll\n","title":"milan-avb: mrp: do not apply RX_LVA to own attributes when transmitting LeaveAll","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/7c4fc7027b22cb673520b13dea54d3304b3f183e","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/mrp.c"],"removed":[]},{"id":"f3071aa5494b5293b1053245d846b3fa4e1677d7","message":"milan-avb: msrp: set Listener AskingFailed on RX TalkerFailed\n","title":"milan-avb: msrp: set Listener AskingFailed on RX TalkerFailed","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/f3071aa5494b5293b1053245d846b3fa4e1677d7","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/msrp.c"],"removed":[]},{"id":"93e4957959f13cdc3b53c3620868ea2710b87789","message":"milan-avb: msrp: scope Domain re-adjust to matching sr_class_id\n","title":"milan-avb: msrp: scope Domain re-adjust to matching sr_class_id","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/93e4957959f13cdc3b53c3620868ea2710b87789","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/msrp.c"],"removed":[]},{"id":"afc7724070c3f82fe3776f16623eb1144f8eca8d","message":"milan-avb: stabilization extras - MRP registrar-before-notify, scoped-fd cleanup, VLAN sub-iface RX, SET_NAME validation, entity/firmware/8ch, MEDIA_UNLOCK 100ms + seq-settle, MRP Leave on teardown, reset STREAM_INPUT counters on bind\n","title":"milan-avb: stabilization extras - MRP registrar-before-notify, scoped-fd...","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/afc7724070c3f82fe3776f16623eb1144f8eca8d","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/aecp-aem-cmds-resps/cmd-get-counters.c","src/modules/module-avb/aecp-aem-state.h","src/modules/module-avb/avdecc.c","src/modules/module-avb/descriptors.c","src/modules/module-avb/entity-model-milan-v12.h","src/modules/module-avb/mrp.c","src/modules/module-avb/msrp.c","src/modules/module-avb/stream.c"],"removed":[]},{"id":"66959ca678b75038a930c24b146e432bfd4e6575","message":"milan-avb: read gPTP PHC time for talker/listener via NIC PHC mapped onto CLOCK_MONOTONIC_RAW, decoupled from system clock\n","title":"milan-avb: read gPTP PHC time for talker/listener via NIC PHC mapped onto...","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/66959ca678b75038a930c24b146e432bfd4e6575","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":["src/modules/module-avb/gptp-clock.h"],"modified":["src/modules/module-avb/internal.h","src/modules/module-avb/stream.c"],"removed":[]},{"id":"90114c9839c17edcd8005b26fdaa686061f9dd1f","message":"milan-avb: AAF media-clock recovery estimator + play-loop actuator + io_changed, SET_CLOCK_SOURCE switch, skip CRF audio data plane\n","title":"milan-avb: AAF media-clock recovery estimator + play-loop actuator +...","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/90114c9839c17edcd8005b26fdaa686061f9dd1f","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":["src/modules/module-avb/mc-recover.h","src/modules/module-avb/play-loop.h"],"modified":["src/modules/module-avb/aecp-aem-cmds-resps/cmd-get-set-clock-source.c","src/modules/module-avb/stream.c","src/modules/module-avb/stream.h"],"removed":[]},{"id":"895e3a4fa1b443cb97655daf385e2cccabb3e3da","message":"milan-avb: ACMP listener self-heal, CBS-exclusive egress, per-iface MVRP, Milan MaxFrameSize + channel-strict RX\n","title":"milan-avb: ACMP listener self-heal, CBS-exclusive egress, per-iface MVRP,...","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/895e3a4fa1b443cb97655daf385e2cccabb3e3da","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/acmp-cmds-resps/acmp-milan-v12.c","src/modules/module-avb/avdecc.c","src/modules/module-avb/es-builder.c","src/modules/module-avb/stream.c"],"removed":[]},{"id":"5fe0a7e57537428450f7cdfcc91209aa6e91a554","message":"milan-avb: pace the talker flush timer on the RT data loop\n","title":"milan-avb: pace the talker flush timer on the RT data loop","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/5fe0a7e57537428450f7cdfcc91209aa6e91a554","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/avb.c","src/modules/module-avb/internal.h","src/modules/module-avb/stream.c"],"removed":[]},{"id":"5b8fa0a9b6907dd6cbb80eabcd41a954d471b9ea","message":"milan-avb: UNSUPPORTED_FORMAT per-PDU vs current format from descriptor\n","title":"milan-avb: UNSUPPORTED_FORMAT per-PDU vs current format from descriptor","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/5b8fa0a9b6907dd6cbb80eabcd41a954d471b9ea","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/aaf.h","src/modules/module-avb/aecp-aem.h","src/modules/module-avb/stream.c"],"removed":[]},{"id":"2bcec2f3f0e032bffaedb4ba944433740a72e367","message":"milan-avb: bit-perfect AAF audio path — avb.sink/avb.source self-driven drivers (drive_timer + trigger_process), 4-quanta ring (no per-quantum overwrite), rate_diff=1.0 coherent talker drive (no pw-cat resample), monotonic PHC-anchored AVTP timestamps, listener sample-lock driven at recovered mc.rate\n","title":"milan-avb: bit-perfect AAF audio path — avb.sink/avb.source self-driven...","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/2bcec2f3f0e032bffaedb4ba944433740a72e367","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/stream.c","src/modules/module-avb/stream.h"],"removed":[]},{"id":"95f796f08ccc8b4c4ffabd9e89ca5bfb527ad04b","message":"milan-avb: age MRP registrations on the node own LeaveAll so a talker resets its STREAM_OUTPUT on ACMP disconnect — fire the shared MSRP/MVRP/MMRP LeaveAll timer periodically (prime + re-arm, RX_LVA no longer resets it) and transition the registrar IN->LV on TX_LVA, so a departed Listener ages LV->MT -> NOTIFY_LEAVE -> listener_observed=false (802.1Q-2018 10.7.5.20)\n","title":"milan-avb: age MRP registrations on the node own LeaveAll so a talker resets...","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/95f796f08ccc8b4c4ffabd9e89ca5bfb527ad04b","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/mrp.c"],"removed":[]},{"id":"024f7201cb1031bf9e3d02c81862008210b0212d","message":"milan-avb: revert own-LeaveAll registrar aging — it tears down active SRP reservations on a spec-compliant bridge (802.1Q-2018 8.8.7 Dynamic Reservation Entry); talker disconnect-reset to be redone via the listener explicit MSRP Leave on UNBIND\n","title":"milan-avb: revert own-LeaveAll registrar aging — it tears down active SRP...","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/024f7201cb1031bf9e3d02c81862008210b0212d","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/mrp.c"],"removed":[]},{"id":"a6ad8b3b622a6b67f602c6104fd55d10ebd2495d","message":"milan-avb: keep the last-known gPTP grandmaster across transient ptp4l management-query timeouts so the ADP does not flap to advertising self-as-GM\n","title":"milan-avb: keep the last-known gPTP grandmaster across transient ptp4l...","timestamp":"2026-06-05T07:31:43+00:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/a6ad8b3b622a6b67f602c6104fd55d10ebd2495d","author":{"name":"hackerman-kl","email":"hackerman-kl@kebag-logic.com"},"added":[],"modified":["src/modules/module-avb/gptp.c"],"removed":[]}],"total_commits_count":15,"push_options":{},"repository":{"name":"pipewire","url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","description":"Multimedia processing graphs","homepage":"https://gitlab.freedesktop.org/pipewire/pipewire","git_http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","visibility_level":20}}