)]}'
{
  "commit": "d6e868f44e202eb917503e2e850d7219575878f6",
  "tree": "dbd90c1f6fc273720a9c4aa4ac0c9feedc0ff91f",
  "parents": [
    "3ed2cbebb758ac7619cc94b33ffafcbcaefc6283"
  ],
  "author": {
    "name": "Ihor Buhaiov",
    "email": "freedbrt@gmail.com",
    "time": "Wed Oct 07 12:26:59 2026 +0200"
  },
  "committer": {
    "name": "Marco Paniconi",
    "email": "marpan@google.com",
    "time": "Tue Oct 13 16:51:32 2026 -0700"
  },
  "message": "rtc: Keep the active map across SVC layer restore\n\nWith SVC, av1_restore_layer_context() copies the layer rate control\nstate into cpi-\u003erc during encode. The active map control runs before\nthat, so the copy overwrites percent_blocks_inactive with the layer\nvalue, which is always 0. av1_apply_active_map() then sees no inactive\nblocks and turns the map off. The active map never works with temporal\nlayers.\n\nKeep percent_blocks_inactive across the restore, like frames_since_key.\nOnly do it with one spatial layer. The map is stored at full\nresolution, and lower spatial layers would read it with their own\nmi_cols, so spatial SVC keeps the map off as before.\n\nAdd ActiveMapSvcTest. With every block inactive, each frame after the\nkey frame should be under 200 bytes. Without the fix the L1T2 cases\nfail with frames of 269 to 3354 bytes.\n\nChange-Id: I051668f84117eec91daf08acbda96b8727d17b12\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "af22f8ff70f25277eefd44f86fb354e877a1fb0a",
      "old_mode": 33188,
      "old_path": "av1/encoder/svc_layercontext.c",
      "new_id": "0f549a14fc42d1fbb3ae7724c8f2a1981106aa39",
      "new_mode": 33188,
      "new_path": "av1/encoder/svc_layercontext.c"
    },
    {
      "type": "modify",
      "old_id": "be0bbb41a3a9db7aa66bbe69ae8f8428311a988d",
      "old_mode": 33188,
      "old_path": "test/active_map_test.cc",
      "new_id": "be3d8d26fde76df2c2e2dfa0c80d52b4419cfb52",
      "new_mode": 33188,
      "new_path": "test/active_map_test.cc"
    }
  ]
}
