)]}'
{
  "log": [
    {
      "commit": "e0496a2a4532590bb944192f9a561f4a48d07ab5",
      "tree": "ba0c2997034127f1e3ca92d80acd0223b2a0a5e3",
      "parents": [
        "7e10198833432fe652f5343540bfb4430adb6713"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 13 13:13:52 2020 -0800"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Thu Feb 13 13:13:52 2020 -0800"
      },
      "message": "Use SharedRefBase::make to allocate.\n\nSharedRefBase now encapsulates heap allocation in order to guard against\nsome types of double-ownership.\n\nBug: 149249948\nTest: TH\nChange-Id: Ida943c895225331a853e4c8da54454d60b17000a\n"
    },
    {
      "commit": "c0d1d0eeb4b94c13c8dd508b8136d8e1d95a59ac",
      "tree": "39fb8d37db955d523bf231ffcbf248b6109a4980",
      "parents": [
        "0564f53084007a2358f95a9cb063befbf81a9d5a"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Nov 24 13:21:04 2019 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 27 13:19:56 2019 -0800"
      },
      "message": "DrmHal: use DrmUtils to create IDrmFactories\n\nBug: 134787536\nTest: MediaDrmClearkeyTest\nChange-Id: I7b269b6888b925f109b2a6a378fc15e675fc011a\n"
    },
    {
      "commit": "935388159891146110e21e71cfce461b82b9f046",
      "tree": "1f3a3ea2eb6048786178c390d6307da51f37e9de",
      "parents": [
        "b5d2afa23364d3f7f652f07f72d407c30116d226"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 12 12:21:35 2019 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 27 18:50:53 2019 +0000"
      },
      "message": "libmediadrm: refactor bundle dependency\n\nBundle dependency now lives in DrmMetricsConsumer,\nwhich is part of the new libmediadrmmetrics_consumer.\n\nBug: 134787536\nTest: DrmMetrics_test\nChange-Id: I09b0981b6f97668c2572fb28d0e98de72068376b\n"
    },
    {
      "commit": "6152d7c7eaf705bbc9481fff90672e7a62caf489",
      "tree": "d6b10fcbb311fa8b63ac1c52634112655bfa1052",
      "parents": [
        "22a082cd73cc2708e232d9eaa8d59c6c8869f3b6"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 19 22:54:27 2019 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 21 23:01:02 2019 +0000"
      },
      "message": "DrmHal: remove permission check\n\nPermission check should now be performed in HIDL HALs. The removed app-side\npermission check does not accomplish much because any app can communicate\nwith a Drm HIDL HAL directly.\n\nBug: 134787536\nTest: CastV2SignerTest\nChange-Id: I4d90effbc0a265459829c63e843b9a5d16e75359\n"
    },
    {
      "commit": "22a082cd73cc2708e232d9eaa8d59c6c8869f3b6",
      "tree": "d2b1431f03226b35473b65c895df20346342dedd",
      "parents": [
        "8aab9af295c7e4d9a503a3f11831e5b7e4d66a8a",
        "82ea6be9a7750feb6898b7146f286825e59c3e98"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 20 20:16:42 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Nov 20 20:16:42 2019 +0000"
      },
      "message": "Merge \"mediadrm: use stable C interface to record metrics\""
    },
    {
      "commit": "0f3a8a0d989240412deab149e7383fb5277f3804",
      "tree": "b870e34d8e4031f0809b40a6056e515a8905f6d6",
      "parents": [
        "bb4a40fb1347ffe7f1a9aa0f03523477439af92c"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 14 15:43:39 2019 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Nov 19 22:02:28 2019 +0000"
      },
      "message": "DrmSessionManager: use ndk resourcemanager\n\nBug: 134787536\nBug: 144588885\nTest: DrmSessionManagerTest\nTest: DrmSessionManager_test\nTest: MediaDrmClearkeyTest.testGetNumberOfSessions\nTest: WidevineGenericOpsTests.testL1\nChange-Id: I2d0bf13d41b32fb5f17e097c0097c1c596c7ab2f\n"
    },
    {
      "commit": "a54e81fc4210e40121a76573dea7abffb8b38d43",
      "tree": "50907fe8fc4d01a5e550efcdbb6b750990b613a8",
      "parents": [
        "463b4885b14020019bf35d2566230e17b3fcb9ac"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Aug 02 14:15:01 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 14 01:58:49 2019 +0000"
      },
      "message": "IDrmClient: remove IBinder inheritence\n\nBug: 134787536\nTest: GtsMediaTestCases\nChange-Id: I2c9ea8c1bd35165573a169015c78d052f080606c\n"
    },
    {
      "commit": "82ea6be9a7750feb6898b7146f286825e59c3e98",
      "tree": "58363ced735ec917ade18a190a7eaa540643c135",
      "parents": [
        "b752850e1c8665aede7b56788568a9c82bfc047f"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 07 17:47:23 2019 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 13 03:48:05 2019 +0000"
      },
      "message": "mediadrm: use stable C interface to record metrics\n\nBug: 134787536\nTest: dumpsys media.metrics\nChange-Id: I0156052334d0b52691cde82b71c5dc0f40d13fb5\n"
    },
    {
      "commit": "61e1c76cf34528ee7a5eca5642ff46c1250538c6",
      "tree": "b4b40e727153003963ce59c0e652eaef2c332087",
      "parents": [
        "b1150c2023250d8d72b3ac78d5f868046f3831c8"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Oct 31 21:26:58 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Nov 06 02:13:54 2019 +0000"
      },
      "message": "IDrmClient: remove Parcel from interface\n\nThis is part of the effort to remove binder-related classes from libmediadrm.\nThis change replaces a generic listener for Parcel data with separate\nlisteners for each event type.\n\nBug: 134787536\nTest: MediaDrmClearkeyTest\nTest: NativeMediaDrmClearkeyTest\nTest: MediaDrmMockTest\nChange-Id: I90cbb75b21cc63737994a01a2171caee5cfb84ad\n"
    },
    {
      "commit": "58e944d98b8230e4c9e87430702bc2612ebe3de7",
      "tree": "bdfa67bb162a8a6748e4f40e3f5e4c6cf3a907c3",
      "parents": [
        "cd75394ef902c43bdc38da88f40b62174c986ded",
        "aeef788a3b322470da8e79c949a3861547998dd3"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Oct 22 21:18:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Oct 22 21:18:33 2019 +0000"
      },
      "message": "Merge changes I76cdcce4,Ide5e9218\n\n* changes:\n  MediaMetrics: Update to use fluent style recording\n  MediaMetrics: Make submit one-way\n"
    },
    {
      "commit": "a87e69cf8b4b2b58f5bbe2aa89632b36e1e533c4",
      "tree": "3c06f8f07fe275b50c4969f4ba6b356fbe8e1f52",
      "parents": [
        "2392e6d96d80c44a140a3ab5c45a17b48d8216c1"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Oct 18 10:07:40 2019 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Oct 21 11:56:06 2019 -0700"
      },
      "message": "MediaMetrics: Make submit one-way\n\nRemove the unused session id to improve speed and clarity.\n\nTest: dumpsys media.metrics sanity, mediametrics_tests\nChange-Id: Ide5e9218811e110997fed19f43eb6a5fdc5812ec\n"
    },
    {
      "commit": "f6581aaac9469864be4bd915bca0c1ae9f37d55d",
      "tree": "eceafbd995bb43bfcd277bcd421df42e099cbc6e",
      "parents": [
        "01efa1083b0055c820b3b6cbf31909534b6c36aa",
        "181e6950a1ce5b9705c47c4b4e288d978cb7283a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Oct 21 18:26:28 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 21 18:26:28 2019 +0000"
      },
      "message": "Merge \"Convert IResourceManagerService to stable AIDL\""
    },
    {
      "commit": "181e6950a1ce5b9705c47c4b4e288d978cb7283a",
      "tree": "b92dc19041aec4465161b112f45185cd4598c09a",
      "parents": [
        "318b26e722112462f93df797bf47ca3dabc80048"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Oct 09 13:23:39 2019 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Oct 18 14:55:23 2019 -0700"
      },
      "message": "Convert IResourceManagerService to stable AIDL\n\nConvert with minimal change to the interface itself.\n\nAdd additional test to cover DrmSessionManager\u0027s usage\nof possible negative value field (which is signed now).\n\nbug: 142396029\ntest: ResourceManagerService_test, DrmSessionManager_test,\nCTS ResourceManagerServiceTest;\nManually check battery stats reporting.\n\nChange-Id: I5c537a54efc2663281c96ddbdbd4ee56f23c1adf\n"
    },
    {
      "commit": "2392e6d96d80c44a140a3ab5c45a17b48d8216c1",
      "tree": "00aa74acf6c5e9c9cb162d370b8d7f5d5e225f92",
      "parents": [
        "e2d53408222d3b06462073b9447529c781be6419",
        "cb1077dfa66e46ab6f43ba218d879e937700598d"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Oct 18 12:15:02 2019 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Oct 18 12:15:02 2019 -0700"
      },
      "message": "Merge \"libmediadrm: fix a use of an uninit value\" am: 3ba521f0ba am: 87e6db673a am: 544847bc34\nam: cb1077dfa6\n\nChange-Id: I219a8977b9d14a0f7de247676e7b3f259f8cffc1\n"
    },
    {
      "commit": "c42403d3efa8f76850a142812fe6104626dd145d",
      "tree": "1c29abf00e041a31a89964df5f849694c7f9a37f",
      "parents": [
        "342d7bcf44b3edcce763f0417ad0a13b11bde285"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Oct 18 09:54:32 2019 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Fri Oct 18 09:54:32 2019 -0700"
      },
      "message": "libmediadrm: fix a use of an uninit value\n\nINIT_CHECK() expands to `if (foo) return bar;`, and `EventTimer`\u0027s\ndestructor uses a value that\u0027s only set if `SetAttribute` is called.\nThis CL flips the INIT_CHECK/EventTimer lines to match getKeyRequest.\n\nCaught by clang\u0027s static analyzer:\nframeworks/av/include/media/EventMetric.h:155:7: warning: 2nd function\ncall argument is an uninitialized value\n[clang-analyzer-core.CallAndMessage]\n\nBug: None\nTest: TreeHugger\nChange-Id: Ie0c4fb8c99a56082e234475e539c2ec4bc8fd948\n"
    },
    {
      "commit": "c3af31b8f1a7bac5d3e3c953702c8faec3cd55e3",
      "tree": "30533ca112d60914f2c23acda83394275b97ea25",
      "parents": [
        "32706253ce90531c94b5f2af7caacb443eb09d8c"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Sep 20 21:45:01 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Oct 04 22:05:40 2019 -0700"
      },
      "message": "Implement DrmSessionManager w mediaresourcemanager\n\nBug: 134787536\nTest: DrmSessionManagerTest\nTest: DrmSessionManager_test\nTest: ResourceManagerService_test\nChange-Id: Iab9f4f681c83f46b043cefc8633bb3e513a8e75a\n"
    },
    {
      "commit": "583d7283e9036a22240b5710c6941f79e1c1ab9e",
      "tree": "de096581ffba4c3be6aedbcf44bafa74a36787d2",
      "parents": [
        "da97100ad31f7b69c737f9e1a8d8b70491f3e6da",
        "7dcb4db080ee583e984c554499864fbe5703df27"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue May 21 22:00:59 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 21 22:00:59 2019 +0000"
      },
      "message": "Merge \"listByInterface -\u003e listManifestByInterface\""
    },
    {
      "commit": "7dcb4db080ee583e984c554499864fbe5703df27",
      "tree": "0b574abd92cd34dfb2a73899e180bc0543ebc5b2",
      "parents": [
        "cd39cb7ec601ceafe7ce2b9008b3c82fd90e71c7"
      ],
      "author": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Mon May 13 13:10:51 2019 -0700"
      },
      "committer": {
        "name": "Steven Moreland",
        "email": "smoreland@google.com",
        "time": "Tue May 21 16:45:14 2019 +0000"
      },
      "message": "listByInterface -\u003e listManifestByInterface\n\nThis does two things:\n- makes sure that HALs configured as lazy HALs will be retrieved\n- will detect bad manifest entries earlier\n\nBug: 131703193\nTest: boot\nChange-Id: I69fb80b023cc17f94e4f6a10203ee077a5e61e19\n"
    },
    {
      "commit": "a503326e7af89f27c2e65c2c4447e8105547274a",
      "tree": "ba7832aa20f336536c1c0006f3fda4c65dc2a2e7",
      "parents": [
        "3aa95defac2624f05130927ea3e3f5a56ea617e5"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon May 06 14:15:12 2019 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Mon May 06 20:19:42 2019 -0700"
      },
      "message": "DrmHal: add key status usable_in_future\n\nBug:116738851\nTest: DrmMetrics_test\nChange-Id: Ifdd63ce94d3e145840b155a982612ba980cc456d\n"
    },
    {
      "commit": "83dc265bde1be0f58161a4606b0a72d053288ff3",
      "tree": "c2ce03740c1639b974f21ce5941e931a2b924ba7",
      "parents": [
        "ffa6f9191ee3e50a5c140b0d3cae27d7f7c87a3f",
        "6a3052232c606bc2f74a849c6758fd44b6c01158"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 31 21:47:33 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 31 21:47:33 2019 +0000"
      },
      "message": "Merge \"use MediaAnalyticsItem::create() instead of new\""
    },
    {
      "commit": "6a3052232c606bc2f74a849c6758fd44b6c01158",
      "tree": "529ee3bb94a17c06e19c8642daf9993f23d531f2",
      "parents": [
        "2637984613a75eb2640a73e186a6dd1f08cebbc0"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 28 20:33:18 2019 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jan 31 11:19:44 2019 -0800"
      },
      "message": "use MediaAnalyticsItem::create() instead of new\n\nBug: 123543489\nTest: boot/logcat, select CtsMediaTests\nChange-Id: I92f8b9987b78466fae74ce4c0b177f8bb1e7dea8\n"
    },
    {
      "commit": "9a95b0f26e5d30947e8f17888c093ceac6593087",
      "tree": "cc1f63c5160f3af9710dd5d43644f4c50fdc544e",
      "parents": [
        "4b7f683cf9fbaa2b427f03bd067ee2588906ac44"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jan 30 17:39:20 2019 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jan 31 00:51:07 2019 -0800"
      },
      "message": "Resolve feedback from API review\n\nFix inconsistent naming of offline license states\n\nbug:120489407\nbug:120488811\ntest:cts and gts media tests\n\nChange-Id: I8473211d96383977ad33e4bd770fc4c71d9bd15f\n"
    },
    {
      "commit": "db3fa5f9ff069697b70f2a702177f1db83a6d5b7",
      "tree": "5ac815ae62bcb6e6fea949385afe2c53508db0f7",
      "parents": [
        "8ce16d8609ee14dfbfafeecfb3cb5d1ebb94f1f2"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Jan 25 22:56:56 2019 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jan 30 07:09:41 2019 +0000"
      },
      "message": "Throw exception on mismatched system vs vendor\n\nWhen the system partition is a later version than vendor,\nnew MediaDrm APIs will not have HAL implementations. In\nthis case throw java.lang.UnsupportedOperationException.\n\nbug:110701831\nbug:123375769\n\ntest: cts media test cases, gts media tests\nChange-Id: Ib631bf4d4d245d857e61bd3fe0e5808e430a034d\n"
    },
    {
      "commit": "99dbfa822e277956799e987c106d4ec1b7984f1b",
      "tree": "d5ab50d0657b41554e0594ebb9a30f058ca3d1e3",
      "parents": [
        "701768e80731da3df0edac97fb8fc442ffbbd33f"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jan 17 17:27:06 2019 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 22 23:27:10 2019 +0000"
      },
      "message": "Add securityLevel to MediaDrm isCryptoSchemeSupported API\n\nbug:110701831\ntest: cts media test cases, widevine integration tests\n\nChange-Id: Ia4308a27a11a279db1fb127c51d752ecaa86dfcb\n"
    },
    {
      "commit": "9f81192d77a62564dc1e2c7dad1afe601784a7b9",
      "tree": "3c95f5e062dc1f2a9ef83515a3cd667a0e23be98",
      "parents": [
        "c8b2701a2f899bdd0fc01b2bcb38e372c855e523",
        "44c2cc4e1637d6f7c43f14f0dbd6f078497719a2"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sat Jan 19 05:48:04 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 19 05:48:04 2019 +0000"
      },
      "message": "Merge \"Add support for HDCP 2.3\""
    },
    {
      "commit": "020d1b52530555553059fd30939bd13c458f7188",
      "tree": "7b28240a96cff7f520cf0a3672aeb5bd78d39141",
      "parents": [
        "a5d726d37a163fa02f1c96a9c97fe9651a22630e",
        "ca5642cd9ccd95cae88dd9204958419e279ea532"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 16 01:08:45 2019 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 16 01:08:45 2019 +0000"
      },
      "message": "Merge \"List drm HALs from manifest\""
    },
    {
      "commit": "44c2cc4e1637d6f7c43f14f0dbd6f078497719a2",
      "tree": "06359af63d9914277f39b322ffcf46fa3761c9a6",
      "parents": [
        "0ddaa5966b8980670bf08ba4a90823967fb3654e"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Jan 14 10:24:18 2019 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Jan 14 23:18:33 2019 -0800"
      },
      "message": "Add support for HDCP 2.3\n\nbug:120040804\nChange-Id: I937fb776f93fb0041e6f152bb12b6d1e84c2188f\n"
    },
    {
      "commit": "ca5642cd9ccd95cae88dd9204958419e279ea532",
      "tree": "f53b445fe98b892083c1ea735980d9b7ac7907f4",
      "parents": [
        "8292a716361d0f02de2b79242aec4630664bc770"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Mon Nov 12 12:34:42 2018 -0800"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Mon Jan 14 15:10:26 2019 -0800"
      },
      "message": "List drm HALs from manifest\n\nTo support lazy drm HALs, libmediadrm needs to list all available HALs\nthat are defined in the manifest. Otherwise, it will only list HALs that\nare currently running. This change is necessary because lazy HALs do not\nrun until they are requested. Without this change, libmediadrm would not\nbe aware that the lazy HALs are present, and it would not know to call\ngetService() to start them.\n\nTest: Run gts\nBug: 112386116\nChange-Id: I9b41c60d574b9c8c857b8838a5bbdc64388c9ddb\n"
    },
    {
      "commit": "b8684f3a673dff814d68b2f695991e554718fd8b",
      "tree": "7eb43a0d55dadf57c43c9058233e73e37dcad76e",
      "parents": [
        "a280b264cd99be8d682e3a5c14b1d25649481100"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Dec 12 08:41:31 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jan 10 01:54:32 2019 -0800"
      },
      "message": "Add additional error conditions to MediaDrm\n\nNew codes are being added to handle resource\ncontention, lost session state, frame size too\nlarge and insufficient security level for\ndecryption. Also cleans up inconsistent use of\ntamper detected error where invalid state error\nshould have been used.\n\nbug:111504510\nbug:111505796\ntest:cts and gts media test cases\n\nChange-Id: I28ca04cdc8ce64047d189fcf4d59bab24208e1a7\n"
    },
    {
      "commit": "7676a406a2fff64c8c465c879300a7a35e2e0739",
      "tree": "efa4af971daa63294d677190b188205cdd463226",
      "parents": [
        "f25675d38948d6e6eefc45f893f659467eab6471"
      ],
      "author": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Thu Dec 27 11:04:16 2018 -0800"
      },
      "committer": {
        "name": "Peter Kalauskas",
        "email": "peskal@google.com",
        "time": "Wed Jan 02 11:50:48 2019 -0800"
      },
      "message": "Make assignment of mPlugin members consistent\n\nBefore, it was possible for mPlugin, mPluginV1_1, and mPluginV1_2 to be\nassigned to different plugins. Now, they are guaranteed to always point\nto the same object. Also to be safe, mPlugin is set to NULL if there is\nan initailization error.\n\nTest: Run gts on blueline\nBug: 112386116\nBug: 121382196\nChange-Id: Ie3ff7369e0c66d4502fab3f4a1d18b2882140143\n"
    },
    {
      "commit": "c8baaba1ee057336c0f9293a1762befded9b5936",
      "tree": "ff28a3497e5660eb564dda6571b5bb90ac2d485c",
      "parents": [
        "71fb1a8ce526868a1b36058a1a27260946f83d59"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Oct 23 11:32:36 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Nov 07 17:31:36 2018 -0800"
      },
      "message": "Add new offline management APIs to MediaDrm\n\nbug:110838441\nbug:117570956\nbug:116252891\n\ntest:cts android.media.cts.MediaDrmClearkeyTest#testOfflineKeyManagement\n\nChange-Id: I2ee86afbd1a0ae793454c2e81f3267aaf10bade7\n"
    },
    {
      "commit": "0fc8f214ed433cf5e9d90e71988309809f8c536c",
      "tree": "a77b7e7a9ff7786c8ecf54eeb5fa55d8be6afc3b",
      "parents": [
        "f344afa981e537b5f354352284272a8a51cf6759"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Aug 30 15:46:58 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Aug 31 00:52:35 2018 +0000"
      },
      "message": "Remove drm log spam\n\ntest:compiles\nbug:77813983\nChange-Id: Iae9c8d3a958cad74dd10395a5184a3b82d263200\n"
    },
    {
      "commit": "630092e11dcff57a3a70e2fe1935bf58c5331e2f",
      "tree": "512c0f0c48147550ffba87934e06bc645062900f",
      "parents": [
        "3e69b248ef8805b888ea1ec76f3bab773db05589"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed May 02 13:06:34 2018 -0700"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon May 07 14:39:00 2018 -0700"
      },
      "message": "Fix an incorrect CHECK in the code.\n\nThis is a trivial fix for an incorrect check.\n\nBug: 77262269\nTest: Re-ran unit tests and GTS tests. Verified Google Play.\nChange-Id: I807d8488f65c60c03779064cb92bbbd6c60267e4\n"
    },
    {
      "commit": "e641294b59e2a0792d894139d739228f182409b4",
      "tree": "b59ac4fb20794c2bff3693004904e1b449fa3f22",
      "parents": [
        "0f59472e584f9962a7ef390d1dba90ca2c0ad8be"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Apr 30 17:35:16 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue May 01 17:49:02 2018 +0000"
      },
      "message": "Fix abort due to missing hidl status check\n\nTwo methods in DrmHal were not checking the\nhidl transaction status which causes an abort\nif the transaction fails.\n\nChange-Id: Ie4b6d4ae6507f073efa55412c21ceba317e2881d\nrelated-to-bug:78646354\ntest:gts media tests, netflix playback\n"
    },
    {
      "commit": "32494f5438db362e96b69e5fda7b2fd34633b562",
      "tree": "05117fdb47464a3de366fc60010e7255dce44b3b",
      "parents": [
        "56ecf3e3ce36d111a17d67485047836660128629"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 26 22:53:27 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Mar 22 15:54:58 2018 -0700"
      },
      "message": "Fixes serialization of vendor metrics\n\nUses an updated proto model that\u0027s more efficient for serialization.\n\nTest: Unit tests, google play and CTS tests.\nBug: 73724218\n\nChange-Id: I936bc18216c0c67de580424b4c62344d94be6b38\n"
    },
    {
      "commit": "5830c5a1b0e10057589eff3b4d0015fe849374a2",
      "tree": "462b34e8cd776cacb9385910b09ead013a64e80c",
      "parents": [
        "006b7eebe4c86eba7a67471d99b061b6b76177f5",
        "28f27c3bee88b0f47b1086feeaa904bcdec37af6"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Feb 28 03:21:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 28 03:21:26 2018 +0000"
      },
      "message": "Merge \"Adds HAL metrics support for Media Drm\""
    },
    {
      "commit": "4f8f900d3cb8ee117980705ac5df250f9df63bfc",
      "tree": "9cb144737b86c91e2053293b611589ec79946af0",
      "parents": [
        "547921396126d2e5e6387a04bc971e616250574b",
        "7d2c6e8be2c9a4f3c1364d243856a345f17f851e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 27 22:02:33 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 27 22:02:33 2018 +0000"
      },
      "message": "Merge \"Move mediadrm-related headers\""
    },
    {
      "commit": "58ad475e3aa567bec63108970855e6518c90d42e",
      "tree": "370ba2179221aeda2845835888855099c7d1c39b",
      "parents": [
        "5df26c9b85a9345b84cb9a0d4f937b7df8855a5a"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 16 16:51:59 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Feb 27 19:23:15 2018 +0000"
      },
      "message": "Fix hidl return checks\n\nSome drm HAL methods were not properly checking\ntheir hidl Return\u003cStatus\u003e values which would cause\naborts in some cases. This CL adds checks as needed\n\nTest: GTS media tests\nbug:73500808\nChange-Id: I47ae0f82d4e614b1e78923ed48fbe4c024df5d71\n"
    },
    {
      "commit": "28f27c3bee88b0f47b1086feeaa904bcdec37af6",
      "tree": "0f2822d51fbe3186bf5b67f20efd27205b1de14b",
      "parents": [
        "f51cb69506670403cf1da2c66a3290c2f47344b6"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 05 15:07:48 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 26 20:23:30 2018 -0800"
      },
      "message": "Adds HAL metrics support for Media Drm\n\nAdds support to fetch metrics from vendor and convert them to a proto\nbundle returned from a call to getMetrics.\n\nBug: 64001676\n\nTest: CTS test for metrics and GPlay test\nChange-Id: I05634dd1bf092e64e2d0e77c4c0e243340af48e3\n"
    },
    {
      "commit": "7d2c6e8be2c9a4f3c1364d243856a345f17f851e",
      "tree": "3aab41fe8acce7056a1e7b01ebc2e8882e416b9a",
      "parents": [
        "987ac7056040ed1594dc975c8a9d7cee463fa834"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 16 16:14:59 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 16 17:04:00 2018 -0800"
      },
      "message": "Move mediadrm-related headers\n\nRelocate drm and crypto headers from media\nto mediadrm to have finer grained ownership\n\nbug:73556221\nChange-Id: I7d1b5944f261f9b1fdeed7605e4c0b4b4ca43e1a\n"
    },
    {
      "commit": "81b4dff2763c795792f524e1e4cb068b64e659ad",
      "tree": "df6fdda0f8fc8f342458de2245eed1744389c30d",
      "parents": [
        "d2ce2b807b26a46570cb823544a86c0589ceddc6",
        "7dfe28f246bce404778f94e977b52699adfcb4ea"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 16 20:07:49 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 16 20:07:49 2018 +0000"
      },
      "message": "Merge \"Fix missing check of hidl return status\""
    },
    {
      "commit": "987ac7056040ed1594dc975c8a9d7cee463fa834",
      "tree": "d6032f31e60e61e5f28e857b882ba27102683bc7",
      "parents": [
        "f51cb69506670403cf1da2c66a3290c2f47344b6"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Feb 15 17:02:22 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Feb 15 17:04:04 2018 -0800"
      },
      "message": "Minor code cleanups to DrmHal\n\nTest: builds\n\nChange-Id: I0bec98033e4de020c09374dadaade9d9906f0d40\nrelated-to-bug:64001676\n"
    },
    {
      "commit": "7dfe28f246bce404778f94e977b52699adfcb4ea",
      "tree": "13c730c428948f355ffc46da6c8e8032ccc98311",
      "parents": [
        "f51cb69506670403cf1da2c66a3290c2f47344b6"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Feb 15 12:17:40 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Feb 15 12:17:40 2018 -0800"
      },
      "message": "Fix missing check of hidl return status\n\ncloseAllSessions() was calling into the hidl interface closeSession\ndirectly, and neglected to check the return status which resulted in\nan abort. Instead, call the DrmHal::closeSession() method which handles\nthe hidl return status correctly.\n\nTest: gts media tests\n\nbug:72400509\nChange-Id: I697997eb73ef6d8746fe695509671c4695124cee\n"
    },
    {
      "commit": "fb679e38bbc91614faa917024adddeb51ff07d0a",
      "tree": "71c39782f7a5378ab9f383d31e053bff59ef41d2",
      "parents": [
        "8cc97b178bc6c744eaeef526eca7a4e3f24a1a0e"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Feb 07 10:25:48 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Feb 13 12:57:37 2018 -0800"
      },
      "message": "Add logging support for FW metrics\n\nAdds proto serialization and logging support for media drm framework metrics.\n\nBug: 64001676\n\nTest: Ran CTS tests, unit tests and Google Play.\nChange-Id: Ie350ac93caa6b35610eb63e4acc860c8e8a5cf5b\n"
    },
    {
      "commit": "8cc97b178bc6c744eaeef526eca7a4e3f24a1a0e",
      "tree": "5a094043d266c0c87b0292e659eab22ae7d034be",
      "parents": [
        "031b695b8e37ca3591ac2f5eb952f6c21439d445",
        "568b3c45d48fab64c80b2780e8547564d35722e9"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Feb 13 18:14:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 13 18:14:40 2018 +0000"
      },
      "message": "Merge changes from topic \"media-drm-fix-list-metrics\"\n\n* changes:\n  Fix Metrics with PersistableBundle support\n  Fix DrmHal implementation to return all metrics\n"
    },
    {
      "commit": "568b3c45d48fab64c80b2780e8547564d35722e9",
      "tree": "18cb767806a83262cb74a7d1ab25bcd0e1334ab8",
      "parents": [
        "637b7855829920114a8863b93fe52203b7471eea"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 31 12:57:16 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Feb 12 14:35:27 2018 -0800"
      },
      "message": "Fix Metrics with PersistableBundle support\n\nSome metrics required a conversion to using PersistableBundle to support\nslightly richer structure (lists, and nested PBs).\n\nBUG: 64001676\n\nTest: Ran updated CTS test and verified Google Play works.\nChange-Id: I8f8d67ba04b234f2ac5ac348a8945e20837f98d6\n"
    },
    {
      "commit": "e307dc4e7b2c9d3c4018a755db687309cf590369",
      "tree": "05cb67d957ee0b3f7f193df6914b4d6aa487fb8b",
      "parents": [
        "41d279a7f3bc55a63b510d4dce07e18964cda152"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Feb 11 19:53:54 2018 +0000"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Feb 11 12:52:11 2018 -0800"
      },
      "message": "Revert \"Revert \"Update drm hal to find drm@1.1 factories\"\"\n\nThis reverts commit d3eece8aa39560e8458ba8231b8684d99f11ee6b.\n\nChange-Id: I15ca1dba1a384ccc026406f0a9a02c2598873456\n"
    },
    {
      "commit": "41d279a7f3bc55a63b510d4dce07e18964cda152",
      "tree": "5d2c1f4a1ddabe93b57e6e3b0e616cab1f871645",
      "parents": [
        "c23849a8ea5d7e2939e9d8a0aa8b6da9c08ee625"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Feb 11 19:52:08 2018 +0000"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Sun Feb 11 12:51:19 2018 -0800"
      },
      "message": "Revert \"Revert \"Fix MediaDrm security level APIs\"\"\n\nThis reverts commit 5f5e43fa83551a3636b92871bd2ad6b260a8815b.\n\nChange-Id: I72d585fd3768730eef6ad9effdbda81b32418dea\n"
    },
    {
      "commit": "5f5e43fa83551a3636b92871bd2ad6b260a8815b",
      "tree": "e6010dce1f091847db51b7464c566af774a98f74",
      "parents": [
        "56134cc9e790f39b3b10a18b701b0607c20b6154"
      ],
      "author": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Sun Feb 11 15:00:57 2018 +0000"
      },
      "committer": {
        "name": "Tobias Thierer",
        "email": "tobiast@google.com",
        "time": "Sun Feb 11 15:04:10 2018 +0000"
      },
      "message": "Revert \"Fix MediaDrm security level APIs\"\n\nThis reverts commit 56134cc9e790f39b3b10a18b701b0607c20b6154.\n\nReason for revert: Build cop here. The CL topic that I\u0027m reverting broke several builds: Drm.h\u0027s openSession(Vector\u003cuint8_t\u003e \u0026sessionId) hides overloaded virtual function openSession(DrmPlugin::SecurityLevel securityLevel, ..) from IDrm.h.\n\nhttps://android-build.googleplex.com/builds/submitted/4598692/full-eng/latest/view/logs/build_error.log\n\nChange-Id: I0de7738748ab793249df68bcbf18232d6a2d120a\n"
    },
    {
      "commit": "637b7855829920114a8863b93fe52203b7471eea",
      "tree": "c33e93ec282c2d3f2c01581907dfdfc1fb63a0bf",
      "parents": [
        "ceeee83aaf61fc61e47773da0ac97659057e1c77"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Jan 30 12:09:36 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Fri Feb 09 16:13:49 2018 -0800"
      },
      "message": "Fix DrmHal implementation to return all metrics\n\nThis change in DrmHal allows us to transfer a PersistableBundle containing\npreviously unavailable metrics.\n\nBug: 64001676\nTest: CTS test for metrics and GPlay test\nChange-Id: I1fa87c76dd980a3f91b4e2d02b37329f6c0a88ec\n"
    },
    {
      "commit": "56134cc9e790f39b3b10a18b701b0607c20b6154",
      "tree": "51d3279074ad852d1c8ce03cb5f2f024542f1267",
      "parents": [
        "1bfabb36f5d6f09d87e9d52778b5a1cca9512722"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Feb 05 13:09:23 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Feb 06 10:27:45 2018 -0800"
      },
      "message": "Fix MediaDrm security level APIs\n\nVendors implementing the newly added MediaDrm.setSecurityLevel\nHAL found that it was difficult to implement properly. Also the\nsemantics are somewhat ambiguous from the Java platform API\nlevel. This CL binds the security level assignment to openSession\nwhich clarifies the API for apps as well as making it more\nnatural to implement in HAL modules.\n\nbug:72831697\nbug:64001680\n\ntest: VtsHalDrmV1_1TargetTest, GTS media tests\nChange-Id: Iaa07727be86ec2bc92be907d5a48c92136dc2014\n"
    },
    {
      "commit": "5641aa251bf9a6e7b6bf8a73214f92e42c393a2f",
      "tree": "e467ad21039dfdd95c8b0e4513d35e18f1e14cd4",
      "parents": [
        "9111804e9051b2888c66e26ee1a872bb3ef7a988"
      ],
      "author": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Tue Jan 30 17:52:21 2018 -0800"
      },
      "committer": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Tue Jan 30 18:28:52 2018 -0800"
      },
      "message": "Reset drmPluginV1_1 when destroyPlugin is called.\n\nAlso check for NULL mDrmPlugin before casting to V1_1.\n\nTest: Play Movies and NetFlix\n\nbug: 72687425\nChange-Id: I47aa18730332a17860b7e27440d417ffd612810f\n"
    },
    {
      "commit": "7fbc087b2187bc67f921d843a59a367c6431eb14",
      "tree": "070004c45b20fddfdbd9a28b2d2f1aef91229be8",
      "parents": [
        "8913f5f7db253a22506f00520b888a0c3d780b2c",
        "b2b66fa4da5528cf9cdfc32f619e81e4d97ca654"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 30 19:48:11 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 30 19:48:11 2018 +0000"
      },
      "message": "Merge \"Revert \"Fix missing check of hidl return status\"\""
    },
    {
      "commit": "b2b66fa4da5528cf9cdfc32f619e81e4d97ca654",
      "tree": "904a4f7c9d885ef0c4fb18405176171c70244123",
      "parents": [
        "3923b1b71628e668f9b11ed4891ed2840dd331cd"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 30 19:19:34 2018 +0000"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 30 11:40:42 2018 -0800"
      },
      "message": "Revert \"Fix missing check of hidl return status\"\n\nThis reverts commit 09a90ab544a785b36c5b2d1ef352289e2b6f5633.\n\nFix for regressed b/72666743\n\nTest: manual test to confirm problem is fixed.\nSee bug for repro steps.\n\nChange-Id: Ifac9a2c3a3a92063d544e39ace48ab14c90b8050\n"
    },
    {
      "commit": "15177d7eab8c2300b4f1d577267e528bd7e4eedc",
      "tree": "d3032e8309d53cabd47ada0ad50607b899829534",
      "parents": [
        "5f07c65af5356a4a95410804ce19fc017d6478f8"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jan 25 12:57:55 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Jan 26 16:02:04 2018 -0800"
      },
      "message": "Add new secure stop methods\n\nMethods are needed to release a secure stop by ID and\nreturn a list of secure stops.\n\nTests: gts media tests\n\nbug:67361434\nbug:64001680\nChange-Id: If6cb180cb4d2e3b655028955d105aee0cb8d70b6\n"
    },
    {
      "commit": "566a7290c6af684947c1a757a60eae5da8ab9dee",
      "tree": "eb7f393fbc1f50f400c92439d64d4e4fbc8fcbe7",
      "parents": [
        "eefbdd95b6c0614527bddc188fb112b9b486212e",
        "cea91ce60260d7ebb94449ad7674150fdc227886"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Jan 25 14:00:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 25 14:00:17 2018 +0000"
      },
      "message": "Merge \"Adds most remaining framework metrics\""
    },
    {
      "commit": "eefbdd95b6c0614527bddc188fb112b9b486212e",
      "tree": "fde2a92d37f28b4114ccf6144d4196a549459db4",
      "parents": [
        "227d7bd4a05039a06db70513c55e0b658a2eb86a",
        "f0e618d0ee16c63f918c7bb87ec1ff264d177746"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Jan 25 11:20:57 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 25 11:20:57 2018 +0000"
      },
      "message": "Merge \"Add EventMetric and a single use case.\""
    },
    {
      "commit": "cea91ce60260d7ebb94449ad7674150fdc227886",
      "tree": "4330319ec2121bdcc33f6014ddca527e334f73eb",
      "parents": [
        "f0e618d0ee16c63f918c7bb87ec1ff264d177746"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Jan 22 19:23:28 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 24 17:41:44 2018 -0800"
      },
      "message": "Adds most remaining framework metrics\n\nAdds nearly all of the remaining specified framework level metrics.\nAlso adds a basic unit test to verify that metrics are exported\ncorrectly. A follow-up CL will update the CTS test to touch all metric\nvalues in DrmHal.\n\nBUG: 64001676\nTest: New unit test. Smoke tested with GPlay/Walleye.\nChange-Id: I4df90675ae304d3c62b7886537328b3d848fd77c\n"
    },
    {
      "commit": "91b1f83220c6fc643e2618f92b28482fa880c7fd",
      "tree": "95fb8ac20ac2eb496ff5e45c600853e8ec4216ac",
      "parents": [
        "bf2fbb73c76d99397a0bdb09907a5529a06db24a",
        "09a90ab544a785b36c5b2d1ef352289e2b6f5633"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 25 01:39:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 25 01:39:24 2018 +0000"
      },
      "message": "Merge \"Fix missing check of hidl return status\""
    },
    {
      "commit": "f0e618d0ee16c63f918c7bb87ec1ff264d177746",
      "tree": "c57a89695d8305242ccacabc5e692606989d831f",
      "parents": [
        "38428ce1b306d8922778f4994d67f0ddffb4fcd2"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 17 19:20:41 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 24 17:24:43 2018 -0800"
      },
      "message": "Add EventMetric and a single use case.\n\nAdds an EventMetric class, associated unit tests, and an instance of the\nEventMetric to DrmHal. Also added a unit test for CounterMetric and\ncreated a class to hold all of the future metric instances.\n\nBUG: 64001676\n\nTest: Added and ran unit tests.  Also added a CTS test case.\nChange-Id: Ic94bedd5f8293a58a939613a4ae69ce656a772be\n"
    },
    {
      "commit": "09a90ab544a785b36c5b2d1ef352289e2b6f5633",
      "tree": "b54d3c9c36ec52198c984c8c04e4f2229c655f8c",
      "parents": [
        "87b4679598403fe752f57f1cfca4709ca82e97b8"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jan 23 17:43:29 2018 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jan 24 12:38:26 2018 -0800"
      },
      "message": "Fix missing check of hidl return status\n\ncloseAllSessions() was calling into the hidl interface closeSession\ndirectly, and neglected to check the return status which resulted in\nan abort. Instead, call the DrmHal::closeSession() method which handles\nthe hidl return status correctly.\n\nTest: gts media tests\n\nbug:72400509\nChange-Id: I444be998702aeaca2905ddf560a5138d5775a316\n"
    },
    {
      "commit": "e05a10f6d8783f7bc3cd2f78a9115bf3ab63efff",
      "tree": "e6774ea67b3f60541fbf9295c5c58227d82df350",
      "parents": [
        "c3c1fc630e21f36d2e3f56fac3503c471fbc3a15",
        "aaf87dd09686bdb47df0a638b622a4c2ea37a331"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Jan 24 17:54:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 24 17:54:36 2018 +0000"
      },
      "message": "Merge \"Add CounterMetric and a single use case.\""
    },
    {
      "commit": "aaf87dd09686bdb47df0a638b622a4c2ea37a331",
      "tree": "055e6f879ea604b1f66bc9cea091481308b17487",
      "parents": [
        "a13ac6c89d0246f081127eec11cd5eb467d168d3"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Mon Jan 08 11:55:06 2018 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Jan 23 16:51:17 2018 -0800"
      },
      "message": "Add CounterMetric and a single use case.\n\nThis adds a new class CounterMetric which is used to hold metric\ninformation.  It also adds a single use case for recording and\nreporting a counter metric.\n\nBUG: 64001676\n\nTest: Added and ran a new test for the specific CounterMetric use case.\nChange-Id: I39cab8328f135e579f80b6c2fab721da5f569795\n"
    },
    {
      "commit": "59bc3fa914467f37c32aea1963e9354355b244e7",
      "tree": "bf7c7c0db9067ba01aaf9a6031d51bf1389be958",
      "parents": [
        "1c838c481692c45b96786dcdd520296b73a71809"
      ],
      "author": {
        "name": "Rahul Frias",
        "email": "rfrias@google.com",
        "time": "Mon Jan 22 23:48:52 2018 -0800"
      },
      "committer": {
        "name": "Rahul Frias",
        "email": "rfrias@google.com",
        "time": "Tue Jan 23 13:50:30 2018 -0800"
      },
      "message": "Add new values to KeyRequestType\n\nTwo additional KeyRequestTypes have been added, None and Update. None\nindicates that no key request is needed as keys have already been\nloaded. Update indicates that while keys have previously been loaded,\nan additional (non-renewal) license request is needed.\n\nBug: 70335058\nTest: GtsMediaTestCases\nChange-Id: I36a8b334c70140098a01e4a3bea3159fc0a4584f\n"
    },
    {
      "commit": "c42670b837dc6e0d63dad891f66735fd7cb3d969",
      "tree": "0ea6e2a4a47671977c8099c1f8c248971622b588",
      "parents": [
        "164071326bcc752214ed800cba3d07206398f53d",
        "6d998b67be330843f633a563c23c606593060165"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jan 23 17:07:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jan 23 17:07:40 2018 +0000"
      },
      "message": "Merge \"Implement new MediaDrm methods\""
    },
    {
      "commit": "6d998b67be330843f633a563c23c606593060165",
      "tree": "c9bfa7867b2610593e81ca8bf6d13b4b18501e14",
      "parents": [
        "e18835269d8e875297603d889b3f928a13f93d6c"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Dec 18 14:37:43 2017 -0800"
      },
      "committer": {
        "name": "Rahul Frias",
        "email": "rfrias@google.com",
        "time": "Mon Jan 22 01:29:32 2018 -0800"
      },
      "message": "Implement new MediaDrm methods\n\nMethods for querying HDCP, security levels and\nnumber of sessions\n\nbug:64001680\nbug:33657579\n\nTest: cts: MediaDrmMockTest, ClearKeySystemTest\ngts: GtsMediaTestCases\n\nChange-Id: I7c84df02ec33d305b6bd5ac7479922f87aa64863\n"
    },
    {
      "commit": "ab394d13bab3a84f23677357576cee7a6f0c7899",
      "tree": "49544ed51667ba0850b776529294be75de491961",
      "parents": [
        "0b68d531017a66db63cc8c41ba28a4f15e9816f0"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Fri Dec 22 12:34:20 2017 -0800"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Fri Jan 19 16:29:47 2018 -0800"
      },
      "message": "Add support for getMetrics to IDrm\n\nAdds support for the new getMetrics call to the IDrm interface and the\nDrmHal implementation. The implementation currently returns a dummy\nmetric collection. Follow-up CLs will flesh out the implementation.\n\nBug: 64001676\n\nTest: Ran the new unit test created in a related CL; ran Google Play.\nChange-Id: Ia6a3af5b59a30ca55267f7e3ba278a510fc8c81e\n"
    },
    {
      "commit": "29f736992434dbac608db3a2ff4426d9f108ad64",
      "tree": "8fa23c36335e33d5868abc1481ef34e203da3b20",
      "parents": [
        "008440f6c728da9d35b3184cb3d666edc3a88f7e",
        "76abba2b611e2a59d7589896444c9e13ea213e9e"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Aug 09 01:27:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Aug 09 01:27:52 2017 +0000"
      },
      "message": "Merge \"Fix failure to check HIDL return status\" into oc-dr1-dev am: 3373ab6abe\nam: 76abba2b61\n\nChange-Id: I46613ce9604f5e00cb6a0aef13c5fdc254d731ad\n"
    },
    {
      "commit": "f0e89b0b248976f622fc41da4f678955399def08",
      "tree": "aacaaae8e1ac94e6f240fe7fa3c2e35ec32836a7",
      "parents": [
        "81b06822a7ad5034eee0a85fc32c527e669ab274"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 07 15:58:41 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Aug 07 16:13:27 2017 -0700"
      },
      "message": "Fix failure to check HIDL return status\n\nHIDL transaction status wasn\u0027t being checked\nresulting in a SIGABRT from createPlugin when the\nremote process dies.\n\nbug: 64441780\ntest: run Play Movies and repeat killing\n  android.hardware.drm@1.0-service.widevine, check\n  log for transaction failed messages.\n\nChange-Id: I0ea70578d60bb84cf693f158963181781d7e35c3\n"
    },
    {
      "commit": "81b06822a7ad5034eee0a85fc32c527e669ab274",
      "tree": "36254bc3c80bba3e0bc2f42a412f3224a093bd51",
      "parents": [
        "a2208f7d01fefd9f402781ab24264b6732d6e934"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jul 26 15:44:33 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Aug 03 12:48:58 2017 -0700"
      },
      "message": "Fix failure to check HIDL return status\n\nTest: run Play Movies and repeat killing\n  android.hardware.drm@1.0-service.widevine, check\n  log for transaction failed messages.  This uncovered\n  a related problem in closeSession which is also fixed\n  in this CL.\n\nbug: 64022042\nChange-Id: I4e86414aa1625c35689339389391e9fa6d377b1c\nMerged-In: I4e86414aa1625c35689339389391e9fa6d377b1c\n"
    },
    {
      "commit": "319d5f43d196ca1fc26c5d6169ae0bdd14a81d54",
      "tree": "d438af53c30d184547dbccf0dfdfff22d24580a9",
      "parents": [
        "a63b4da5e41e7835b1ac6db235fd9764528082fc"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jul 26 15:44:33 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Aug 03 12:35:32 2017 -0700"
      },
      "message": "Fix failure to check HIDL return status\n\nTest: run Play Movies and repeat killing\n  android.hardware.drm@1.0-service.widevine, check\n  log for transaction failed messages.  This uncovered\n  a related problem in closeSession which is also fixed\n  in this CL.\n\nbug: 64022042\nChange-Id: I4e86414aa1625c35689339389391e9fa6d377b1c\n"
    },
    {
      "commit": "33ecc4f6b0e53ea7088ff4f151323e29183070c5",
      "tree": "4a174497fc23c8a5ee993d0e7e6d6316edd052a1",
      "parents": [
        "6133281c9b06c1d1176eca7f07401bba1067081e"
      ],
      "author": {
        "name": "John W. Bruce",
        "email": "juce@google.com",
        "time": "Mon Apr 03 16:49:05 2017 -0700"
      },
      "committer": {
        "name": "John W. Bruce",
        "email": "juce@google.com",
        "time": "Tue Jul 18 16:40:44 2017 -0700"
      },
      "message": "Marshal Metrics\n\nBecause DRM Plugins will not be allowed to call the AMI API under\nTreble, the mediadrmservice will need to marshal the metrics out of the\nplugin in protobuf format and report them to the AMI API instead. This\npatch implements the pulling and interpreting of metrics from DRM\nPlugins.\n\nBug: 36497276\nTest: Played Google Play Movies, verified that playback still worked and\n      Widevine metrics appeared in a dump of the system media metrics.\nChange-Id: If07717c1b87022bc1fcdedfbc62b9193899742d5\n"
    },
    {
      "commit": "6133281c9b06c1d1176eca7f07401bba1067081e",
      "tree": "7cd0391b116238c9122ff88cfd55a06fc5b80b60",
      "parents": [
        "bc282920de2d648e9e13802714e579a1e4c57b3a"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon May 15 16:53:10 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Jul 18 23:36:40 2017 +0000"
      },
      "message": "Close all open drm sessions before destroying a plugin.\n\nMediaDrm relies on each plugin to close its open sessions\nwhen the plugin is destroyed. This change ensures that all\nsessions will be closed even if the plugin does not do it.\n\nb/38323088\n\nChange-Id: I8b6e36182f3b3bc765963819101868fc46001527\n"
    },
    {
      "commit": "70367f525a7bf5be52115608d190d72756e972ea",
      "tree": "5b699fa211c3c77292282ac1355fa89fd60c945f",
      "parents": [
        "b5b0857541d5ce85b381dca8651fb25f50d92f37"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Jun 16 12:41:33 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Jun 16 15:17:09 2017 -0700"
      },
      "message": "Check for drmhal plugin null pointer deref\n\nIf binderDied is invoked after a plugin is destroyed\nthe pointer can already be null. Also reset the init check\nstate after the plugin is deleted to make sure the\nchecks in other methods remain valid.\n\nbug:62667492\n\nTest: Play Movies, ExoPlayer\nChange-Id: Ie12191b744331a7a435b4c64bbd1c179918553ac\n"
    },
    {
      "commit": "3e2891674ef57a74e59ca5e27f89647b3f06861b",
      "tree": "84b6d9daf344893b511b189adcb8775666c5725d",
      "parents": [
        "593111f4460f2b2e8f541e936670e3577d45fff6"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jun 01 11:13:53 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Jun 01 11:13:53 2017 -0700"
      },
      "message": "Allow drm plugin to be released when binder dies\n\nA plugin\u0027s listener reference was preventing the plugin\nfrom being released in binderDied, which caused\ndrm sessions to be kept open if an app was abnormally\nterminated.  Setting the plugin\u0027s listener to NULL\nin binderDied resolves the problem.\n\nTest: repeat {launch netflix app, kill \u003capp-pid\u003e}\nPrior to this change the netflix app would always fail to\nrun on the second iteration and the log showed\nERROR_TOO_MANY_SESSIONS. After this change, the netflix app\ncan be killed and restarted without failures.\n\nAlso verified with gts tests and play movies app.\n\nbug:37720811\nChange-Id: Iceb1c23e2a1d518da85641336f017bb8b2948863\n"
    },
    {
      "commit": "593111f4460f2b2e8f541e936670e3577d45fff6",
      "tree": "f187a287e5585c6af15e835f195ce2f7bb359c46",
      "parents": [
        "a666b6980027946c2dfeb8a3529c8e791fc279a4"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu May 25 16:00:21 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu May 25 16:00:21 2017 -0700"
      },
      "message": "Don\u0027t leak hwservicemanager binders\n\nUse defaultServiceManager() instead of IServiceManager::getService()\n\nbug:62073349\ntest:\n  repeat {launch Play Movies, play a movie, exit} while monitoring\n    adb shell cat /sys/kernel/debug/binder/stats |\n    grep -A10 \u0027^proc \u003cmediadrmserver PID\u003e\u0027\n  --\u003e Make sure number of nodes is stable\n\nChange-Id: Ibea0437ed21a9d58f3eb7ffa9461fb71d9c2b4ab\n"
    },
    {
      "commit": "f53d96676da2d672d03e35fa0894cb299ac9e318",
      "tree": "2047335495b5d7840d97d57cd7bb4ef99cf84371",
      "parents": [
        "24fd2f7d2900797b1300d6bc89d28bd94a31c3cb"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon May 08 19:25:57 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon May 08 19:31:46 2017 -0700"
      },
      "message": "Fix resource leaks in drm hal\n\nbug:36408047\ntest: manual testing to verify leaks are fixed\nChange-Id: I3ade65eff4bbe8603fe4cf04b00ab1f3e1122f90\n"
    },
    {
      "commit": "e309b22bff1719f1fea84b247e4b2bc4c5f09eb5",
      "tree": "588e794ad730620407251c1e96fd2a15cdd79df2",
      "parents": [
        "8d8ebcaa7d13f163abee5bbf23b4e5a21fbfb44c"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Apr 05 08:01:28 2017 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Apr 11 16:28:32 2017 -0700"
      },
      "message": "Change drm/crypto service names to \"default\"\n\nbug: 36371166\n\nTest: vts drm hidl test, Play Movies\n\nChange-Id: I942f91ab0be1f237017e88910f8d3738bf54447f\n"
    },
    {
      "commit": "b86f4b3ce066eadbfe9c2f420b16aaf2de741edb",
      "tree": "a1d505ff3a4d2b43bb14179d815cad8534b30c06",
      "parents": [
        "6480d09eec2b8188b623030c971032334739b4e4"
      ],
      "author": {
        "name": "Rahul Frias",
        "email": "rfrias@google.com",
        "time": "Mon Mar 27 15:13:30 2017 -0700"
      },
      "committer": {
        "name": "Rahul Frias",
        "email": "rfrias@google.com",
        "time": "Wed Mar 29 12:55:50 2017 -0700"
      },
      "message": "Fix reclaim sessions (DO NOT MERGE)\n\n[ Merged from master ag/2027840 ]\n\nThe SESSION_RECLAIMED event needed to be propagated to the jni native\ninterface.\n\nTest: Verified by\n  com.google.android.media.gts.DrmSessionManagerTest#testReclaimSession\n  (GtsMediaTestCases) test\n\nb/36589391\n\nChange-Id: Ia3f17e20be19bc2e7bb88a2354d231917bfce1e8\n"
    },
    {
      "commit": "6a4921ae044186bf64dab3903e8fead9499fc7f6",
      "tree": "9458e6876adb556d29dedd38cd196f2a6248c303",
      "parents": [
        "89e5a2b102b484fe19dbda2a0b118edfefc70241"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Mar 09 23:26:01 2017 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Mar 09 23:26:01 2017 -0800"
      },
      "message": "Fix mediadrmserver not finding IServiceManager instance\n\nbug: 36113291\nChange-Id: I8d459e0edd61555a874cce68e178afd8d468e2e4\n"
    },
    {
      "commit": "abeb36a8c2f044772297536e70340c3b245863e4",
      "tree": "0b272bfd99ef0264d9577dcfa413b1a01d97fe27",
      "parents": [
        "e1bd456cce56406fc0e35faffa4429fb4bf5bff6"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Feb 17 09:42:46 2017 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Feb 28 15:27:12 2017 -0800"
      },
      "message": "Load vendor-provided drm hidl hal modules\n\nPrior to this change, the default legacy hal\nmodule was explicitly referenced. This change\nuses the service manager to iterate through\nany hal instances so vendor-provided hals\ncan be loaded.\n\nbug:34507158\nChange-Id: I23bc4fdb2dc7d5254833c9a977241f1fede726a9\n"
    },
    {
      "commit": "38875a41d62003ee9ad1f537106a86289fb0c437",
      "tree": "a72a945964a87e5718ca6e235844e860954be5d8",
      "parents": [
        "9ee35d72c4b89db99c2df0b0125373f360b337f8"
      ],
      "author": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Wed Feb 15 18:21:48 2017 -0800"
      },
      "committer": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Wed Feb 15 18:32:55 2017 -0800"
      },
      "message": "Fix isCryptoSchemeSupported\u0027s return value.\n\nIf mimeType is not defined, isCryptoSchemeSupported will always\nreturn false.\n\nTest: Netflix on Fugu\n\nTest:\nANDROID_BUILD_Troid-gts/tools/gts-tradefed run gts -m GtsMediaTestCases\n--test com.google.android.media.gts.MediaDrmTest#testWidevineSanity\n\nbug: 35363342\nChange-Id: I579dd6d41d17c1520404a5b45baae3f730f8245a\n"
    },
    {
      "commit": "c82b9c335e69b617817dace0ef64ad3df3f5080f",
      "tree": "1a4ec318e901167744e8ef29f7018c766a1b9d4b",
      "parents": [
        "36b31c87807a4f8cd22e73da9bf2df7babdb906e"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Feb 14 11:39:51 2017 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Feb 14 13:49:20 2017 -0800"
      },
      "message": "Don\u0027t segfault on fail to create drm factory\n\nbug:35329920\nChange-Id: Id65254447d76222b78f977f6598751c5c51c87f3\n"
    },
    {
      "commit": "f3a591cc9d604133e2c5cae3d34322b52cd7575d",
      "tree": "6401761aab8416a91c0a022558cde7fcbc98022c",
      "parents": [
        "70537c1ce74eff5cbd6554fc972a7d44b7157eca"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Feb 01 15:42:13 2017 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Feb 01 18:19:05 2017 -0800"
      },
      "message": "Enable DRM HIDL HAL by default\n\nEliminate ENABLE_TREBLE since it is obsolete.\nSwitching back to legacy DRM is still possible\nby building with DISABLE_TREBLE_DRM\u003dtrue\n\nChange-Id: I6b921050dff6162112c60df21549fc93bc46e379\n"
    },
    {
      "commit": "68b3d9f49e68a11af5225175dc9e60ce88819e84",
      "tree": "750d8fe493c2ec45542968192ecfe52d83133a02",
      "parents": [
        "9b088162cb9cdeb542f106a45d06a1f802e91e6e"
      ],
      "author": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Fri Jan 06 19:07:54 2017 -0800"
      },
      "committer": {
        "name": "Edwin Wong",
        "email": "edwinwong@google.com",
        "time": "Mon Jan 30 15:26:51 2017 -0800"
      },
      "message": "Pass application packagename to drm plugin.\n\nPass application package name to createPlugin and createDrmPlugin.\nThe application packagename will be used as part of a unique\nidentifier for drm plugin.\n\nTest: Play Movies.\n\nTest: ANDROID_BUILD_TOP\u003d ./android-gts/tools/gts-tradefed run gts -m\nGtsMediaTestCases --test\ncom.google.android.media.gts.WidevineH264PlaybackTests#testL1With480P60\n\nVerify the application\u0027s packagename is reachable in the drm plugin\u0027s\ndebug log.\n\nbug: 27101531\n\nChange-Id: I84fb09b591a7af63f6e20004e910112a4ce6ebac\n"
    },
    {
      "commit": "a53d6553fce1818bdf87833f93633c93ad1b5915",
      "tree": "8fbbb7b32d753c75a7350d748d6fa08d47402289",
      "parents": [
        "2a0c6d54dc34fdd8cca4e8ed7f39ad512133a878"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Jan 20 00:31:46 2017 -0800"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Jan 25 15:41:12 2017 -0800"
      },
      "message": "Implement client code to use Drm and Crypto HALs\n\nThis change adds DrmHal \u0026 CryptoHal classes that connect to the Treble\nHAL interfaces for drm.  These classes mirror the existing Drm and\nCrypto classes that connect to the DrmPlugin and CryptoPlugin\ninterfaces. Having both allows mediadrmserver to run in either mode\nwhile the HAL is stabilized.\n\nThe shared memory interfaces between mediaserver\u0027s ACodecBufferChannel\nand ICrypto had to be reworked to use the Treble HALs. Specifically,\nthe shared memory path for returning decrypted buffers in the\nnon-secure case had to become separate instead of piggy-backing on the\nsource shared memory buffer. A separate shared memory destination\nbuffer is now allocated on the buffer channel. An abstraction for a\ndecrypt destination buffer was also introduced to clarify ICrypto\u0027s\ndecrypt method.\n\nTests: Playback using Play Movies and ExoPlayer works on angler\nwith and without the treble hal enabled.\n\nbug: 32815560\nChange-Id: I5a3dc84f99902eb8cf8eabab9ad074d307744950\n"
    }
  ]
}
