)]}'
{
  "commit": "02400a3e5a54aceee28fc8ed0b7a35e1c3984df3",
  "tree": "95c3aa0bb772a625ec729b22ebb3278f3bcbb70a",
  "parents": [
    "8bc865bc70ad4620d89cae7e1824917837fd4c67"
  ],
  "author": {
    "name": "Alessio Bazzica",
    "email": "alessiob@webrtc.org",
    "time": "Wed Apr 14 17:09:17 2021"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Tue Apr 20 21:14:48 2021"
  },
  "message": "[cherry pick] AGC2: retuning and large refactoring\n\n- Bug fix: the desired initial gain quickly dropped to 0 dB hence\n  starting a call with a too low level\n- New tuning to make AGC2 more robust to VAD mistakes\n- Smarter max gain increase speed: to deal with an increased threshold\n  of adjacent speech frames, the gain applier temporarily allows a\n  faster gain increase to deal with a longer time spent waiting for\n  enough speech frames in a row to be observed\n- Saturation protector isolated from `AdaptiveModeLevelEstimator` to\n  simplify the unit tests for the latter (non bit-exact change)\n- AGC2 adaptive digital config: unnecessary params deprecated\n- Code readability improvements\n- Data dumps clean-up and better naming\n\n(cherry picked from commit 980c4601e188a80bb435edf0c3e345899cd18c59)\nNOTRY\u003dtrue\n\nBug: chromium:1199259,webrtc:7494\nChange-Id: I4e36059bdf2566cc2a7e1a7e95b7430ba9ae9844\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/215140\nCommit-Queue: Alessio Bazzica \u003calessiob@webrtc.org\u003e\nReviewed-by: Jesus de Vicente Pena \u003cdevicentepena@webrtc.org\u003e\nCr-Original-Commit-Position: refs/heads/master@{#33736}\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/215782\nReviewed-by: Minyue Li \u003cminyue@webrtc.org\u003e\nCr-Commit-Position: refs/branch-heads/4472@{#7}\nCr-Branched-From: 3e0c60ba4ef28a9f26fe991e5eec3150402c7dd3-refs/heads/master@{#33644}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "910b58c9c263d10edf3336feb32756fb9cef26db",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/BUILD.gn",
      "new_id": "4c6cfab576d847450d0fe0bdc970d387ff5f9334",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/BUILD.gn"
    },
    {
      "type": "modify",
      "old_id": "37f11d2f25081fad5b6f7d9f87c61a83f5e6ae16",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/adaptive_agc.cc",
      "new_id": "8bf192e77f90752b3bca8aac10994ce1010b1dab",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/adaptive_agc.cc"
    },
    {
      "type": "modify",
      "old_id": "525cab7561477c5a424f1d111ce0d2a6942ee3c9",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/adaptive_agc.h",
      "new_id": "fe814446ff873cf9fe9eb11a6fc763e5d84951f2",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/adaptive_agc.h"
    },
    {
      "type": "modify",
      "old_id": "8a564647d2df0549a2ab3ff18a90d0fc605c76a9",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/adaptive_digital_gain_applier.cc",
      "new_id": "8a8a7fdc9bd97c39dfacfadd3b43b507cbf12741",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/adaptive_digital_gain_applier.cc"
    },
    {
      "type": "modify",
      "old_id": "a65379f5be23108731f5184277c4f6807e167448",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/adaptive_digital_gain_applier.h",
      "new_id": "74220fa861cfd0d506882155d0384bb2524ecbde",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/adaptive_digital_gain_applier.h"
    },
    {
      "type": "modify",
      "old_id": "e2df700422ff9255b8e5d163f678922f346ffd2d",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/adaptive_digital_gain_applier_unittest.cc",
      "new_id": "ee9cb02ed6633f0e42eaca72d18dc8dc6bd2e411",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/adaptive_digital_gain_applier_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "9857471eb9a4973d4845b938c7a156090a801b83",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/adaptive_mode_level_estimator.cc",
      "new_id": "507aa12cb4ecdf5cffffa8ac3a6aac3d5e6449f2",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/adaptive_mode_level_estimator.cc"
    },
    {
      "type": "modify",
      "old_id": "213fc0f0c8a0b07e18c1e4953329c29107360206",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/adaptive_mode_level_estimator.h",
      "new_id": "6d4493858794548844a26440b2781afcd4b11256",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/adaptive_mode_level_estimator.h"
    },
    {
      "type": "modify",
      "old_id": "ea35797f5e06bc31713b7273cb4492710ae0b855",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/adaptive_mode_level_estimator_unittest.cc",
      "new_id": "c55950ac29df235e3b1b3d8a7368e3fb94be8353",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/adaptive_mode_level_estimator_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "ccd04bcc04ca1fe2a8cd5f6f06aac0e5d488902a",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/agc2_common.h",
      "new_id": "0f806d3938aaae0b4b269ede95f4227b7417e42f",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/agc2_common.h"
    },
    {
      "type": "modify",
      "old_id": "f52ea3caf5e3745dea66e8dbe04c00eb141a41cf",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/agc2_testing_common_unittest.cc",
      "new_id": "79c3cc95d92bea5db666eff82e1acc7097a6cb55",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/agc2_testing_common_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "9636136e4aa2cf5af2ab79194f47789ff92d534f",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/fixed_digital_level_estimator.cc",
      "new_id": "3e9bb2efbd31d13ad2479803cf99d85c705b3be6",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/fixed_digital_level_estimator.cc"
    },
    {
      "type": "modify",
      "old_id": "7547f8e2ed1aa05e096c4414caf23f602f77c01e",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/fixed_digital_level_estimator_unittest.cc",
      "new_id": "97b421d04ca3b92f39e6cdd166b37241518f5c4c",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/fixed_digital_level_estimator_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "69652c5a72e45a51c41ca0b52b1ff443d31fd8ed",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/interpolated_gain_curve.h",
      "new_id": "af993204ce33bd363fc261a6b472b59af7177dda",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/interpolated_gain_curve.h"
    },
    {
      "type": "modify",
      "old_id": "67d34e517b853781a4000ad33d366c8e968599d1",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/interpolated_gain_curve_unittest.cc",
      "new_id": "7861ae997da2ee2c95f24e7f696af2ff2f22b16e",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/interpolated_gain_curve_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "ae8a50113e69ba160e1031f14ef2a1d26ca785c0",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/noise_level_estimator.cc",
      "new_id": "10e8437d3f9964326997b123de2e9c05c0c792bd",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/noise_level_estimator.cc"
    },
    {
      "type": "modify",
      "old_id": "b64fcdb71fa1835a1cdd0b9607089cb326001f6b",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/saturation_protector.cc",
      "new_id": "d6f21ef891bcbc3c1f4a8a8951ab81a101d8e73d",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/saturation_protector.cc"
    },
    {
      "type": "modify",
      "old_id": "88be91a79bd8cb9295dbf363d348b7a771234065",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/saturation_protector.h",
      "new_id": "0c384f1fa0b161b0ae7f691d42deed4414649bdc",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/saturation_protector.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "41efdad2c8a3c38b6ff785b2a86d5aed1bd0cec6",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/saturation_protector_buffer.cc"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e17d0998c44f66dc9a5d4e0b767ab9abf539f9c0",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/saturation_protector_buffer.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "22187bf02777df4ce3843a4efa837ec15f1d5514",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/saturation_protector_buffer_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "2c5ee5b0363085fff58c6569a9ff140b4779da60",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/saturation_protector_unittest.cc",
      "new_id": "dc16dc254cfa7982f6d0d9d7572295c4982c6eab",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/saturation_protector_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "597c09c902e62681839d2a585c1e9485105c7af2",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/vad_with_level.cc",
      "new_id": "034f2b6ac0f6614001a1e1ac7b86837b39265b5c",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/vad_with_level.cc"
    },
    {
      "type": "modify",
      "old_id": "386f162de6d06180400df8121e58891731378280",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/vad_with_level.h",
      "new_id": "7cd93d6f2bbd1d752c97f6eb6f953bf8033e1361",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/vad_with_level.h"
    },
    {
      "type": "modify",
      "old_id": "fd8265e9b48eeafd135656710dbdb9a83770e3b0",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/agc2/vad_with_level_unittest.cc",
      "new_id": "99b0136376d0b6a462069257ccc6427568a7a0a8",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/agc2/vad_with_level_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "6c5e24e165b7b0231bb9255c90d6d781ecb23844",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/gain_controller2.cc",
      "new_id": "9e3e8e7cae10288612e9a36605080639383d50a3",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/gain_controller2.cc"
    },
    {
      "type": "modify",
      "old_id": "274c821081c22465b8360f8d45b10f8cba424498",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/gain_controller2_unittest.cc",
      "new_id": "815d58efe74fbdd7f3436008f3047c4a2e8d7336",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/gain_controller2_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "790b1a71dc2dcde421f153b60cffffbac42724c3",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/include/audio_processing.cc",
      "new_id": "fa45230c6b6db76a4fa2f3198a6d122740db8205",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/include/audio_processing.cc"
    },
    {
      "type": "modify",
      "old_id": "781b17e44d0fb588a10dda6f6448828b6293afe9",
      "old_mode": 33188,
      "old_path": "modules/audio_processing/include/audio_processing.h",
      "new_id": "01bb7c33c7f62965ef2959ba22147a3a3c5e2a25",
      "new_mode": 33188,
      "new_path": "modules/audio_processing/include/audio_processing.h"
    }
  ]
}
