)]}'
{
  "commit": "a1888ae791b5f4e4cdb01acf72e378a33908aeab",
  "tree": "6a731c1e899ba2f7e1d3799b3b9f1d37e0ba7f4a",
  "parents": [
    "19df870d924662e3b6efb86078d31a8e086b38b5"
  ],
  "author": {
    "name": "Erik Språng",
    "email": "sprang@webrtc.org",
    "time": "Thu Jul 02 12:02:36 2020"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Thu Jul 02 12:03:07 2020"
  },
  "message": "Revert \"Reland \"Allows FEC generation after pacer step.\"\"\n\nThis reverts commit 19df870d924662e3b6efb86078d31a8e086b38b5.\n\nReason for revert: Downstream project failure\n\nOriginal change\u0027s description:\n\u003e Reland \"Allows FEC generation after pacer step.\"\n\u003e \n\u003e This is a reland of 75fd127640bdf1729af6b4a25875e6d01f1570e0\n\u003e \n\u003e Patchset 2 contains a fix. Old code can in factor call\n\u003e RtpRtcpImpl::FetchFec(). It should only be a noop since deferred fec\n\u003e is not supported there - we shouldn\u0027t crash.\n\u003e \n\u003e Original change\u0027s description:\n\u003e \u003e Allows FEC generation after pacer step.\n\u003e \u003e\n\u003e \u003e Split out from https://webrtc-review.googlesource.com/c/src/+/173708\n\u003e \u003e This CL enables FEC packets to be generated as media packets are sent,\n\u003e \u003e rather than generated, i.e. media packets are inserted into the fec\n\u003e \u003e generator after the pacing stage rather than at packetization time.\n\u003e \u003e\n\u003e \u003e This may have some small impact of performance. FEC packets are\n\u003e \u003e typically only generated when a new packet with a marker bit is added,\n\u003e \u003e which means FEC packets protecting a frame will now be sent after all\n\u003e \u003e of the media packets, rather than (potentially) interleaved with them.\n\u003e \u003e Therefore this feature is currently behind a flag so we can examine the\n\u003e \u003e impact. Once we are comfortable with the behavior we\u0027ll make it default\n\u003e \u003e and remove the old code.\n\u003e \u003e\n\u003e \u003e Note that this change does not include the \"protect all header\n\u003e \u003e extensions\" part of the original CL - that will be a follow-up.\n\u003e \u003e\n\u003e \u003e Bug: webrtc:11340\n\u003e \u003e Change-Id: I3fe139c5d53968579b75b91e2612075451ff0f5d\n\u003e \u003e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177760\n\u003e \u003e Commit-Queue: Erik Språng \u003csprang@webrtc.org\u003e\n\u003e \u003e Reviewed-by: Sebastian Jansson \u003csrte@webrtc.org\u003e\n\u003e \u003e Cr-Commit-Position: refs/heads/master@{#31558}\n\u003e \n\u003e Bug: webrtc:11340\n\u003e Change-Id: I2ea49ee87ee9ff409044e34a777a7dd0ae0a077f\n\u003e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/177984\n\u003e Commit-Queue: Erik Språng \u003csprang@webrtc.org\u003e\n\u003e Reviewed-by: Sebastian Jansson \u003csrte@webrtc.org\u003e\n\u003e Cr-Commit-Position: refs/heads/master@{#31613}\n\nTBR\u003dsprang@webrtc.org,srte@webrtc.org\n\nChange-Id: I3b2b25898ce88b64c2322f68ef83f9f86ac2edb0\nNo-Presubmit: true\nNo-Tree-Checks: true\nNo-Try: true\nBug: webrtc:11340\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/178563\nReviewed-by: Erik Språng \u003csprang@webrtc.org\u003e\nCommit-Queue: Erik Språng \u003csprang@webrtc.org\u003e\nCr-Commit-Position: refs/heads/master@{#31614}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "854a18aa54ab57e4b1d7dd55a2d9766cb82e9166",
      "old_mode": 33188,
      "old_path": "call/rtp_video_sender.cc",
      "new_id": "5f8d2df96556e93833dca6a079f90b0e35dfcbfe",
      "new_mode": 33188,
      "new_path": "call/rtp_video_sender.cc"
    },
    {
      "type": "modify",
      "old_id": "e364729236c879d72b310ded6c45f36637a14b11",
      "old_mode": 33188,
      "old_path": "call/rtp_video_sender.h",
      "new_id": "0c277d6aa7168e918390e6dd32fdc11c9f77731f",
      "new_mode": 33188,
      "new_path": "call/rtp_video_sender.h"
    },
    {
      "type": "modify",
      "old_id": "7e7a01b62862704bd43070289bdf183623ca905e",
      "old_mode": 33188,
      "old_path": "modules/pacing/pacing_controller.cc",
      "new_id": "07e265b0da6e4b9f54d8c233a4d2feb6e0426dcc",
      "new_mode": 33188,
      "new_path": "modules/pacing/pacing_controller.cc"
    },
    {
      "type": "modify",
      "old_id": "775fdc9557e6e7a9503562e79199b2be103e7681",
      "old_mode": 33188,
      "old_path": "modules/pacing/pacing_controller.h",
      "new_id": "6e361aebb4d3b9d55054e4fb9eb8de6824e3c1fa",
      "new_mode": 33188,
      "new_path": "modules/pacing/pacing_controller.h"
    },
    {
      "type": "modify",
      "old_id": "9194d079a9ed1b99ec034141eca5226e8ba3c022",
      "old_mode": 33188,
      "old_path": "modules/pacing/pacing_controller_unittest.cc",
      "new_id": "bc4d47333e421f9b40e643c04bb255fec2c9aaf3",
      "new_mode": 33188,
      "new_path": "modules/pacing/pacing_controller_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "833c56d6fdf39fb7b0221a4378e582e309ed633a",
      "old_mode": 33188,
      "old_path": "modules/pacing/packet_router.cc",
      "new_id": "e75b5a337a6571ee0cddd217b822efc220a7cb05",
      "new_mode": 33188,
      "new_path": "modules/pacing/packet_router.cc"
    },
    {
      "type": "modify",
      "old_id": "b9395073bc2489f8adff024091fcda09d7e87d2f",
      "old_mode": 33188,
      "old_path": "modules/pacing/packet_router.h",
      "new_id": "73837f2ffe6b9734e3e12f459a211bd484e8c955",
      "new_mode": 33188,
      "new_path": "modules/pacing/packet_router.h"
    },
    {
      "type": "modify",
      "old_id": "b02f3877683f640bf6c76ebdd9197ddead001a6c",
      "old_mode": 33188,
      "old_path": "modules/pacing/task_queue_paced_sender_unittest.cc",
      "new_id": "876cd96cfd581de673e2117e1067824acf461027",
      "new_mode": 33188,
      "new_path": "modules/pacing/task_queue_paced_sender_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "46c310e276ec50b6f4684200a70182382cf34067",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/include/rtp_rtcp_defines.h",
      "new_id": "869f3d218a711b5e602cac147ac1f6c52ac07a3f",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/include/rtp_rtcp_defines.h"
    },
    {
      "type": "modify",
      "old_id": "d597b1e289d9a5de10f93799de63e4b6eb3f3da4",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/mocks/mock_rtp_rtcp.h",
      "new_id": "08b38eee7b6a43a6f9c6eaa3463c918861fc362e",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/mocks/mock_rtp_rtcp.h"
    },
    {
      "type": "modify",
      "old_id": "9aaf9a52e66f2673cd7300c1ffde65ed04dd7c30",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_packet_to_send.h",
      "new_id": "8997bce0d2fd6a8128db13f90b233132bcdf42f2",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_packet_to_send.h"
    },
    {
      "type": "modify",
      "old_id": "9f8bac54f4446ba0664e54ed90c761432876fb33",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_rtcp_impl.cc",
      "new_id": "7b9586ad78f3362ba3d1b1a173aaaea8dd4907b8",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_rtcp_impl.cc"
    },
    {
      "type": "modify",
      "old_id": "1fa57db372fa553447bb12c7945cff10b9ecda65",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_rtcp_impl.h",
      "new_id": "989b8d37176dfc057de3285ff9821d0b344ac916",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_rtcp_impl.h"
    },
    {
      "type": "modify",
      "old_id": "67cb70e1cb4c468a5a2c4a7c134e11759c34ac24",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_rtcp_impl2.cc",
      "new_id": "70f05d70858f84c3bfc3d5859eceb86734ddf4ff",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_rtcp_impl2.cc"
    },
    {
      "type": "modify",
      "old_id": "932c43656d257f6876bce529f13ce64ae046b31c",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_rtcp_impl2.h",
      "new_id": "c04edfcb7f2810b867672cb6be57ec5894f1306f",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_rtcp_impl2.h"
    },
    {
      "type": "modify",
      "old_id": "f763da244cfda59fb2f7d63470dafb8f65767bed",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_rtcp_interface.h",
      "new_id": "440837fc5df0bd3fe3d26ca6d587a4bf8c157827",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_rtcp_interface.h"
    },
    {
      "type": "modify",
      "old_id": "c8f10ee1f27e7ff69fd3f36bc12c206a612d0116",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_sender_egress.cc",
      "new_id": "7196dcd6593a470befa6c7e8d4ac4697f9a793ed",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_sender_egress.cc"
    },
    {
      "type": "modify",
      "old_id": "e2cc00ff24a95ac064683dd284a458387ef2bbc3",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_sender_egress.h",
      "new_id": "5b50ddfb93a32b72065e122ada612d25480a4747",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_sender_egress.h"
    },
    {
      "type": "modify",
      "old_id": "9e1aefa6f911ffbcac819e9916dbd0606b8a287d",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_sender_unittest.cc",
      "new_id": "dbd474cbe1282358b897e8c189140d5a5b1aba44",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_sender_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "7d870d25a87a48148a24ea9ab6a6454c525a9cf4",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/rtp_sender_video.cc",
      "new_id": "9ebfa77b8a8abfbd9269a42cab5f3cec5485ad49",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/rtp_sender_video.cc"
    },
    {
      "type": "modify",
      "old_id": "04cb59dc7d069d335fcf846114555851042c9f99",
      "old_mode": 33188,
      "old_path": "modules/rtp_rtcp/source/ulpfec_generator.cc",
      "new_id": "265fa4d1ac1a6c59f48f4aaa08b58fa0167dbf7b",
      "new_mode": 33188,
      "new_path": "modules/rtp_rtcp/source/ulpfec_generator.cc"
    },
    {
      "type": "modify",
      "old_id": "873ef639bae09f0c66b8964dc98dfd849f90ec5f",
      "old_mode": 33188,
      "old_path": "test/scenario/video_stream_unittest.cc",
      "new_id": "37afe1b1e7f5df50a504edeea447a2dd941df9f1",
      "new_mode": 33188,
      "new_path": "test/scenario/video_stream_unittest.cc"
    }
  ]
}
