)]}'
{
  "commit": "b43cd86e64db64e83b75e1b8eee1d451ca697f4a",
  "tree": "ab4db546453fb4b78404907890dd802aef96fbb5",
  "parents": [
    "41ffc51e4504e02ed12f9e0f655617e3931af63c"
  ],
  "author": {
    "name": "Sergey Silkin",
    "email": "ssilkin@webrtc.org",
    "time": "Mon Jul 08 05:42:17 2024"
  },
  "committer": {
    "name": "WebRTC LUCI CQ",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Mon Jul 08 12:00:43 2024"
  },
  "message": "Increase frame rate precision in libaom AV1 encoder wrapper\n\nBefore this change the AV1 encoder wrapper converted target frame rate from double to integer with rounding to the middle. That approach resulted in a bitrate mismatch caused by rounding error. The mismatch was especially high at low frame rates. For example, at target frame rate 1.4fps the bitrate mismatch reached 40%:\n\nout/debug/video_codec_perf_tests --gtest_also_run_disabled_tests --gtest_filter\u003d*EncodeDecode --framerate_fps\u003d1.4 --width\u003d320 --height\u003d180 --bitrate_kbps\u003d32 --num_frames\u003d600\n...\nRESULT s0t0_bitrate_mismatch_pct: DISABLED_EncodeDecode\u003d {39.171875,0} n%\n\nAfter the change the mismatch reduced to ~2% in the same scenario:\nRESULT s0t0_bitrate_mismatch_pct: DISABLED_EncodeDecode\u003d {-2.178125,0} n%\n\nBug: b/337757868\nChange-Id: Ia51f92b3dfdce103eed1d04cac0e084b69fa8213\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/356500\nReviewed-by: Erik Språng \u003csprang@webrtc.org\u003e\nCommit-Queue: Sergey Silkin \u003cssilkin@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#42601}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "93eeddd8b2736129cfb62a64e91897b5b41d735c",
      "old_mode": 33188,
      "old_path": "modules/video_coding/codecs/av1/libaom_av1_encoder.cc",
      "new_id": "0fbba831feb6c4505edd8812fd35f4161b333662",
      "new_mode": 33188,
      "new_path": "modules/video_coding/codecs/av1/libaom_av1_encoder.cc"
    }
  ]
}
