)]}'
{
  "commit": "a68a06af2b7f5ac1ce12c8fc46bbff67cfdff64f",
  "tree": "3e122093f125b31d9d95f90fa58f4c5dcb6135ab",
  "parents": [
    "cfc9f92fa8b959b2a1c598920840d9c5fe3e4845"
  ],
  "author": {
    "name": "Jonas Larsson",
    "email": "ljonas@google.com",
    "time": "Tue Mar 05 11:59:42 2019 -0800"
  },
  "committer": {
    "name": "Jonas Larsson",
    "email": "ljonas@google.com",
    "time": "Wed Mar 06 11:58:24 2019 -0800"
  },
  "message": "Render full size overlays, draw with glvideomixer\n\nWith this approach there\u0027s no need for downscaling as video and\noverlay rendering are decoupled in glvideomixer, so we can do\n1080p@30 in real time. Video frames are displayed at their\nnormal rate and overlays are rendered at a potentially slower\nrate if we can\u0027t keep up without the video stalling.\n\nThe main improvment here is a custom source element that enables\nus to hit a fast GL texture upload path where we draw the overlay\nwith cairo/rsvg straight into a dma-buf (allocated by ion) and use\nthat as a texture in glvideomixer.\n\nChange-Id: Icf69e29ab55a95122754a6e9f2c63ac7adc2d465\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9c5febd3dd2de1d5e13e6dcc020a51d4daa48a19",
      "old_mode": 33188,
      "old_path": "edgetpuvision/apps.py",
      "new_id": "e84df8a197d6c49d57b7df2813897aa7d7429188",
      "new_mode": 33188,
      "new_path": "edgetpuvision/apps.py"
    },
    {
      "type": "modify",
      "old_id": "5a0c5626c0902078caa88b962a39ac975b2a842c",
      "old_mode": 33188,
      "old_path": "edgetpuvision/gst_native.py",
      "new_id": "acce316a6715f3c9cb11285a5c1f66317c25b9c2",
      "new_mode": 33188,
      "new_path": "edgetpuvision/gst_native.py"
    },
    {
      "type": "modify",
      "old_id": "6c0018f7eb8243cd2dc4acbdaff36798a591d2ae",
      "old_mode": 33188,
      "old_path": "edgetpuvision/gstreamer.py",
      "new_id": "11d2560feb2bf3eee21269cc9e4111f3f628ae94",
      "new_mode": 33188,
      "new_path": "edgetpuvision/gstreamer.py"
    },
    {
      "type": "modify",
      "old_id": "d79bf2b1caa5507cfd935b462628c70a6aaeba02",
      "old_mode": 33188,
      "old_path": "edgetpuvision/pipelines.py",
      "new_id": "739d400b4a96cafb991e62a496fbdf10a087c308",
      "new_mode": 33188,
      "new_path": "edgetpuvision/pipelines.py"
    }
  ]
}
