)]}'
{
  "commit": "2a6b39446a2d7c470a44eb1365061d77a64f5001",
  "tree": "15d415b2d5a236c3bb8a9ea6a08ad91037ec345d",
  "parents": [
    "e82f37a0d43466d74fb4935820ea416bc2552824"
  ],
  "author": {
    "name": "Tommi",
    "email": "tommi@webrtc.org",
    "time": "Tue May 26 11:05:00 2026"
  },
  "committer": {
    "name": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue May 26 12:22:45 2026"
  },
  "message": "Refactor ChannelReceive to accept PacketRouter in constructor\n\nPasses PacketRouter directly during construction of voe::ChannelReceive,\nallowing the pointer member to be const and managing congestion\ncontrol objects\u0027 lifetime automatically via RAII.\nThis simplifies the ChannelReceiveInterface by removing the\nRegisterReceiverCongestionControlObjects and ResetReceiverCongestionControlObjects methods.\n\nBug: none\nChange-Id: Ibddae158314fb7e461c47b0f72e163feb87a663c\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/474840\nCommit-Queue: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\nReviewed-by: Jakob Ivarsson‎ \u003cjakobi@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#47804}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5b0cbed192dc578619233e4f439fa444133c55f2",
      "old_mode": 33188,
      "old_path": "audio/BUILD.gn",
      "new_id": "097a6e22e217a7b82284785fbbad72ba5c373de5",
      "new_mode": 33188,
      "new_path": "audio/BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "26a564715f93eef79adb49c9c92114c3b2695bb4",
      "old_mode": 33188,
      "old_path": "audio/audio_receive_stream.cc",
      "new_id": "614f59c47b55b2141d50c6b2504fc0744d494a91",
      "new_mode": 33188,
      "new_path": "audio/audio_receive_stream.cc"
    },
    {
      "type": "modify",
      "old_id": "e1e508d6bd32e03f13950f05cbada5062394ed09",
      "old_mode": 33188,
      "old_path": "audio/audio_receive_stream.h",
      "new_id": "452380030d121586c1140e83f3fc677ad94e24b2",
      "new_mode": 33188,
      "new_path": "audio/audio_receive_stream.h"
    },
    {
      "type": "modify",
      "old_id": "285a1d775fdf3215df79857befd07044b249469a",
      "old_mode": 33188,
      "old_path": "audio/audio_receive_stream_unittest.cc",
      "new_id": "c0ee9565194331398e98a4c3d37094dc4e558a82",
      "new_mode": 33188,
      "new_path": "audio/audio_receive_stream_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "01c961bd0a2b3ec3ec06a1274af3a241940df497",
      "old_mode": 33188,
      "old_path": "audio/channel_receive.cc",
      "new_id": "2f892c429c62ad6b48136316a06a225554925418",
      "new_mode": 33188,
      "new_path": "audio/channel_receive.cc"
    },
    {
      "type": "modify",
      "old_id": "c4e5099c69b2c67fd75ca2ce108b26e281f5544d",
      "old_mode": 33188,
      "old_path": "audio/channel_receive.h",
      "new_id": "35f81931d0787d7227570ed6eb5ce80093e030e3",
      "new_mode": 33188,
      "new_path": "audio/channel_receive.h"
    },
    {
      "type": "modify",
      "old_id": "83cc6d56e03bcbc7cf02d10cd051c80c095eec98",
      "old_mode": 33188,
      "old_path": "audio/channel_receive_unittest.cc",
      "new_id": "c66b07dffec6eaa270c35871fc95423a0c0be50c",
      "new_mode": 33188,
      "new_path": "audio/channel_receive_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "6021e6367d1cb934ea37f75d5a52ab7b8cc2fe07",
      "old_mode": 33188,
      "old_path": "audio/mock_voe_channel_proxy.h",
      "new_id": "e6152b72b2733435219d727e7722bc13f61964fb",
      "new_mode": 33188,
      "new_path": "audio/mock_voe_channel_proxy.h"
    }
  ]
}
