)]}'
{
  "commit": "cce2f149ea7dd912ea0e81eae2973aea8c89cdb9",
  "tree": "759092708628e4cd0d4ef485083316c8cc890dff",
  "parents": [
    "7a25e1c85a0af15cae8a2d55bf02e5610bf1af53"
  ],
  "author": {
    "name": "kwasniow",
    "email": "kwasniow@cisco.com",
    "time": "Mon Sep 28 12:32:06 2026"
  },
  "committer": {
    "name": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Thu Oct 01 14:22:28 2026"
  },
  "message": "Reland \"RtpSender: Create the Sframe encryptor and hand out a worker proxy\"\n\nThis reverts commit 348e5ff7247ceffe58d8fa3daf8fb917d74f68c9.\n\nReason for revert: Sframe library updated to support std::span\n\nOriginal change\u0027s description:\n\u003e Revert \"RtpSender: Create the Sframe encryptor and hand out a worker proxy\"\n\u003e\n\u003e This reverts commit 8354b7c19d32a3dbe7268319af6085e6ec9ec099.\n\u003e\n\u003e Reason for revert: breaks webrtc-internal bot. Compile error in sframe\n\u003e\n\u003e Failure Link: https://fusion2.corp.google.com/invocations/e9a2a344-3234-4d69-a6e9-b95f8700b396/targets/%2F%2Fthird_party%2Fwebrtc:webrtc_all_cc/log?q\u003dlabel:session_id%3Dbtbs-224212c0-8627-4ddc-9137-60e85c0d9b6c\n\u003e\n\u003e Original change\u0027s description:\n\u003e \u003e RtpSender: Create the Sframe encryptor and hand out a worker proxy\n\u003e \u003e\n\u003e \u003e Implements `RtpSenderBase::CreateSframeEncryptorOrError`\n\u003e \u003e\n\u003e \u003e When called, it creates a `SframeEncryptor` on the worker thread and —\n\u003e \u003e if an SSRC is already assigned — immediately pushes it to the media\n\u003e \u003e channel via `SetSframeEncryptor`. If the SSRC is not yet known,\n\u003e \u003e `SetSsrc` is updated to push the encryptor to the channel once an SSRC\n\u003e \u003e is assigned.\n\u003e \u003e\n\u003e \u003e The returned `SframeEncryptorInterface` is wrapped in a new\n\u003e \u003e `SframeEncryptorProxy` that marshals `SetEncryptionKey` calls to the\n\u003e \u003e worker thread, so callers can safely invoke it from any other thread.\n\u003e \u003e\n\u003e \u003e Bug: webrtc:479862368\n\u003e \u003e Change-Id: Ic647c4658fa672c820d09a13c34ee0b158f3ae89\n\u003e \u003e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/493780\n\u003e \u003e Commit-Queue: Björn Terelius \u003cterelius@webrtc.org\u003e\n\u003e \u003e Reviewed-by: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\n\u003e \u003e Reviewed-by: Björn Terelius \u003cterelius@webrtc.org\u003e\n\u003e \u003e Cr-Commit-Position: refs/heads/main@{#48542}\n\u003e\n\u003e Bug: webrtc:479862368\n\u003e No-Presubmit: true\n\u003e No-Tree-Checks: true\n\u003e No-Try: true\n\u003e Change-Id: I7e24587bf67f8f4a5f85a29c672fbccc22a566b8\n\u003e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/501520\n\u003e Bot-Commit: rubber-stamper@appspot.gserviceaccount.com \u003crubber-stamper@appspot.gserviceaccount.com\u003e\n\u003e Owners-Override: Ilya Nikolaevskiy \u003cilnik@webrtc.org\u003e\n\u003e Commit-Queue: Ilya Nikolaevskiy \u003cilnik@webrtc.org\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#48544}\n\nBug: webrtc:479862368\nChange-Id: Ie82d63b86651fc55703e38f5017f02c97c286b7b\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/506100\nCommit-Queue: Kacper Wasniowski \u003ckwasniow@cisco.com\u003e\nReviewed-by: Ilya Nikolaevskiy \u003cilnik@webrtc.org\u003e\nReviewed-by: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#48769}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e8d94ab5b1a157d0a55ee3db84114bea27adf864",
      "old_mode": 33188,
      "old_path": "media/BUILD.gn",
      "new_id": "2e50236dd39430f5892590416502f95a72847b1e",
      "new_mode": 33188,
      "new_path": "media/BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "60c0fb7472ffec023f10b2d3f1a9e319ea0f4d4d",
      "old_mode": 33188,
      "old_path": "media/DEPS",
      "new_id": "23f3d732040b60f5315232c7875ecbe7bf431248",
      "new_mode": 33188,
      "new_path": "media/DEPS"
    },
    {
      "type": "modify",
      "old_id": "b3546ccb0f60df2652f3359f05d4993cb5613633",
      "old_mode": 33188,
      "old_path": "media/base/fake_media_engine.h",
      "new_id": "9a5fad1a681f86c8002a2c7940669a95b8fb86d3",
      "new_mode": 33188,
      "new_path": "media/base/fake_media_engine.h"
    },
    {
      "type": "modify",
      "old_id": "ee717eb528813bdaa1cb9d72328309053548672e",
      "old_mode": 33188,
      "old_path": "media/base/media_channel.h",
      "new_id": "18d5cefd749b944b26d63b767dd1e32d0cdb66da",
      "new_mode": 33188,
      "new_path": "media/base/media_channel.h"
    },
    {
      "type": "modify",
      "old_id": "fbb143011e5f7eefd3b34e7d84429a2c0da9bbf1",
      "old_mode": 33188,
      "old_path": "media/engine/webrtc_video_engine.cc",
      "new_id": "da5a1155a4c6c326737f6f969354f200c7da2ab5",
      "new_mode": 33188,
      "new_path": "media/engine/webrtc_video_engine.cc"
    },
    {
      "type": "modify",
      "old_id": "1cfeae80122caf6d57930d8ee45271b6c157e0f6",
      "old_mode": 33188,
      "old_path": "media/engine/webrtc_video_engine.h",
      "new_id": "f2969be19812e63204cf801c1d133e713479abec",
      "new_mode": 33188,
      "new_path": "media/engine/webrtc_video_engine.h"
    },
    {
      "type": "modify",
      "old_id": "89f064fcdb365471a9cdceed20b48166c5fac6d6",
      "old_mode": 33188,
      "old_path": "media/engine/webrtc_voice_engine.cc",
      "new_id": "4e609b04da0e65bed59a0991ae69f9641c78e4db",
      "new_mode": 33188,
      "new_path": "media/engine/webrtc_voice_engine.cc"
    },
    {
      "type": "modify",
      "old_id": "af2b5107ad632e867eea41c3145c3592d31c05bc",
      "old_mode": 33188,
      "old_path": "media/engine/webrtc_voice_engine.h",
      "new_id": "36d24126430c17dea932d60a426534215cb5edb5",
      "new_mode": 33188,
      "new_path": "media/engine/webrtc_voice_engine.h"
    },
    {
      "type": "modify",
      "old_id": "251a7e5abe5f445a91d64436e1295e0b3c99fd8b",
      "old_mode": 33188,
      "old_path": "pc/BUILD.gn",
      "new_id": "a9ae071515935d97781209508ab4d0dc969ed444",
      "new_mode": 33188,
      "new_path": "pc/BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "aa4bbbe66508165b3f1e53c3e1947ae3762b3d2e",
      "old_mode": 33188,
      "old_path": "pc/DEPS",
      "new_id": "224d047dc2553ad6f4534489267e73e9a4954084",
      "new_mode": 33188,
      "new_path": "pc/DEPS"
    },
    {
      "type": "modify",
      "old_id": "6f7430fbccd1a65b330d271f7041515f0dea215f",
      "old_mode": 33188,
      "old_path": "pc/rtp_sender.cc",
      "new_id": "df3940d71a38e4c5e54b07d6d136e798cc2f48b3",
      "new_mode": 33188,
      "new_path": "pc/rtp_sender.cc"
    },
    {
      "type": "modify",
      "old_id": "4ff1cacb4b3ae2e78a93e1df77ca18e5f332880b",
      "old_mode": 33188,
      "old_path": "pc/rtp_sender.h",
      "new_id": "6fda9bbcfc4072c6cc89b2878223c97dc6d83163",
      "new_mode": 33188,
      "new_path": "pc/rtp_sender.h"
    },
    {
      "type": "modify",
      "old_id": "dcb949019df066c17b0e492985b7b2c0b2bdf639",
      "old_mode": 33188,
      "old_path": "pc/rtp_sender_receiver_unittest.cc",
      "new_id": "e2b6ec028c03062964668a5a6df24445db3ec314",
      "new_mode": 33188,
      "new_path": "pc/rtp_sender_receiver_unittest.cc"
    }
  ]
}
