)]}'
{
  "commit": "ad70609509a98138cd6391828e4adafeb2f35b3d",
  "tree": "a3685c86363cab3766de57b18cf37b1af321a26c",
  "parents": [
    "91313139131b3b28e6eac95a7d762d8f9420ce63"
  ],
  "author": {
    "name": "Henrik Boström",
    "email": "hbos@webrtc.org",
    "time": "Fri Dec 04 08:37:47 2020"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Fri Dec 04 10:35:53 2020"
  },
  "message": "Implement fake PixelLimitResource for TestBed.\n\nThis CL implements a Resource that aggressively reports overuse or\nunderuse until the encoded stream has the max pixels specified. The\npixel limit is controlled with a field trial, e.g:\n\n--force-fieldtrials\u003d\"WebRTC-PixelLimitResource/Enabled-307200/\"\n\nThis caps the resolution to 307200 (\u003d640x480). This can be used by the\nTestBed to simulate being CPU limited. Note that the resource doesn\u0027t\ncare about degradation preference at the moment, so if the degradation\npreference would be set to \"maintain-resolution\" the PixelLimitResource\nwould never stop reporting overuse and we would quickly get a low-FPS\nstream.\n\nPixelLimitResource runs a repeating task and reports overuse, underuse\nor neither every 5 seconds. This ensures we quickly reach the desired\nresolution.\n\nUnit tests are added. I did not add any integration tests (I think\nthat\u0027s overkill for a testing-only resource) but I have manually\nverified that this works as intended.\n\nThis CL also moves the FakeVideoStreamInputStateProvider into a test/\nfolder and exposes video_stream_adapter.cc\u0027s GetLowerResolutionThan().\n\nBug: webrtc:12261\nChange-Id: Ifbf7c4c05e9dd2843543589bebef3f49b18c38c0\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/195600\nReviewed-by: Evan Shrubsole \u003ceshr@google.com\u003e\nReviewed-by: Ilya Nikolaevskiy \u003cilnik@webrtc.org\u003e\nCommit-Queue: Henrik Boström \u003chbos@webrtc.org\u003e\nCr-Commit-Position: refs/heads/master@{#32771}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3ecfbecf0414758c6b3806171f20b87d4871396f",
      "old_mode": 33188,
      "old_path": "call/adaptation/BUILD.gn",
      "new_id": "f782a8d5bc3d611cbf4dc61912e2ea1e4500a4fd",
      "new_mode": 33188,
      "new_path": "call/adaptation/BUILD.gn"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ce92dfb2047307cab2fc17ffa20e9a658e602510",
      "new_mode": 33188,
      "new_path": "call/adaptation/test/fake_video_stream_input_state_provider.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "93f7dba7e66fb30c1bcd495a9d3cceea5089fa37",
      "new_mode": 33188,
      "new_path": "call/adaptation/test/fake_video_stream_input_state_provider.h"
    },
    {
      "type": "modify",
      "old_id": "4fc4743a3222373c6ef3b4e2ac0930408e420c04",
      "old_mode": 33188,
      "old_path": "call/adaptation/video_stream_adapter.cc",
      "new_id": "13eb0349a399a605be199320ad7b89018b1e6306",
      "new_mode": 33188,
      "new_path": "call/adaptation/video_stream_adapter.cc"
    },
    {
      "type": "modify",
      "old_id": "a4e93e468c7d9d3346b03812a7b4b1636bb809dd",
      "old_mode": 33188,
      "old_path": "call/adaptation/video_stream_adapter.h",
      "new_id": "2b55c3d49cac37892533a333d622d4bb2ef6642d",
      "new_mode": 33188,
      "new_path": "call/adaptation/video_stream_adapter.h"
    },
    {
      "type": "modify",
      "old_id": "534be61fcb7a16d095eb5c2ed492b35620dc2d91",
      "old_mode": 33188,
      "old_path": "call/adaptation/video_stream_adapter_unittest.cc",
      "new_id": "aba9cf1f2951343060df04a5d5c07031ce858464",
      "new_mode": 33188,
      "new_path": "call/adaptation/video_stream_adapter_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "755e2f6b4c059967b3f9a965cb7d594438347f97",
      "old_mode": 33188,
      "old_path": "video/adaptation/BUILD.gn",
      "new_id": "c5afb02c83293ae1407bd744475940be9585e850",
      "new_mode": 33188,
      "new_path": "video/adaptation/BUILD.gn"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "96c8cac737fdae60f5719244b2fc106f38d023a8",
      "new_mode": 33188,
      "new_path": "video/adaptation/pixel_limit_resource.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b42f92434feada17088d06d89f7ac89f4ac458bb",
      "new_mode": 33188,
      "new_path": "video/adaptation/pixel_limit_resource.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7b633b3f6897e8540ca64bebec43a0fb649ba6fc",
      "new_mode": 33188,
      "new_path": "video/adaptation/pixel_limit_resource_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "340b2e85085a7b3ee51af5355767add5f2660a8c",
      "old_mode": 33188,
      "old_path": "video/adaptation/video_stream_encoder_resource_manager.cc",
      "new_id": "8d532f3e2ce3924fefb2dce11606b77530eeb8f5",
      "new_mode": 33188,
      "new_path": "video/adaptation/video_stream_encoder_resource_manager.cc"
    },
    {
      "type": "modify",
      "old_id": "623d17adc3fb5978d72b98756d038797ca1d602a",
      "old_mode": 33188,
      "old_path": "video/adaptation/video_stream_encoder_resource_manager.h",
      "new_id": "30bab53cbfa99a03298c63f232098246cd797e1f",
      "new_mode": 33188,
      "new_path": "video/adaptation/video_stream_encoder_resource_manager.h"
    },
    {
      "type": "modify",
      "old_id": "14f356623dda3cb93ddfa961314c5413c11b6921",
      "old_mode": 33188,
      "old_path": "video/video_stream_encoder.cc",
      "new_id": "22d4ac50f3581f67cec3e00488e9840b7bfc1243",
      "new_mode": 33188,
      "new_path": "video/video_stream_encoder.cc"
    }
  ]
}
