)]}'
{
  "commit": "d78587b2ba740bed09e21ad8c0cba69f1fc2977e",
  "tree": "4b8d6e6c2f8f463ffb4d24e92bd312beff90029f",
  "parents": [
    "73d3b911599af03a23a0c5666f146c82f6681a77"
  ],
  "author": {
    "name": "zhijie-zh",
    "email": "zhijie.zhang@intel.com",
    "time": "Fri Aug 14 16:22:46 2026 +0800"
  },
  "committer": {
    "name": "intel-mediadev",
    "email": "mediadev@intel.com",
    "time": "Fri Aug 14 16:40:29 2026 +0800"
  },
  "message": "[Encode] Enable pro-video fixed-function encode on Linux VA-API\n\n* [Encode] Enable pro-video fixed-function encode on Linux VA-API\nAdd net-new pro-video all-intra encode support on the Linux VA-API\npath and bring up the target platform so the codec is advertised and\nruns end-to-end.\n- New VA-API encode DDI that translates VA \u003c-\u003e HAL and forwards to the\n  shared encode pipeline; factory-registered for the pro-video encode\n  profile and slice entrypoint. The DDI is a thin translator with no\n  re-implemented encode logic and no frame-header regeneration.\n- New encode capability table for the target platform revision\n  (RT-format, max width/height, rate control, packed-header caps),\n  gated to that platform. Encode caps are moved out of the previous\n  platform\u0027s table, which now retains decode support only.\n- user feature the target device id to its platform id in the Linux\n  sysinfo and SKU/WA setup, so the platform is brought up and the\n  encode profile is advertised (previously it was never enabled on\n  Linux, so config/context creation failed).\n- user feature PRE_PATCHED patch-list entries at every encode\n  address-write site in the media pipeline command implementation, so\n  Linux resolves resource addresses correctly.\n- Skip patch-list registration when the OS provides no patch hooks,\n  so mock-OS command code-gen unit tests treat a missing patch list as\n  \"nothing to register\" and succeed; Linux (which always supplies the\n  hooks) is unchanged.\n- Map Media_Format_YUY2 to GMM_FORMAT_YUY2_2x1 (32bpp 2x1 packed 4:2:2)\n  so a linear YUY2 surface gets the tighter render pitch matching the\n  reference implementation; tiled YUY2 and sibling packed formats are\n  unchanged.\n- Enable the Linux build wiring for the encode feature and update the\n  proprietary DRM mock to present the target device id for platform\n  resolution under unit test.\nKeep the open source tree free of net-new encode code: the\nUseNextEncodePipeline() bridge and the linear-surface path use\n_MEDIA_RESERVED include-hooks with the implementation fragments in the\nrestricted DDI tree; linear surfaces are requested from the app via a\nVA external buffer descriptor rather than reserved DDI hooks. The\nshared encode/decode caps-includes aggregator is relocated to a\ncommon/ ddi directory. Net open-tree diff vs upstream is only the\nguard scaffolding.\nWhy: the codec\u0027s fixed-function encode was previously unavailable on\nLinux and the target platform was never brought up, so the encode\nprofile was unadvertised and initialization failed. These changes\ncomplete the Linux enablement so the encode produces command buffers\nmatching the validated CI-Daily reference.\nVerified: release-internal build (defines _MEDIA_RESERVED) is clean;\nall 45 media ULTs pass; command-buffer equivalence suites\n8396002/3/4 pass.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6659c7420ebcf4c6fa8838d2009f39df09323591",
      "old_mode": 33188,
      "old_path": "media_softlet/linux/common/codec/ddi/enc/ddi_encode_base_specific.h",
      "new_id": "6ccdc75a3ad3c0048ea99a2f78658c2c5a840e10",
      "new_mode": 33188,
      "new_path": "media_softlet/linux/common/codec/ddi/enc/ddi_encode_base_specific.h"
    },
    {
      "type": "modify",
      "old_id": "7bc77241aa116a14662d094e528fb796948e87b1",
      "old_mode": 33188,
      "old_path": "media_softlet/linux/common/codec/ddi/enc/ddi_encode_functions.cpp",
      "new_id": "ce38269fad3f68ad3c3cf6abec45138c9d980e88",
      "new_mode": 33188,
      "new_path": "media_softlet/linux/common/codec/ddi/enc/ddi_encode_functions.cpp"
    }
  ]
}
