)]}'
{
  "commit": "bf3d5a88cf35c87c7e33e3845312ab51d254ea45",
  "tree": "fb4a51f333e6c75e85f3aadfc4d98487563d1779",
  "parents": [
    "d3f8fc54e1dcb2cc69b433b437711c7788484eb6"
  ],
  "author": {
    "name": "Per K",
    "email": "perkj@webrtc.org",
    "time": "Thu Jun 25 14:05:10 2026"
  },
  "committer": {
    "name": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri Jun 26 06:28:46 2026"
  },
  "message": "Update network route on SRTP activation\n\nWhen an ICE transport connects initially, OnNetworkRouteChanged is\ncalled before SRTP is active. Previously, when SRTP activated later,\nthe network route overhead was never updated. However, if ICE\ncandidates switched mid-call after SRTP activation, SRTP overhead was\nincluded, causing inconsistent packet overhead reporting.\n\nBehind the field trial WebRTC-UpdateNetworkRouteOnSrtpActivation\n(disabled by default):\n- SrtpTransport caches the current SRTP overhead and updates the\n  network route whenever the overhead changes.\n- RtpTransport routes packet transport changes through virtual\n  OnNetworkRouteChanged so subclasses can append SRTP overhead before\n  notifying subscribers.\n- RtpTransportControllerSend updates per-packet transport overhead\n  whenever the network route overhead changes.\n\nBug: webrtc:461532446\nChange-Id: I44d3c6a99fc45fd192e45ce3e1fa64f32832cbb7\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/485240\nReviewed-by: Harald Alvestrand \u003chta@webrtc.org\u003e\nCommit-Queue: Per Kjellander \u003cperkj@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#48090}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a224a4941b08db44e4caefdbf68fef0f2aac9099",
      "old_mode": 33188,
      "old_path": "call/rtp_transport_controller_send.cc",
      "new_id": "470cf40029b136ae8fb5ffe9a5eaa5803650ccf9",
      "new_mode": 33188,
      "new_path": "call/rtp_transport_controller_send.cc"
    },
    {
      "type": "modify",
      "old_id": "871b3c1df0668840dc8f796e2bb2efd28e6ffa5f",
      "old_mode": 33261,
      "old_path": "experiments/field_trials.py",
      "new_id": "0bb8368a86fb6bfb463b8806c938efa09496082b",
      "new_mode": 33261,
      "new_path": "experiments/field_trials.py"
    },
    {
      "type": "modify",
      "old_id": "6994676425eccb464628d40181fcfd4cf76802df",
      "old_mode": 33188,
      "old_path": "pc/rtp_transport.cc",
      "new_id": "3cd7185db1ceed2d1206418e7081de3429e78e87",
      "new_mode": 33188,
      "new_path": "pc/rtp_transport.cc"
    },
    {
      "type": "modify",
      "old_id": "185201586cf7c1dd64e4c47f5a6fd8a1a3d962bd",
      "old_mode": 33188,
      "old_path": "pc/rtp_transport.h",
      "new_id": "df5446202f22bf369582b88e72e9b2c5b8079748",
      "new_mode": 33188,
      "new_path": "pc/rtp_transport.h"
    },
    {
      "type": "modify",
      "old_id": "ffa513bb672a49e2ca63b175e986116aeb97c618",
      "old_mode": 33188,
      "old_path": "pc/srtp_transport.cc",
      "new_id": "c9fae693b9ca474f77663ba44024f2abab86c012",
      "new_mode": 33188,
      "new_path": "pc/srtp_transport.cc"
    },
    {
      "type": "modify",
      "old_id": "b3ee3b1e4d233826ef7c17856831af7aea5f6c97",
      "old_mode": 33188,
      "old_path": "pc/srtp_transport.h",
      "new_id": "43b6d523308fa68525a1cc64b0064304af9b2ace",
      "new_mode": 33188,
      "new_path": "pc/srtp_transport.h"
    },
    {
      "type": "modify",
      "old_id": "9649c7ea4dac7e0e3c500ec9275eb8b9440b6bdc",
      "old_mode": 33188,
      "old_path": "pc/srtp_transport_unittest.cc",
      "new_id": "2e9d80edc0f46edc210eaa2c84d1c991c3e633ec",
      "new_mode": 33188,
      "new_path": "pc/srtp_transport_unittest.cc"
    }
  ]
}
