)]}'
{
  "log": [
    {
      "commit": "caac4484db371ceee0ace2a944e0286af051c02b",
      "tree": "75e61dd6c282522ecdb734ff08078397b9b1a7f2",
      "parents": [
        "0a6f296509b6e439c545cbf9db836f8c7393d565",
        "536426c32ff0ad5bc3fb78293af8cf0bf6918752"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Feb 01 07:18:26 2019 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Feb 01 07:18:26 2019 -0800"
      },
      "message": "Merge \"Convert three media binaries to Android.bp\" am: 479b735392 am: 812f306ff8\nam: 536426c32f\n\nChange-Id: Ib0b891a695d613a8593b9619b908880895f16ef4\n"
    },
    {
      "commit": "33de46e8f32aaf803bc4e2c0efebc15660d7045e",
      "tree": "1d096aa210da1bdb42a23a46e77f2a8ea346b80c",
      "parents": [
        "1128b3fa1a8c3859e517d141c8f289ec4e35ef91"
      ],
      "author": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Feb 01 11:17:57 2019 +0000"
      },
      "committer": {
        "name": "Anton Hansson",
        "email": "hansson@google.com",
        "time": "Fri Feb 01 11:40:58 2019 +0000"
      },
      "message": "Convert three media binaries to Android.bp\n\nThis converts mediaserver, mediametrics and screenrecord and the\nlibraries they depend on to Android.bp\n\nSee build/soong/README.md for more information.\n\nBug: 122331945\nBug: 80410283\nTest: boot blueline\nTest: youtube\nTest: screenrecord\nChange-Id: I132b8b4f7965449df68fb1544034a7241c594a63\n"
    },
    {
      "commit": "72a436b384a843e3623ec047c1b1d1c27aa64520",
      "tree": "130bd88d9b7415b8369da4cab314d7b8444d2a54",
      "parents": [
        "22efef5846f09d766eceb60cd304ffcfbea4c42a"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jun 14 15:08:13 2018 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Sep 21 16:54:21 2018 -0700"
      },
      "message": "Avoid very long media metrics deletion blocks\n\nCould see a large block of items expire, which were all done under a\nmutex. This blocks other media requests as well as causing long latency\nfor the current request. Change expiration so we do at most 50 at a\ntime, so the current thread can respond to its client. If more are due to expire,\nfork a separate thread to continue in similar 50-element bursts,\nallowing other clients insertion requests to enter between those bursts.\n\nBug: 109850816\nTest: with shorter timeout and limits\nChange-Id: I774a0a1bb7fbb81e12b14c540557d23fb055e3f1\n"
    },
    {
      "commit": "bc2a77308b7c197a30a3289e5b75d0f089e65982",
      "tree": "0ecd2a56a618c280fb7bb430ef143c4af66cb173",
      "parents": [
        "8d4991797071989e51b08dd58cbe2635ef544f95"
      ],
      "author": {
        "name": "Eric Tan",
        "email": "taneric@google.com",
        "time": "Thu Sep 06 12:04:44 2018 -0700"
      },
      "committer": {
        "name": "Eric Tan",
        "email": "taneric@google.com",
        "time": "Thu Sep 06 18:17:52 2018 -0700"
      },
      "message": "media.metrics: add new record type \"audiothread\"\n\nTest: compile\nBug: 68148948\n\nChange-Id: I8cf96fdc218bd09d90916f2c96fa343ddd4f873b\n"
    },
    {
      "commit": "e85263ca59ad7c03584ae9fc07a0157eeddfb5e6",
      "tree": "54201a3b9c2e2a711b7d84829400e200b71bfed8",
      "parents": [
        "38f84f2d6cd64ad92d1059e09e810545d198c546",
        "0e8d654f7d68ff8d8c8e4cbb41c83bb5a2d3b1fe"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Fri Jul 13 10:27:06 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jul 13 10:27:06 2018 -0700"
      },
      "message": "Merge \"Remove unnecessary libcore includes\"\nam: 0e8d654f7d\n\nChange-Id: I4302b2efb0ccb142d227cfebde217cf7a484ab6d\n"
    },
    {
      "commit": "4d946d2cabaf56d185223fa20a18f8c2899a919a",
      "tree": "6c18922ca90e89fd027de96c17789f3f4cd6853b",
      "parents": [
        "d22857101ea092618470b085fb3378e4b06a03bd"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jul 10 15:46:24 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Thu Jul 12 09:05:47 2018 +0100"
      },
      "message": "Remove unnecessary libcore includes\n\nThis commit removes includes that don\u0027t appear to be needed.\n\nTest: build\nBug: 111055375\nMerged-In: I72465d0af56e408c5e99c1fd304bf2e7ff6d9f83\nChange-Id: I72465d0af56e408c5e99c1fd304bf2e7ff6d9f83\n(cherry picked from commit c1a30c4d8a5ed581ccc9d42791044c43565e6d71)\n"
    },
    {
      "commit": "c1a30c4d8a5ed581ccc9d42791044c43565e6d71",
      "tree": "78f49fc4d701a58dc4f2a2175544ebd277d12a8e",
      "parents": [
        "ed9b963791527782aa08938f8fa080189756cb44"
      ],
      "author": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jul 10 15:46:24 2018 +0100"
      },
      "committer": {
        "name": "Neil Fuller",
        "email": "nfuller@google.com",
        "time": "Tue Jul 10 15:46:24 2018 +0100"
      },
      "message": "Remove unnecessary libcore includes\n\nThis commit removes includes that don\u0027t appear to be needed.\n\nTest: build\nBug: 111055375\nChange-Id: I72465d0af56e408c5e99c1fd304bf2e7ff6d9f83\n"
    },
    {
      "commit": "84e84a5dd3b6d9ee4cf032e8d6206c70969b7107",
      "tree": "49fd8e4e911d62ac8be44ae91fdaf35902a234d9",
      "parents": [
        "527da4c9d30c977c0105a288b20a77f0f9e8d0d3"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu May 03 18:45:07 2018 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon May 07 16:32:02 2018 +0000"
      },
      "message": "collect more media metrics around audio\n\nnew fields in the media metrics \u0027audiorecord\u0027 record for more detail\nlength of time recorded, error conditions\nadd new media metrics type \u0027audiopolicy\u0027 that describes attempts to get\nmicrophone access -- success, failure on contention, what type of access\nwas requested, and (important for the contention) which programs are\ndoing the requesting and holding of the microphones.\n\nwhitelist the \u0027audiopolicy\u0027 metrics type with the  media.metrics service.\n\nBug: 78595399\nTest: concurrent/serial recordings, dumpsys media.metrics\nChange-Id: Ia17860940d4c329b0215b4cf97c6dacacb6a8e32\n"
    },
    {
      "commit": "92d23b433bd770c22c2d4a30b573602f5565de1b",
      "tree": "e2ff902f2be5d131e8a1cd4af09868d3a5af2794",
      "parents": [
        "3923b1b71628e668f9b11ed4891ed2840dd331cd"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 29 12:10:30 2018 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 29 14:38:27 2018 -0800"
      },
      "message": "Remove finalized concept from media.metrics\n\nthe \u0027finalized\u0027 concept didn\u0027t pan out -- remove references to it.\nSimplifies the code flow.\nAlso purged some uses of generateSessionID().\n\nBug: 71874686\nTest: logcat/dumpsys\nChange-Id: I39e48526a5696158d8195f47154881ca6ecda266\n"
    },
    {
      "commit": "8c22cb1cc76c37a3bba789fb78454173f6bf8429",
      "tree": "17d49448ae9ac8925bb4f56c4681f4353374974c",
      "parents": [
        "c01a25e1759549d90c8e9f2446bc3c0023a8cd83"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Jan 24 11:00:36 2018 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Jan 24 11:00:36 2018 -0800"
      },
      "message": "Open some more metrics from app-space\n\nallow some more metrics through that are now being generated from\napp-side contexts instead of within media services.\n\nBug: 71874383\nTest: logcat/dumpsys\n"
    },
    {
      "commit": "813b1b8e1e1fa3f00317f0218d78510bf9abf3ae",
      "tree": "2373a7f2e2e585faa1f7e402e10e0ce7c4d52693",
      "parents": [
        "0cde7e5863df60ece6986ad9b5b4358dc82380eb"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Jan 16 15:10:06 2018 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Jan 16 15:10:06 2018 -0800"
      },
      "message": "Remove media metrics\u0027 unused \u0027summarizer\u0027 concept\n\nRemove the code from media metrics that provided a summarization\ncapability. It wasn\u0027t providing the information we wanted and\nconsumed more system RAM while being unhelpful.  If we figure out\na better way to do this, we\u0027ll re-implement.\n\nBug: 71874635\nTest: manual\n"
    },
    {
      "commit": "783bd0d74d142493b4ef0a15a2664535854e99f9",
      "tree": "60cbf56cb9d37670194d12cda8180767b6b5cfa9",
      "parents": [
        "734d186db7ec3d1f877001d71c71de6562ead7f7"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Jan 11 11:10:35 2018 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Jan 16 09:25:15 2018 -0800"
      },
      "message": "media.metrics changes AString -\u003e std::string\n\nchange from AString to std::string for how media.metrics handles\nstrings.  This severs the dependency on libstagefright_foundation,\nwhere AString is implemented, so we can integrate into places\nwhich do not want to introduce a dependency on libstagefright_foundation.\n\nBug: 70805723\nTest: compilation/linking, CTS subset\nChange-Id: I66de971b6ec354444e06112607a2d7614084cef8\n"
    },
    {
      "commit": "4e2eeffb7d8cbe8add700ad699afc2614668706b",
      "tree": "dbacfe6599ba365eaa3e5c476f84689730daa2f5",
      "parents": [
        "62b3e7a87d1b0554cf347ba9b06978f9344c46f7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Nov 27 14:01:29 2017 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 01 11:19:51 2017 -0800"
      },
      "message": "Update to support long version codes.\n\nBug: 64459786\nTest: manual\nChange-Id: I8b251f5238d6aeed51642bc7c4fc573b2a5a408e\n"
    },
    {
      "commit": "583a23aee1408815b5449aa96e2eccaf00ed8c32",
      "tree": "cbcb38788b527af3defdfa868b5372af40ee4c8c",
      "parents": [
        "6b0e0f0299748dad99dfb5f65c7203bef1abb757"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Nov 27 12:49:57 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Nov 27 12:49:57 2017 -0800"
      },
      "message": "\u0027dumpsys media.metrics -proto #\u0027 doesn\u0027t lose default\n\nmakes sure that using \"-proto #\" option for dumpsys of the metrics\nservice doesn\u0027t leave the protocol set there; we want it to come\nback to the defined default if there is no \"-proto #\" on subsequent\ninvocations.\n\nBug: 69797899\nTest: multiple dumpsys invocations\n"
    },
    {
      "commit": "e5db6dbc501685205c8fdbaf883e10ecf4475b52",
      "tree": "eab21b0091fa35203b63b9056fe876d51def0acf",
      "parents": [
        "dd97f52b3969ee8d6fb611e045ada26037e44e27"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Nov 10 15:54:32 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Nov 10 15:54:32 2017 -0800"
      },
      "message": "Avoid UAF in media metrics service\n\nRe-arranged several potential UAF accesses in the handling of saved\nmedia.metrics items. Also avoids possible \u0027save and immediately\ndelete\u0027 behavior in certain queue situations.\n\nBug: 69002257\nTest: watched dumpsys media.metrics\nChange-Id: I8ab056f14d845aa27f3e65a77bc6c7dbfac24e4f\n"
    },
    {
      "commit": "9bb7e3b88d9a2a1f86b83b00af5aae3e8d8ec644",
      "tree": "8550f87032b043660ceca37e3f2c115486314014",
      "parents": [
        "c56f27b269800c1e8441908c3d564c63e0257f56"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Oct 23 13:01:48 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Oct 23 14:18:19 2017 -0700"
      },
      "message": "Prevent Race condition in media.metrics\n\nChange scope of locking to avoid a window of vulnerability on queue\nmanipulation and item merging. Also cleans up a string manipulation\nerror exposed by the poc for the queue bug.\n\nBug: 68015343\nTest: repeated running of PoC without crash\nChange-Id: Iafa82936e6ec2e25793187e0fa17c2a23085f58f\n"
    },
    {
      "commit": "4a9b019314c6f9d10d4324a2dade3e38af9c37ce",
      "tree": "a80cc7ce96f28a968a77983470ae7b37f0c3b9b6",
      "parents": [
        "e25f3e5cae0f60846f8a17663b6610825649375d",
        "0fca392e77f063a3261a2991f0a1e3149da33db2"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Sep 21 15:09:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 21 15:09:31 2017 +0000"
      },
      "message": "Merge \"Remove codec aggregation/summarization\" into oc-mr1-dev am: 1210f3fd4b\nam: 0fca392e77\n\nChange-Id: If36320f672edfe25256b863b48aeec8d64709623\n"
    },
    {
      "commit": "514081cb98041839460969b44879525dffc01763",
      "tree": "30849f7a38b2743d075fdaf21ebe93236e3205d8",
      "parents": [
        "fe628c5c532355964c74f1a009a32c06c70d0451",
        "2e2fb65509cb118c9a02e16de0e33a6da0c8f435"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Sep 21 03:10:54 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 21 03:10:54 2017 +0000"
      },
      "message": "Merge \"Blur media.metrics timestamps for privacy\" into oc-mr1-dev am: ac18a847a4\nam: 2e2fb65509\n\nChange-Id: Iec2e7cff838593fc72cf19baaade50e0d01c4d62\n"
    },
    {
      "commit": "fe628c5c532355964c74f1a009a32c06c70d0451",
      "tree": "a85cdc143eae1dd6a0bdabd1283e6f4fabf78b2d",
      "parents": [
        "3bf0ed6fbcd491f004183420ae6899073e708023",
        "ab819de197939b438efe6ea0564336f777d579f3"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Sep 21 02:51:27 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 21 02:51:27 2017 +0000"
      },
      "message": "Merge \"trim packagename if sideloaded, get versioncode\" into oc-mr1-dev am: 17b7fa7042\nam: ab819de197\n\nChange-Id: I7c9ea0f3e81de8d4acf4f155cbab0ae85ac507d6\n"
    },
    {
      "commit": "b64ee23a72960c995389f9bcdfe35e3d6918a833",
      "tree": "7d528d3c93330a1787c779f2dc7bde7d22973e0c",
      "parents": [
        "ac18a847a44ad16666f36e6e7ba43fc83b403faa"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Sep 20 16:36:33 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Sep 20 16:36:33 2017 -0700"
      },
      "message": "Remove codec aggregation/summarization\n\nThe aggregation, which tries to collect info for standard deviation,\nused a 64-bit counter. But with a 4GB video file, when you square the\nbytecount, you quickly run up against the 64 bit limit.\nSo we won\u0027t be aggregating those records any longer on-device.\n\nBug: 66226775\nTest: dumpsys media.metrics -summary, no aggregated codec lines\nChange-Id: I7c8347eba3d48dfd3b26916e9eb76de1c129817f\n"
    },
    {
      "commit": "ac18a847a44ad16666f36e6e7ba43fc83b403faa",
      "tree": "738e256d4f7c888a60a2306cbff425a738f62497",
      "parents": [
        "17b7fa70425810f66e691d58c3dc3827542bbecb",
        "721b7a0dac6ede81d1d7de8ff490fdcedb3d2aab"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 20 20:17:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 20 20:17:39 2017 +0000"
      },
      "message": "Merge \"Blur media.metrics timestamps for privacy\" into oc-mr1-dev"
    },
    {
      "commit": "fa149560f4f4b529de3df9e87923ff7f9a8e89ad",
      "tree": "fb398cdb6e0daaef022b16e090417b81bf5956c2",
      "parents": [
        "ad2e7b902c0432a0db40906a4b1f5b693ce439dd"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Sep 19 09:27:31 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Sep 19 17:01:51 2017 -0700"
      },
      "message": "trim packagename if sideloaded, get versioncode\n\nimplement policy of not uploading package info when sideloaded\nor through a non-playstore channel. Include versioncode information\nwhen we do include a particular package.\n\nBug: 65027506\nTest: watch logs and dumpsys for various package combinations\nChange-Id: I8e601c899070b57c25181ba705e997f10ea052b4\n"
    },
    {
      "commit": "41a8f3aeb6d57d48b63be3a432c00688e7887e21",
      "tree": "d78f64e46c17201f492f355961197fdfcec5b106",
      "parents": [
        "76948700c05899bbc20f0f3fa0ffa4614321cf91",
        "9469484834f6e053145d61dc1e5b89f25103d20d"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Sep 14 01:45:22 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 14 01:45:22 2017 +0000"
      },
      "message": "Merge \"Record profile, level, bytes for codecs\" into oc-mr1-dev am: 7ec98736f0\nam: 9469484834\n\nChange-Id: I533c84480463b2d6dc2ae08524297862d6b1cca0\n"
    },
    {
      "commit": "7ec98736f087a44d3f3045f304f7fc1ecb14b97f",
      "tree": "67a8e6a8866c6dfa8d5306c4cc8cca28392d6de3",
      "parents": [
        "ba248a45ff2541faddbff8192545abb098cf6ccc",
        "002e413a5a7460a32790ed08408085a6062f4054"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 13 15:47:39 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 13 15:47:39 2017 +0000"
      },
      "message": "Merge \"Record profile, level, bytes for codecs\" into oc-mr1-dev"
    },
    {
      "commit": "002e413a5a7460a32790ed08408085a6062f4054",
      "tree": "728428078fbe9ea9ce70f2c11fe70490963c21bf",
      "parents": [
        "90153cae7ffd321338f90678a80abd62fb56e877"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Sep 05 16:52:05 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Sep 11 17:28:33 2017 +0000"
      },
      "message": "Record profile, level, bytes for codecs\n\nRecord the profile, level, max-width, max-height and\nbyte counts consumed for codecs.\nDo summarization of byte-counts; the other fields are\ndifferentiators forming the different buckets.\n\nBug: 65297728\nBug: 65250664\nTest: observe \u0027dumpsys media.metrics\u0027\nChange-Id: Ie5bcfe2fd70891f8deeb116897adbb1041b799c7\n"
    },
    {
      "commit": "721b7a0dac6ede81d1d7de8ff490fdcedb3d2aab",
      "tree": "5468632f04ca669aec6eff6a487e51a924bb3932",
      "parents": [
        "c75d97f20843388b9084561635996a01a53d0c0f"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Sep 11 09:33:56 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Sep 11 09:33:56 2017 -0700"
      },
      "message": "Blur media.metrics timestamps for privacy\n\nPrivacy workgroup recommended that we blur timestamps to\nfurther improve anonymity of metrics records.\n\nBug: 65539819\nTest: examination of dumpsys media.metrics\nChange-Id: I337a66a66df733b4ece222b5b69a5732e78a3e35\n"
    },
    {
      "commit": "3d37edbfe2ebfc04e4ad16c4bfcad1a372e0494a",
      "tree": "49ba7b14f14f323329b383214e1420ff926826e4",
      "parents": [
        "5d874b5bcc9577b4e9054b6fb1d41cb6462dbb58",
        "985f2f6c5f2035d5af94f16238fe4cd2260570cb"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Sep 07 23:36:34 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 07 23:36:34 2017 +0000"
      },
      "message": "Merge \"Put media.metrics service into proper group\" into oc-mr1-dev am: 16842cde5c\nam: 985f2f6c5f\n\nChange-Id: I27bc32a39625437eee90e09670c4af4b1b1a479b\n"
    },
    {
      "commit": "16842cde5c77b3d25438e11ba8313e9f837f7bdd",
      "tree": "6d5f296020da2a0c5bb702dc39ba006a377fdb18",
      "parents": [
        "310dd0a2d96e97d4f3983a6e70b5e0653a521030",
        "a61dff07b71b6999f30c2a15268d8a4d87d4ce48"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Sep 07 22:01:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Sep 07 22:01:34 2017 +0000"
      },
      "message": "Merge \"Put media.metrics service into proper group\" into oc-mr1-dev"
    },
    {
      "commit": "a61dff07b71b6999f30c2a15268d8a4d87d4ce48",
      "tree": "671062897bfab20fa22435c778c02aefe3af1335",
      "parents": [
        "cea54cf940630bd0f462f2c9dcb2bfb75e5ebd68"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Sep 07 12:34:50 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Sep 07 12:34:50 2017 -0700"
      },
      "message": "Put media.metrics service into proper group\n\nspecify a group for the media.metrics service.\nthe unspecified default is inappropriate.\n\nBug: 65334712\nTest: examination of /proc info for metrics\nChange-Id: I0e35a2d676586216bcfee672666803b7fa5eae4d\n"
    },
    {
      "commit": "72b054de2c3549b4186daf1a83b041fee4607158",
      "tree": "5b0249a8286e5f197c2aaef1260ef6a9a6bd5a8d",
      "parents": [
        "dc29f723c017b2cda7784cde5155f4ddefd739ef",
        "ed82e9adc8435d0c756fd05a85810622a5b21e57"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Thu Sep 07 19:32:09 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Sep 07 19:32:09 2017 +0000"
      },
      "message": "Merge \"Fix package name reporting in MediaDrm metrics.\" into oc-mr1-dev am: 7dca8d7587\nam: ed82e9adc8\n\nChange-Id: I97060dfe445f734a181b52972b7628376cef0f58\n"
    },
    {
      "commit": "21c721250cef7722217c1e952a6923fb79c84e37",
      "tree": "8e8fe4b4e90741607e4803b9098676049ddc6705",
      "parents": [
        "e4bf97fbf4302bdea149fba4114b96b6ab9a4799"
      ],
      "author": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Tue Sep 05 19:02:06 2017 -0700"
      },
      "committer": {
        "name": "Adam Stone",
        "email": "blueeyes@google.com",
        "time": "Wed Sep 06 22:21:14 2017 -0700"
      },
      "message": "Fix package name reporting in MediaDrm metrics.\n\nThe app package name was not previously reported in drm metrics. This\nchange reports the app package name as returned from the vendor metrics.\n\nThis is part of the fix. The other change will go into another project.\n\nBug: 64584568\n\nTest: Unit tests, GTS tests, and Google\tPlay.\nChange-Id: Iee36d5203364c5f80a8b0fe9d9bbf5c167abefd1\n"
    },
    {
      "commit": "03f367f8b33a0229622f8fbf59a0cb6b593a7b5a",
      "tree": "3640ad2379d888292ae8bea7fde0942a6b05f67d",
      "parents": [
        "3fe902f87f4105507629ccdefd5bd84cee526d2f",
        "0d2236307bec77f324964c9aef241c71a2133dd2"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Sep 06 00:39:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 06 00:39:52 2017 +0000"
      },
      "message": "Merge \"Suppress chatty debug messages\" into oc-mr1-dev am: 39557840ad\nam: 0d2236307b\n\nChange-Id: I93a2172a834246aeef3a24e921d58f6751983a79\n"
    },
    {
      "commit": "6b6cd4d69d9bc0406d16adedf8a72ebdd5a1e127",
      "tree": "46daf2cf0c747a30f568610a2e55ac63d9c3e496",
      "parents": [
        "90153cae7ffd321338f90678a80abd62fb56e877"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Sep 05 14:19:15 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Sep 05 14:20:43 2017 -0700"
      },
      "message": "Suppress chatty debug messages\n\nALOGD()-\u003eALOGV() and remove some other debugging.\n\nBug: 65027506\nTest: observed logcat output\nChange-Id: If84dc0cb7a80dc59f7b5ae6142b662c2dd64863e\n"
    },
    {
      "commit": "59b54495e46af87450bea1b8e44e9a01dab04790",
      "tree": "17aa2913b9b736fc867964d44d02d612a0d6fdc3",
      "parents": [
        "fb70e75da021eca82378d4ded6589d3a86672e96",
        "ea9037e691933d09a4d058011a74463cbbe38974"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Sep 01 23:24:32 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 01 23:24:32 2017 +0000"
      },
      "message": "Merge \"Improve summarized statistics\" into oc-mr1-dev am: 8ecb66eb65\nam: ea9037e691\n\nChange-Id: Ic76ca11f742e1ea4a565e58a13683a69c15a9fab\n"
    },
    {
      "commit": "fb70e75da021eca82378d4ded6589d3a86672e96",
      "tree": "0d5fe47dbae3f8b5b05007ad6ecc39f7e1fcd7eb",
      "parents": [
        "0b8529fbacaa35634ac24bb62c5890cddcb623b6",
        "baf9bda6a488248063ec7a5384a41e157ff69e05"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Sep 01 23:23:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 01 23:23:31 2017 +0000"
      },
      "message": "Merge \"track pkgname/version in media.metrics\" into oc-mr1-dev am: dbedf0ab12\nam: baf9bda6a4\n\nChange-Id: Ibd812b72b8f3383097ee5eb8bb556dbbab8865a9\n"
    },
    {
      "commit": "96eaaac739475214634ee17e3623579f255d71b8",
      "tree": "4063e64c51a632f9a891199e59af59681b02ae84",
      "parents": [
        "f65f421540d8d1e2aad17b86368405b83cb40a26"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Aug 31 11:45:05 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Aug 31 11:45:05 2017 -0700"
      },
      "message": "Improve summarized statistics\n\nbetter management of how summarized records are managed.\nUse differentiated names for the summations to avoid confusion with\nindividual records. Track values appropriate to calculating\nmin, max, mean, and standard deviation.\n\nBug: 65027360\nTest: examination of dumpsys media.metrics -summary\nChange-Id: I40d93d8a5a7cc2c188546574f59d557088d9c1e3\n"
    },
    {
      "commit": "f65f421540d8d1e2aad17b86368405b83cb40a26",
      "tree": "6dce1fc64f88803e89369fe6d893c5700251b6f1",
      "parents": [
        "aba0e98b085cc613003bf42dbfe1ad0a3bb2348e"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Aug 31 11:41:19 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Aug 31 11:41:19 2017 -0700"
      },
      "message": "track pkgname/version in media.metrics\n\nEnhances the media.metrics subsystem to track the pkg name \u0026 version\nso analysis can move from \"error rate has climbed\" to \"error rate has\nclimbed within app X\".\n\nChanges include fields to hold package name/version, the dump protocol\nto emit those fields to upload, and better management of metrics data on\ndevice (time and quantity).\n\nBug: 65027506\nTest: review output of dumpsys media.metrics\nChange-Id: Ia55b859d903835c84f7d43883f959dc1cdefb081\n"
    },
    {
      "commit": "8499f13735227aab50b4bc859a1ea6f02166e912",
      "tree": "25f47c647364a40db2ece3d0e06496e0f0e42a16",
      "parents": [
        "08455b8df21e586c88d9f66eff71f0d26230192e"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Aug 04 08:08:45 2017 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Aug 08 08:13:11 2017 -0700"
      },
      "message": "Update OWNERS to be more specific\n\nStill to do ... media/OWNERS\n\nTest: Gerrit works as expected\nChange-Id: I2645175569b579764d0298641287e56bfabeab9f\n"
    },
    {
      "commit": "8caa24ebd05b6af52bc39905e2e358930496d462",
      "tree": "c190719f56f171392508cdb504071b5627dd7591",
      "parents": [
        "000896fcb6e4ce78dbf72ecba8364c6727640d1f"
      ],
      "author": {
        "name": "Yunlian Jiang",
        "email": "yunlian@google.com",
        "time": "Tue Jun 06 16:18:31 2017 -0700"
      },
      "committer": {
        "name": "Yunlian Jiang",
        "email": "yunlian@google.com",
        "time": "Wed Jun 07 05:04:47 2017 +0000"
      },
      "message": "fix  a memory leak.\n\nThis fixes\n warning: Potential leak of memory pointed to by \u0027only\u0027 [clang-analyzer-unix.Malloc]\n\nBug: None\nTest: The warning is gone.\nChange-Id: I596f422c2409241a47aba381c35da0a874f38c59\n"
    },
    {
      "commit": "de000859656a99c35a08cc62f255f3db1d463716",
      "tree": "a2f9572a36f6a408fb3c2e136bdf91f171ef7501",
      "parents": [
        "e61d039902da4c7ea0efffa620ddd35097566a25"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Apr 13 10:16:25 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Apr 13 10:16:25 2017 -0700"
      },
      "message": "Fix UAF in metrics summarizer code\n\nASAN tools found an instance of holding a reference to a variable that\nhad gone out of scope, resulting in a use-after-free.\nThis code changes the constructs around a little and ensures that the\nreference does not outlive the variable\u0027s scope.\n\nRe-scanned other code added at the same time, but did not find any\nother similar scoping issues.\n\nBug: 37276863\nTest: boot and execute; no ASAN re-test\n"
    },
    {
      "commit": "b62e77b1e3037509988986b9df2a8889c1ed547c",
      "tree": "86d14a536970124171f1d95d877750992f583e14",
      "parents": [
        "85a33cf9e8c805ff02b973cf05f17c5dfb6da4e0",
        "a85c7351143e8943dad0a6c432a8fd5a68bae953"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Apr 06 03:19:34 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 06 03:19:34 2017 +0000"
      },
      "message": "Merge \"Move MediaMetrics into its own library\" into oc-dev am: c668efcfd0\nam: a85c735114\n\nChange-Id: Ie7fb351c752fcbfdf6690c15d62c7c754b166213\n"
    },
    {
      "commit": "0f0c9b5007ff694d05a91c28359db0553e4dd061",
      "tree": "74669ec0fa61229d23b863b685bbf162e82ff32e",
      "parents": [
        "98e11c12e6f5bd64e5d6930a2bbd3522a309d6b1"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Apr 05 14:00:23 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Apr 05 14:41:03 2017 -0700"
      },
      "message": "Move MediaMetrics into its own library\n\nChanges for the new HAL structure have brought about a build time\ncircular dependency between libmedia and libmediadrm. This set of\nchanges the media metrics code into its own library and arranges\nfor the relevant consumers of the media metrics code to link\nto this new library (where they had previously picked it up by\nincluding libmedia).\n\nBug: 36990807\nTest: build, boot.\nChange-Id: I81768eecca88d5e59e6e6e547f29308a94e30c7b\n"
    },
    {
      "commit": "2e9c63b2fddfe313d1508118ff4f1bca65c0ffee",
      "tree": "47d3777126e2f3d29686a4634984a24df8eb4b8a",
      "parents": [
        "85697206ca71ec2965eb54b2ef3f152d245ec9d2"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Mar 29 15:16:44 2017 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Thu Mar 30 16:50:55 2017 -0700"
      },
      "message": "Implement metrics \u0027summarizers\u0027\n\nThe summarizers collet similar records and bunch them to save space.\nSo a string of extractor operations that crack the same format audio\nwill be combined into a single record with a new \"count\u003d#\" attribute.\n\nSummarizers will sum appropriately. The current example is in the\nPlayer summarizer -- it knows to sum the frame counts and times\n(duration and playing) as part of the summarization.\n\nBug: 36736083\nTest: lots of \u0027dumpsys -summary\u0027 manual examination\nChange-Id: I325c2d2b25720d384bcc75b73c97e5b3d8fa9731\n"
    },
    {
      "commit": "35ad27fa15b3da0c63f218e5a88b8f7c7f3419b8",
      "tree": "06679c21ca7c1f3c42758c3713aa03f8bbdce018",
      "parents": [
        "bf3b18fbf4a68184cf65d9fa063ac457d5a2af5a"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 30 14:04:11 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 30 14:59:03 2017 -0800"
      },
      "message": "clean up a fixed size buffer\n\neliminate the size of a fixed length buffer for a potentially very\nlong record.  Code was safe in that it didn\u0027t allow an overflow, but\nwe really wanted the information that was being truncated.\n\nalso some cleanup on parameters for \"dumpsys media.metrics\":\ntime units for \"-since\" and include a -help.\n\nBug: 34792286 34793404\nTest: invoke dumpsys with assorted parameters to see output\nChange-Id: If960afd52a509f277910e62c13d4ba60f9ed7e34\n"
    },
    {
      "commit": "d38e174ddbde8e7419ba01deaded4ff0ead1caaa",
      "tree": "cd62ea763bf947133d4fb6a66b693672294a2694",
      "parents": [
        "efbd36c8f57f41b0ef061cde5a88a3d384538fc9"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Jan 23 15:17:06 2017 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Jan 24 09:46:01 2017 -0800"
      },
      "message": "Change from mediaanalytics to mediametrics\n\nreflect the change from \"media.analytics\" to \"media.metrics\" in\nwhat service names we use; bring the metrics service main code into the\nservice directory (vs an additional shared library).\nRemoved references to tentative binder functions that the service\nwon\u0027t be offering, at least not in the near future.\n\nBug: 34615027\nTest: build, boot, new services run, clients talking to said services.\nChange-Id: If17772a8f03c05b142e8d5779830d198710210c1\n"
    },
    {
      "commit": "b5fac8ef36b302c12f897d06c7e097981843f3a0",
      "tree": "cad2d297cf98424f0a53a60d45c335430f0d1e23",
      "parents": [
        "51ac35503501692300f9772c29c2d2f4dc43a245"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Mon Dec 12 11:33:56 2016 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Dec 20 14:36:27 2016 -0800"
      },
      "message": "Refine MediaAnalytics framework\n\nRework some interfaces to avoid unnecessary sp\u003c\u003e mechanisms;\ndocument which side of caller/callee owns pointers afterwards.\nRework internal attribute representation, add support routines.\n\nBug: 33547720\nTest: Boot, ran subset of CTS media tests\nChange-Id: Id0d65bd6a847704dc98d38be9aa5e1ce63c20e1c\n"
    },
    {
      "commit": "3938dc6363949ef126bb6188d26b5bef6db8be4d",
      "tree": "fe9553c997bd8a827cea887461895b7551085626",
      "parents": [
        "c2d29c48ea9314f1db836a906c95ee9bd6ef11c8"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Nov 01 08:56:56 2016 -0700"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Fri Dec 02 16:25:42 2016 -0800"
      },
      "message": "initial mediasanalytics framework\n\nThis encompasses the basic framework files for mediaanalytics.  This\nincludes the library code to run in clients, the interface definitions\nto get to the service, and the mediaanalytics service.\n\nThis version of the patchset also incorporates a wholesale change from\n\"Media Statistics\" to \"Media Analytics\" -- which involved both textual\nchanges and file renaming\n\nThis does not include the changes to other entities that will be sending\ndata. We\u0027ll do those under separate per-entity commits.\n\nBug: 30267133\nTest: run through cts\u0027 media stress tests\nChange-Id: Iee7e722d10fd57c5d6b14e2947117ed0d3af4f2a\n"
    }
  ]
}
