)]}'
{
  "log": [
    {
      "commit": "d36832a813c8a1aadcc671e99808f475a160bc22",
      "tree": "928b6be98157f98291c253aeda0667f0c70be2ab",
      "parents": [
        "2cc3afc8a5d70910e2c0e4c04c41393ff1e7effc"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Sep 23 16:01:52 2016 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Sep 23 16:01:52 2016 -0700"
      },
      "message": "Fix potential heap data leak in mediadrmserver\n\nChange-Id: Ife4cecaeb5e301d702681c6dba9a17357232db40\nrelated-to-bug: 31657897\n"
    },
    {
      "commit": "2cc3afc8a5d70910e2c0e4c04c41393ff1e7effc",
      "tree": "d1f5cb864fd306b9e9d4b3a03efca4d7fbd6f2ed",
      "parents": [
        "08e1f41731ad95a0019b3733b999958a07f705ac"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Sep 21 18:06:52 2016 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Sep 23 13:38:05 2016 -0700"
      },
      "message": "Fix L3 HLS decryption\n\nA recent change to avoid returning decrypted data\nover binder assumed that in-place decryption was\nsafe. That isn\u0027t true for the L3 HLS case. This\nchange eliminates the assumption that in-place\ndecryption is safe while still returning the\ndecrypted data via shared memory, instead of\ncopying it over binder.\n\nbug: 31657897\nChange-Id: I7e480a25d2f9b08e54a4844ecdf19ba3c8af79c2\n"
    },
    {
      "commit": "e5de6405dcd7f929cb7b412242d678132f9bcf61",
      "tree": "1f0a1b2deed447f4476eff71bce26755ee454258",
      "parents": [
        "3b0515db3405df2e759984aff7ac59aed0b16a98",
        "db7ad62386c3094a319ca048c27502c4e0f559ee"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 15:10:37 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 15:10:37 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06 am: a0cfcf38d4 am: 638aca47be am: e353ce4b3c am: 762b7a9b6e am: db8cfb97c8 am: dffa39ac23 am: 53b2b9eba3 am: 4073c59ac5 am: 093d164153 am: 0b001b52f9 am: 7197338718\nam: db7ad62386\n\nChange-Id: I499c5d2a9454e500faa23208c9ae8fd2ba929fbe\n"
    },
    {
      "commit": "db7ad62386c3094a319ca048c27502c4e0f559ee",
      "tree": "85171b2248cafe5a0b7647d5c74cf2938ea898e1",
      "parents": [
        "2b33d52dde3f6ac9ea86e247105f6348c6fe4e05",
        "7197338718d2222ba8e2e39911eeb58f2fb3c902"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 15:08:05 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 15:08:05 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06 am: a0cfcf38d4 am: 638aca47be am: e353ce4b3c am: 762b7a9b6e am: db8cfb97c8 am: dffa39ac23 am: 53b2b9eba3 am: 4073c59ac5 am: 093d164153 am: 0b001b52f9\nam: 7197338718\n\nChange-Id: I51e90ea3aa8b93faa09a62fc0eb6b2b8323be863\n"
    },
    {
      "commit": "7197338718d2222ba8e2e39911eeb58f2fb3c902",
      "tree": "50c55a9ee6d351f454c8031f19eaf05ed5418072",
      "parents": [
        "cdabec640bb62c184bb00a8613c344f439cde2e0",
        "0b001b52f9d902b0634bad4932b491d2bfa24b92"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 15:05:59 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 15:05:59 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06 am: a0cfcf38d4 am: 638aca47be am: e353ce4b3c am: 762b7a9b6e am: db8cfb97c8 am: dffa39ac23 am: 53b2b9eba3 am: 4073c59ac5 am: 093d164153\nam: 0b001b52f9\n\nChange-Id: I22af9732a7d15ab13dbf4994a0bc72d1716cc180\n"
    },
    {
      "commit": "4073c59ac5613f888cd91c73b896b50f1f9ceed6",
      "tree": "f0f57cc87d7a06a71627f0aadbdedc5d3ced468e",
      "parents": [
        "b028a26af06710a01f3e61089d8b0b51daf0851c",
        "53b2b9eba3f660cc28c077eb6eb97fedbc672a9e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 14:57:02 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 14:57:02 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06 am: a0cfcf38d4 am: 638aca47be am: e353ce4b3c am: 762b7a9b6e am: db8cfb97c8 am: dffa39ac23\nam: 53b2b9eba3\n\nChange-Id: Ifd1146a5fa1f9ae7abe7ad559a946ca898a918ab\n"
    },
    {
      "commit": "53b2b9eba3f660cc28c077eb6eb97fedbc672a9e",
      "tree": "cf57764614547ad9f3534d469cd6b48577e36409",
      "parents": [
        "c37d5f55a5fb52fd6656aff4f4408272ba36ab15",
        "dffa39ac23f0694e645fa3fd26eb7518bde2d5f2"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 14:54:32 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 14:54:32 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06 am: a0cfcf38d4 am: 638aca47be am: e353ce4b3c am: 762b7a9b6e am: db8cfb97c8\nam: dffa39ac23\n\nChange-Id: I7f6a1264beac4f08357a5e151ec00abc127e9338\n"
    },
    {
      "commit": "dffa39ac23f0694e645fa3fd26eb7518bde2d5f2",
      "tree": "870dd544afdd2ea0f206285e67bc00ea3b85d3d4",
      "parents": [
        "b2c00418d375087cfbb966721f456822f2ea77f0",
        "db8cfb97c8ce12a771cd63d78de58dc433035fcd"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 14:52:02 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 14:52:02 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06 am: a0cfcf38d4 am: 638aca47be am: e353ce4b3c am: 762b7a9b6e\nam: db8cfb97c8\n\nChange-Id: I1f204b5117adb467d0883a59b3f1a90f4c10ba47\n"
    },
    {
      "commit": "762b7a9b6e85c747f5c805637e6f1691dda8bcf3",
      "tree": "119b578b6d5a551af92fc6a4d08a3f9695b76bb8",
      "parents": [
        "d959eb23c5d9968d77934de22eb815174929ad1b",
        "e353ce4b3c95a55df510da9376ad7878338e984f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 14:46:30 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 14:46:30 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06 am: a0cfcf38d4 am: 638aca47be\nam: e353ce4b3c\n\nChange-Id: Iba3ac429600319f099276cc774eb8b3bb85e7b25\n"
    },
    {
      "commit": "e353ce4b3c95a55df510da9376ad7878338e984f",
      "tree": "29fb1942074096be39d5f6c5218685ef51c3bead",
      "parents": [
        "9a5ec6b4c31f4d8482c81328273c7be3e656cf06",
        "638aca47bedb0b9f71f8962b1f04ab3cfc8876e8"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 14:44:02 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 14:44:02 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06 am: a0cfcf38d4\nam: 638aca47be\n\nChange-Id: I337dd1d62a4cd52de051afd4d9b919a742ad20fe\n"
    },
    {
      "commit": "638aca47bedb0b9f71f8962b1f04ab3cfc8876e8",
      "tree": "a0d7c7a338193492a5c619f6055690735f983c09",
      "parents": [
        "d7822b33130a879e864b86009fcfd2b17f755b39",
        "a0cfcf38d478d42b2fc3dcb2e6a05c0a8f0a0b22"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 21 14:41:28 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 21 14:41:28 2016 +0000"
      },
      "message": "Check mprotect result am: 866c800c06\nam: a0cfcf38d4\n\nChange-Id: I0f188e2c717922689df42af21f6c47a865a8c390\n"
    },
    {
      "commit": "866c800c0624bb13eee44973cc8a2ecd0012de6e",
      "tree": "6c280f4333d41e3355c84ecc1b9635d805993b30",
      "parents": [
        "b602286952fc68e614a27902a6c9fd0ac390f450"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Sep 20 13:36:40 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Sep 20 13:54:21 2016 -0700"
      },
      "message": "Check mprotect result\n\nmprotect can theoretically fail, which could then let one exploit\na vulnerable codec if one exists on the device.\n\nBug: 31350239\nChange-Id: I7b99c190619f0fb2eb93119596e6da0d2deb8ba5\n"
    },
    {
      "commit": "2f63815ca263517988ce3d6aa3febd6f2e7291e3",
      "tree": "2f71774491d008461b4bd06fd75cd751a2e3028c",
      "parents": [
        "b83d53a156d980d81b78c51b7c7938d42695f43c",
        "3048485165ef692c77b30330054aaf299834fcba"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Sep 20 04:41:52 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 20 04:41:53 2016 +0000"
      },
      "message": "Merge \"Avoid returning decrypted data over binder\" into nyc-mr1-dev"
    },
    {
      "commit": "3048485165ef692c77b30330054aaf299834fcba",
      "tree": "4dd16699101068dd74412565a232452c2ea7d25a",
      "parents": [
        "3b6c92f819442a56d72dc1764eb4fbc33a73ed7d"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Sep 02 18:18:39 2016 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Mon Sep 19 19:52:38 2016 -0700"
      },
      "message": "Avoid returning decrypted data over binder\n\nUse shared memory instead\n\nb/29514618\n\nChange-Id: Iba82053f7c965c7bead816654827cbf94d3b2a9d\n"
    },
    {
      "commit": "aac112a031d52dacc467bc0a6a889a90da2792d5",
      "tree": "e8d94429126589076f5cfeab819addc83735ce61",
      "parents": [
        "7b973eb89ea7088fe82f457cd10013bbe739bba4",
        "9996d9d39618b89d0f85c98b8036f003290f0d7e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Sep 19 22:07:52 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 19 22:07:52 2016 +0000"
      },
      "message": "Merge \"IMediaSource: fix local MediaBufferGroup refcount\" into nyc-mr1-dev"
    },
    {
      "commit": "9996d9d39618b89d0f85c98b8036f003290f0d7e",
      "tree": "d56778f1f5a1d539a925c2d59a7659adf27f8fc0",
      "parents": [
        "94a82dcdb9f7bc3027b4cfbda8990a4e4c47e163"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Sep 15 18:19:49 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Sep 16 10:50:25 2016 -0700"
      },
      "message": "IMediaSource: fix local MediaBufferGroup refcount\n\nBug: 31526329\nChange-Id: Ib596454e1c224e135dd51f95b0182f86d9e76f55\n"
    },
    {
      "commit": "2e5b5704b0028d8cf9467789dd0c01709644a523",
      "tree": "ec152f299946d58300cd1922fc3a624082cb98da",
      "parents": [
        "41f2c47c0019b2a979ebe79241c5eb6ce14c0a3f"
      ],
      "author": {
        "name": "ganxiaolin",
        "email": "ganxiaolin@xiaomi.com",
        "time": "Fri Jan 29 19:57:57 2016 +0800"
      },
      "committer": {
        "name": "rago",
        "email": "rago@google.com",
        "time": "Thu Sep 15 12:03:27 2016 -0700"
      },
      "message": "Remove force argument to ensure mCaptureThread exit within Visualizer destructor\n\nUpdated logic for exit request when effect is disabled.\nThis CL includes some original changes suggested by:\nganxiaolin \u003cganxiaolin@xiaomi.com\u003e\n\nBug: 30684284\n\nChange-Id: I77768e8204e712f3fd9d0a9bf768de3cb578d6ce\n"
    },
    {
      "commit": "a930117eb3c4e184395f87b5b6d7639dc11576d9",
      "tree": "ebee63726eaf20dbe801f70274470a9f508f3cb4",
      "parents": [
        "7c6bd7b17835cfa615d1f74aa7fe7c45c7190e4d",
        "4bb650bb3c4f15789232f3f3cf778c5441122360"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Wed Sep 14 17:26:23 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Sep 14 17:26:23 2016 +0000"
      },
      "message": "Merge \"AudioFlinger: flush direct tracks that are paused\" into nyc-mr1-dev"
    },
    {
      "commit": "4bb650bb3c4f15789232f3f3cf778c5441122360",
      "tree": "38aeb0e3fe7cd024923114813d41b0dbf4ed88aa",
      "parents": [
        "3fb45bb6396f245ae7b47dcfe02fb600eec0b84c"
      ],
      "author": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Fri Sep 09 12:11:17 2016 -0700"
      },
      "committer": {
        "name": "Phil Burk",
        "email": "philburk@google.com",
        "time": "Mon Sep 12 17:11:30 2016 -0700"
      },
      "message": "AudioFlinger: flush direct tracks that are paused\n\nNormally the flush is processed on ObtainBuffer.\nBut that is not called when the track is paused.\nSo it was not possible to flush and re-prime a\ntrack that was paused.\n\nNow we flush synchronously for inactive tracks,\nand flush from prepareTracks_l for active tracks.\n\nBug: 19193985\nBug: 27791443\nChange-Id: I39a7e4921e45041c3a51cf91fd3995b5edee6dd4\nSigned-off-by: Phil Burk \u003cphilburk@google.com\u003e\n"
    },
    {
      "commit": "9bbafdb5b4266d51d868844c624a33035a2abea1",
      "tree": "121e1ebc3dd71e40c1df0fdf85314c19f7a9b0f1",
      "parents": [
        "01b589c3e1976672dc9106d17c6e0095915082be",
        "9bd3c9b0e894c9f6c48a2cfa7c5f21d384b1c596"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Sep 09 17:53:46 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 09 17:53:46 2016 +0000"
      },
      "message": "Merge \"Improve MediaBuffer robustness for remote clients\" into nyc-mr1-dev"
    },
    {
      "commit": "61bb7a0d99bcacac5ae4ea2171add8d4dd9ea459",
      "tree": "4331e45a52581bd856bea1abd2f6189a2785a5a7",
      "parents": [
        "beb7008c2e6c8ee71b5e5aaf101990ea52a67da1",
        "da3cba194bff674f5a3f4b0249a651b00ab00c37"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Sep 09 17:00:44 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 09 17:00:44 2016 +0000"
      },
      "message": "DO NOT MERGE: IOMX: work against metadata buffer spoofing am: 9a4768f7bf\nam: da3cba194b\n\nChange-Id: I018340e57d237e4d36d68e2cd118336242447b9c\n"
    },
    {
      "commit": "c5251a627cd1c4c9403c80458fa10768813e7202",
      "tree": "fe4ae673410484aa9ddd73a94eb2fba87ce8401c",
      "parents": [
        "0dd714e4081b874425aef6c40b152fb918ae595e",
        "ee9effab3decc4275f4365b78c96911018e8de8c"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Sep 09 16:59:46 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 09 16:59:46 2016 +0000"
      },
      "message": "DO NOT MERGE: IOMX: work against metadata buffer spoofing am: 807e827d4c\nam: ee9effab3d\n\nChange-Id: I64bd10fa5e5e5a020c129c0b77d813a2772376a0\n"
    },
    {
      "commit": "8751b3c3ac6a6cc606a0fce1e8ed0a01a1168c08",
      "tree": "1abd48dce8c96f2bb3126a41ff0c53509aa12524",
      "parents": [
        "647f55d75de0a6b09b2171682e78de34160f09f2",
        "f8a4cb410115045278f534e54b41ac78d6bf6c07"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Sep 09 16:56:46 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 09 16:56:46 2016 +0000"
      },
      "message": "IOMX: work against metadata buffer spoofing\nam: f8a4cb4101\n\nChange-Id: I3aeec794c96fe3b0000546700e010b5ddc6e4f0f\n"
    },
    {
      "commit": "030fbd4835412d07edcfb80230d930c3819dd2ee",
      "tree": "4783d31fd627ae6625b21f92840d4cb9c6e4d30f",
      "parents": [
        "9a6861cbd3bb0e1b8fe4c105795256ee032f9664",
        "f8a4cb410115045278f534e54b41ac78d6bf6c07"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri Sep 09 16:52:15 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 09 16:52:15 2016 +0000"
      },
      "message": "Merge \"IOMX: work against metadata buffer spoofing\" into mnc-dev"
    },
    {
      "commit": "9bd3c9b0e894c9f6c48a2cfa7c5f21d384b1c596",
      "tree": "a09214342f1a34d1b2d1188dc1fe55fd172994aa",
      "parents": [
        "57d8e70186106995ec0ae0891f014a3209f71551"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Sep 07 14:42:55 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Sep 08 20:09:54 2016 -0700"
      },
      "message": "Improve MediaBuffer robustness for remote clients\n\nAllow remote process to die or behave incorrectly.\n\nBug: 31060086\nChange-Id: I01bc8984287fed61a46083ec090b7773e49158a9\n"
    },
    {
      "commit": "dd7e169bd1e6bc1688ffb732b8fa1c75656ae719",
      "tree": "45e875c390355a62fb8386f3799237250a196593",
      "parents": [
        "6ba9b60facdffc9dfdd6e8792798f27d51c104ba",
        "9ede6cef5e2cf5822f826eb9df980dcb7337ea41"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Sep 07 19:16:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 07 19:16:51 2016 +0000"
      },
      "message": "Fix stack content leak vulnerability in mediaserver am: 9a6861cbd3 am: 647f55d75d am: b6d08633e9 am: 7d616daf2b am: b57b64d46d\nam: 9ede6cef5e\n\nChange-Id: If4e0de93975dacfeb2bac69646a86b8a18d516a7\n"
    },
    {
      "commit": "9ede6cef5e2cf5822f826eb9df980dcb7337ea41",
      "tree": "822c27c744a972f720ce5d6c075c0a818fae54f9",
      "parents": [
        "bcc30e06dd15244e2824161f6898ad6c37f66c92",
        "b57b64d46d7150b40a81629a89074af8212c661c"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Sep 07 19:11:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 07 19:11:51 2016 +0000"
      },
      "message": "Fix stack content leak vulnerability in mediaserver am: 9a6861cbd3 am: 647f55d75d am: b6d08633e9 am: 7d616daf2b\nam: b57b64d46d\n\nChange-Id: I85758471a3e01105986b1975b55287ce02161178\n"
    },
    {
      "commit": "b57b64d46d7150b40a81629a89074af8212c661c",
      "tree": "53c3fbcf316f102bd7794baea19a8f20a86b89a0",
      "parents": [
        "22fdb93234e1e5d8c384a75c05e01ee92e20e61a",
        "7d616daf2beb994e3c4dc1bc0ea853388d88892e"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Sep 07 19:08:37 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 07 19:08:37 2016 +0000"
      },
      "message": "Fix stack content leak vulnerability in mediaserver am: 9a6861cbd3 am: 647f55d75d am: b6d08633e9\nam: 7d616daf2b\n\nChange-Id: I31fea7042e670c4e2bfbb9225b012e203d5a43bf\n"
    },
    {
      "commit": "647f55d75de0a6b09b2171682e78de34160f09f2",
      "tree": "9d3453a384d9d35fc969b6110ed9c25fe7de236e",
      "parents": [
        "81e055751904469db7233f4698a9b6a8a1d50900",
        "9a6861cbd3bb0e1b8fe4c105795256ee032f9664"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Sep 07 19:01:22 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Sep 07 19:01:22 2016 +0000"
      },
      "message": "Fix stack content leak vulnerability in mediaserver\nam: 9a6861cbd3\n\nChange-Id: I3c8d56b18678f68ff4617620312c4c32d4e0baf7\n"
    },
    {
      "commit": "9a6861cbd3bb0e1b8fe4c105795256ee032f9664",
      "tree": "68879d289cd3e1eceaab8e0a37a809d7d9ef1078",
      "parents": [
        "50b9d889e637ff3c26e4582edc91ff0c2111fd6d"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Sep 02 11:36:46 2016 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Fri Sep 02 18:40:40 2016 +0000"
      },
      "message": "Fix stack content leak vulnerability in mediaserver\n\nbug: 30875060\nChange-Id: I03f4d08b7b31ac5b507cfc9e65e5607c73972d95\n"
    },
    {
      "commit": "f4da60ebc2c527a3f5afca30a28b1d73801ea850",
      "tree": "2355fa1bd7d982cc5af00b098da8523a9a628f97",
      "parents": [
        "dedfb43c7cb81a82e5266e420e96e21703d96084",
        "8255ba7b40774b2b8868482f1a302db3ae98e905"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Aug 23 22:49:03 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Aug 23 22:49:03 2016 +0000"
      },
      "message": "sched_getscheduler may include SCHED_RESET_ON_FORK\nam: 8255ba7b40\n\nChange-Id: I525d60cb487c87c517ba1edeadaf29b5f9a6cb54\n"
    },
    {
      "commit": "8255ba7b40774b2b8868482f1a302db3ae98e905",
      "tree": "abba9d2c478e9add3fc31ce7836d8a4ce00011b5",
      "parents": [
        "2180a83292987f2289650ff0853e031cd3c796ed"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Aug 23 13:54:23 2016 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Aug 23 14:06:33 2016 -0700"
      },
      "message": "sched_getscheduler may include SCHED_RESET_ON_FORK\n\nThe SCHED_RESET_ON_FORK flag is visible in the policy value returned by sched_getscheduler()\n\nBug: 31020591\nChange-Id: I5243fadce2a5f629fa2dc61888d8aa9aff32d9ca\n"
    },
    {
      "commit": "9a4768f7bfcd4654f93ad9b22eff87df493a9d5e",
      "tree": "6ce64deb9302b71b954bd076210592384598f082",
      "parents": [
        "0e2cc67785e417da3df72b3e7d8fcb792582b076"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Aug 02 07:07:05 2016 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Aug 18 14:29:49 2016 -0700"
      },
      "message": "DO NOT MERGE: IOMX: work against metadata buffer spoofing\n\n- Prohibit direct set/getParam/Settings for extensions meant for\n  OMXNodeInstance alone. This disallows enabling metadata mode\n  without the knowledge of OMXNodeInstance.\n- Do not share metadata mode buffers cross process.\n- Disallow setting up metadata mode/tunneling/input surface\n  after first sendCommand. (Except to Idle for OMXCodec quirk.)\n- Disallow store-meta for input cross process.\n- Disallow emptyBuffer for surface input (via IOMX).\n- Fix checking for input surface.\n\n[backported from M]\n\nBug: 29422020\nChange-Id: I801c77b80e703903f62e42d76fd2e76a34e4bc8e\n"
    },
    {
      "commit": "86369364a07c85dd8f0e890b783a7bd434b8ef7c",
      "tree": "6a17ee31928e7fef5edee7d01467a0208f303cf3",
      "parents": [
        "8f4b1a7de0e102b9203cfda3970edd2eedd9becf"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Aug 02 07:07:05 2016 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Aug 18 14:25:51 2016 -0700"
      },
      "message": "DO NOT MERGE: IOMX: work against metadata buffer spoofing\n\n- Prohibit direct set/getParam/Settings for extensions meant for\n  OMXNodeInstance alone. This disallows enabling metadata mode\n  without the knowledge of OMXNodeInstance.\n- Do not share metadata mode buffers cross process.\n- Disallow setting up metadata mode/tunneling/input surface\n  after first sendCommand. (Except to Idle state for OMXCodec quirk.)\n- Disallow store-meta for input cross process.\n- Disallow emptyBuffer for surface input (via IOMX).\n- Fix checking for input surface.\n\n[backported from L-MR1]\n\nBug: 29422020\nChange-Id: I801c77b80e703903f62e42d76fd2e76a34e4bc8e\n"
    },
    {
      "commit": "807e827d4c1196754faaf138cb93c57c5b137e69",
      "tree": "af2fecd37fa95b1dfa1aaff16d6789d7f3131e33",
      "parents": [
        "17a10c50e20d934c1ac5956fe9019d3013e3f8b3"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Aug 02 07:07:05 2016 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu Aug 18 14:16:15 2016 -0700"
      },
      "message": "DO NOT MERGE: IOMX: work against metadata buffer spoofing\n\n- Prohibit direct set/getParam/Settings for extensions meant for\n  OMXNodeInstance alone. This disallows enabling metadata mode\n  without the knowledge of OMXNodeInstance.\n- Do not share metadata mode buffers cross process.\n- Disallow setting up metadata mode/input surface\n  after first sendCommand (except to Idle for OMXCodec quirk).\n- Disallow store-meta for input cross process.\n- Disallow emptyBuffer for surface input (via IOMX).\n- Fix checking for input surface.\n\n[backported from L]\n\nBug: 29422020\nChange-Id: I801c77b80e703903f62e42d76fd2e76a34e4bc8e\n"
    },
    {
      "commit": "b29385110c3f6a52e209c0e1cf70e9cf2eed5e89",
      "tree": "722a025510796ae61a30b2c7c99ca64d111c790a",
      "parents": [
        "6da0f8d15b38d7979caf22cf5865a959358f9c58"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 18 12:49:40 2016 +0000"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Aug 18 18:38:43 2016 +0000"
      },
      "message": "Merge \"Fix for tone glitch produced in ToneGenerator\" am: 46f1c24c5a am: 84183ba496 am: 09b0b40fb4\nam: 67b5bb745b\n\nBug: 29922404\n\nChange-Id: Ie5185fda8ad4043ec199e9ebe74e67974ce7e44f\n(cherry picked from commit 7f68f0f06504664b8b328f8b99ab5479f9dbd1a8)\n"
    },
    {
      "commit": "cfa86b5efa029391df04182dedfabd72b49a32f5",
      "tree": "e26ec826495e196ed1c781ccb4540d10df5fb5dd",
      "parents": [
        "90f7c37361c22f86bd3d63d22c27fbea34c188e1"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri Jul 29 19:25:07 2016 -0700"
      },
      "committer": {
        "name": "Thierry Strudel",
        "email": "tstrudel@google.com",
        "time": "Thu Aug 18 00:06:28 2016 +0000"
      },
      "message": "MediaBuffer: Only use shared memory for processes that export MediaBuffers\n\nReduces excess file descriptors and shared memory creation and releases.\n\nBug: 28930897\nBug: 30341084\nChange-Id: I8190e22dd800f25be79ec33cb02613d15482e1d4\n"
    },
    {
      "commit": "f8a4cb410115045278f534e54b41ac78d6bf6c07",
      "tree": "277909e121cf816d871fc1203b58f87413f83be0",
      "parents": [
        "7ab70a7ba9ff522d45763af48d15aac805738d9c"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue Aug 02 07:07:05 2016 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Wed Aug 03 14:39:52 2016 +0000"
      },
      "message": "IOMX: work against metadata buffer spoofing\n\n- Prohibit direct set/getParam/Settings for extensions meant for\n  OMXNodeInstance alone. This disallows enabling metadata mode\n  without the knowledge of OMXNodeInstance.\n- Do not share metadata mode buffers cross process.\n- Disallow setting up metadata mode/tunneling/input surface\n  after first sendCommand.\n- Disallow store-meta for input cross process.\n- Disallow emptyBuffer for surface input (via IOMX).\n- Fix checking for input surface.\n\nBug: 29422020\nChange-Id: I801c77b80e703903f62e42d76fd2e76a34e4bc8e\n"
    },
    {
      "commit": "50029b6d7333197cc3d48e5d7e3bfd6ac3a288f0",
      "tree": "15ca6fc134b54c51238f60c24921fb4280c6f892",
      "parents": [
        "f929f9b203ef4787d45f8b24aab053aaab993be9"
      ],
      "author": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Mon Aug 01 15:14:15 2016 -0700"
      },
      "committer": {
        "name": "Tyler Gunn",
        "email": "tgunn@google.com",
        "time": "Mon Aug 01 15:14:15 2016 -0700"
      },
      "message": "Add Australia specific supervisory tones.\n\nSource: http://www.itu.int/ITU-T/inr/forms/files/tones-0203.pdf\n\nBug: 30492475\nChange-Id: I39bab77ec4db8c81aa0e9f6c509c67970a76ab81\n"
    },
    {
      "commit": "5cd258a918f4eebde4b899f71126cbfba42895c7",
      "tree": "a9360472686a85cc797ad626926e06ed74a350de",
      "parents": [
        "e14cd31cd671bd8ad3e7c7cc58bd7a625442051c",
        "7711c90d957514efd5fa68d3fdf269e919a36720"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jul 26 18:06:11 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 26 18:06:11 2016 +0000"
      },
      "message": "Merge \"ToneGenerator: Increase buffer framecount\" into nyc-mr1-dev"
    },
    {
      "commit": "7711c90d957514efd5fa68d3fdf269e919a36720",
      "tree": "f62994b25978d76851a7395fd775cf038618b590",
      "parents": [
        "11dd692efa611d129167abea854dc14f0046d727"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jul 25 17:53:23 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon Jul 25 19:15:45 2016 -0700"
      },
      "message": "ToneGenerator: Increase buffer framecount\n\nUsing default fast track buffer size made glitches evident;\nincrease to at least process size.\n\nBug: 29345846\nChange-Id: Ib554f31d5f5731dfad481c5e48c26e7c529a2a6b\n"
    },
    {
      "commit": "0a2f151f37c715078351ae0be99b0c4dbabc2a23",
      "tree": "837f0234dd3a5836512f85971f72072a59167afe",
      "parents": [
        "00bbc1d5ee0ad847ed07a273d103e2996862e98b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jul 22 08:06:37 2016 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Jul 22 08:06:37 2016 -0700"
      },
      "message": "Fix AudioRecord::read and AudioTrack::write return\n\nvalue to only be one of the documented status codes.\n\nBug: 30158307\nChange-Id: If1ba16ce2ee10ba5ccb1674003a4b8fa086f27bc\n"
    },
    {
      "commit": "9a1a9537456e41cb8450f84a735c3d005a22ffe2",
      "tree": "511d4d0323b520205d0f4a136bc15b593b3d6b48",
      "parents": [
        "25d1b63b7cfbd0083ecd54c589f71664411f9b8c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Jul 07 10:02:51 2016 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Jul 13 23:23:50 2016 +0000"
      },
      "message": "MediaExtractor: add DrmInitialization in IDataSource.\n\nBug: 28901867\nChange-Id: Ic33dc8dc2f5f36239e057d2f2aceeb7738eef968\n(cherry picked from commit 2a5e49c984befa066e966cd9af2303a54976f163)\n"
    },
    {
      "commit": "cdeb6603d862cec4adac7c39f3b8b240f2b645dc",
      "tree": "839cc37ee4a36e37f7597fccdd7c927e1b314c3e",
      "parents": [
        "f59c0bafebcd795b20141bf928a5cab8ac46e882"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jun 28 17:21:44 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 13 12:38:46 2016 -0700"
      },
      "message": "GenericSource: Allow multiple buffer reads for video\n\nBug: 29125703\nChange-Id: I23490a65ad3968d7be561805c9fa742320b5c78a\n"
    },
    {
      "commit": "f59c0bafebcd795b20141bf928a5cab8ac46e882",
      "tree": "13148690f5bcc66bd17c56b4a0f4cd9f5d05b539",
      "parents": [
        "88bd73d9acf5011ef40122fa9a1b43195facbe07"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jun 15 17:59:30 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jul 13 12:38:33 2016 -0700"
      },
      "message": "IMediaSource: Improve shared memory buffer transfer\n\nBug: 29125703\nChange-Id: Icf1180dee65f6504e6c10dd4d5b28a8e441f67d1\n"
    },
    {
      "commit": "2a5e49c984befa066e966cd9af2303a54976f163",
      "tree": "305eb96568ad98fce4823326b48eaa9e085fe48b",
      "parents": [
        "e37b911fbf70c15c652db8585bca2a5f035d9def"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Jul 07 10:02:51 2016 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed Jul 13 00:11:07 2016 +0000"
      },
      "message": "MediaExtractor: add DrmInitialization in IDataSource.\n\nBug: 28901867\nChange-Id: Ic33dc8dc2f5f36239e057d2f2aceeb7738eef968\n"
    },
    {
      "commit": "2b49066e0261377477aef9743a9db82805d0eb8d",
      "tree": "f21a530ce85b38a43d650883c759bc08e5c4661d",
      "parents": [
        "bea67b8a707b8875419019ebd2d568090310b326"
      ],
      "author": {
        "name": "Mykola Kondratenko",
        "email": "mykola.kondratenko@sonymobile.com",
        "time": "Fri Aug 14 15:01:17 2015 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 12 14:02:32 2016 -0700"
      },
      "message": "Fix WaveGenerator memory leak\n\nReleasing memory with ToneGenerator::stopTone() depends on\nToneGenerator::mState that can cause memory leak in case\nmState is TONE_INIT.\n\nRemove dependency to mState by adding ToneGenerator::clearWaveGens()\nexplicit call in ToneGenerator destructor.\n\nBug: 29916937\n\nChange-Id: I5ccfbca9f2ae1abac9e160a2a309fb6962d4a110\n"
    },
    {
      "commit": "1bcae276ab189c364393d6971ed8a7d5e6376498",
      "tree": "50c5cfbcef39c4daeb482290fa57372173065dbe",
      "parents": [
        "7a9c55c5cedf46ef4f6b3de034634312bd1ff0ee"
      ],
      "author": {
        "name": "Lukasz Wasowicz",
        "email": "lukasz.wasowicz@sonymobile.com",
        "time": "Tue Oct 06 15:51:16 2015 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 30 18:08:01 2016 -0700"
      },
      "message": "Fix for wrong ringtone when using VoWiFi\n\nIf operator goes into flight mode and tries to make call via WiFi, then\nproperty \"gsm.operator.iso-country\" is read as empty string and in\nconsequence mRegion is set as CEPT instead of specific country-area\nname (e.g. instead of UNITED_KINGDOM).\n\nWe may check additional property that does not depend on network\noperator: \"gsm.sim.operator.iso-country\" so that we could set mRegion\nproperly.\n\nBug: 29494265\n\nChange-Id: Ia374f73159e005431fb0ad9bf8b5dbb3d9a3e294\n"
    },
    {
      "commit": "7a9c55c5cedf46ef4f6b3de034634312bd1ff0ee",
      "tree": "012a19a73ae8616b2a49c81e3cb1e32dcf1a263f",
      "parents": [
        "3743febf9567e849ce580ddc68579237d96e5a55"
      ],
      "author": {
        "name": "tadashi.aoyama",
        "email": "tadashi.xa.aoyama@sonymobile.com",
        "time": "Mon Apr 18 18:30:46 2016 +0900"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 30 18:06:32 2016 -0700"
      },
      "message": "Fix tone region(for US, CA and JP) recognition for dual SIM\n\nValue of \"gsm.operator.iso-country\" differs between the case of single\nSIM device and the case of dual SIM device with only one SIM enabled.\nThis change makes ToneGenerator detect region in case there is only\none SIM enabled in dual SIM device.\n\nChange-Id: I771858ec9d85054d90d7d8141266655b42b093b9\n"
    },
    {
      "commit": "3743febf9567e849ce580ddc68579237d96e5a55",
      "tree": "2e17b16a85fc4b402ff25d710351927f821a4394",
      "parents": [
        "d023a7707fe551817fb3f7539f68a388b3381f41"
      ],
      "author": {
        "name": "takafumi nakamura",
        "email": "takafumi.x.nakamura@sonymobile.com",
        "time": "Fri Nov 20 18:09:02 2015 +0900"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Jun 30 18:04:29 2016 -0700"
      },
      "message": "Add the conditions that determine the region for US, CA and JP\n\nRegion is incorrect when dual SIM is inserted.\nToneGenerator class doesn\u0027t consider the dual SIM use case,\nso region is always set to a default value(CEPT) even if\nthese country\u0027s dual SIMs are inserted.\n\nChange-Id: Iad684856f550b50345b71d8c07e99e27f87407a7\n"
    },
    {
      "commit": "793caf8a76375aff3c22af4db7489859408f9b10",
      "tree": "600c99a510e2b57ed6a42dd333e0144029698e7e",
      "parents": [
        "dc43ff40e32db2ce14d21ce25ce8a0f887cf9aa9",
        "6e70614750e8100f86fb4cb0f010b49aef39b3a1"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 18:54:43 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 23 18:54:43 2016 +0000"
      },
      "message": "Merge \\\"Revert \\\"Restore old signature for acquire/release session\\\"\\\" into nyc-dev\nam: 6e70614750\n\nChange-Id: Icbbcfdbbfce7ce8f00e40e58c9a13d1a1a245f37\n"
    },
    {
      "commit": "6e70614750e8100f86fb4cb0f010b49aef39b3a1",
      "tree": "6e80d1039323547988dc955d6acfed9bdc4b8d67",
      "parents": [
        "ef9cab1d86054d8ab17056990e0264e1ccb826c1",
        "fc5c22b0c574f97fbf5c87f9a01b4d60e27e6b37"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 18:39:32 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 23 18:39:32 2016 +0000"
      },
      "message": "Merge \"Revert \"Restore old signature for acquire/release session\"\" into nyc-dev"
    },
    {
      "commit": "fc5c22b0c574f97fbf5c87f9a01b4d60e27e6b37",
      "tree": "77b47550a981fab12c83ffc87baf7f2a203fcf26",
      "parents": [
        "2d51b7c18ad0ffd142d7ba94203f52ba3f735530"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 18:04:48 2016 +0000"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 18:04:48 2016 +0000"
      },
      "message": "Revert \"Restore old signature for acquire/release session\"\n\nThis reverts commit 2d51b7c18ad0ffd142d7ba94203f52ba3f735530.\n\nChange-Id: I8e17813b9639d8e928bcfa348d21c45fb8b5f846\n"
    },
    {
      "commit": "dc43ff40e32db2ce14d21ce25ce8a0f887cf9aa9",
      "tree": "f572ff784282780fd95ee831231112f1570e23f5",
      "parents": [
        "51e36de79d5c0041713302114d41077cebdc9e92",
        "ef9cab1d86054d8ab17056990e0264e1ccb826c1"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 16:09:42 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 23 16:09:42 2016 +0000"
      },
      "message": "Merge \\\"Restore old signature for acquire/release session\\\" into nyc-dev\nam: ef9cab1d86\n\nChange-Id: I2de74604cdf21c4535904f9c913392952943d3b5\n"
    },
    {
      "commit": "ef9cab1d86054d8ab17056990e0264e1ccb826c1",
      "tree": "fa883848b73b2cf4362aa5f04ce91aa5ea182823",
      "parents": [
        "8e97c04ab7ed711d3dd65e73c7a760e2f192f2b2",
        "2d51b7c18ad0ffd142d7ba94203f52ba3f735530"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 16:04:18 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 23 16:04:18 2016 +0000"
      },
      "message": "Merge \"Restore old signature for acquire/release session\" into nyc-dev"
    },
    {
      "commit": "2d51b7c18ad0ffd142d7ba94203f52ba3f735530",
      "tree": "30c6aa1c1a33e3610a7456edba7e51bb72a7b7bf",
      "parents": [
        "fd15c3fac93c2be5e038a6fa684ca293a8e07af7"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 08:52:26 2016 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Jun 23 08:52:26 2016 -0700"
      },
      "message": "Restore old signature for acquire/release session\n\nBug: 29490416\nChange-Id: Iaf6be0666937c6fa625f936839f5a04d58350640\n"
    },
    {
      "commit": "aeffd19df0a23cfcd09ef81ba136ce02ec76a37a",
      "tree": "600c99a510e2b57ed6a42dd333e0144029698e7e",
      "parents": [
        "311b46f57e43c62615d0abf78546ede5491b5db0",
        "0256917c88690e07604f725872321cbe2870ed8b"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Jun 22 20:00:59 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 22 20:00:59 2016 +0000"
      },
      "message": "Merge \\\"Limit cached timestamp use if HW fails to provide them\\\" into nyc-dev\nam: 0256917c88\n\nChange-Id: I1186034edf91d3b136b2571fa0acadc9b21de891\n"
    },
    {
      "commit": "07eee80b3422c0304491f24bbc415deb0badbefc",
      "tree": "9fca1712dc24e9e7ca66ea8c394c6bbf6c5c2946",
      "parents": [
        "37a9de26f6403955a19b81ce5ffe87998e9bf46e"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Jun 21 16:47:16 2016 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Wed Jun 22 18:37:59 2016 +0000"
      },
      "message": "Limit cached timestamp use if HW fails to provide them\n\nOn some devices, if the HDMI cable is disconnected during use,\ncached timestamp info can become very old.\n\nBug: 29423451\nChange-Id: Ieecf5e98bad14d00b4f5f14b032c2cf66ae94ceb\n"
    },
    {
      "commit": "5af6a9b4a6924377d80de7c3f460f99b89cff91e",
      "tree": "78b78152a8f8ecf03397bb14f4f6d6a02255f9b9",
      "parents": [
        "2dd124980b4d90daae60127eec56a88bda7e417b"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Jun 16 12:07:26 2016 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Jun 16 19:32:16 2016 +0000"
      },
      "message": "MediaPlayer: disallow calling setPlaybackParams in stopped state.\n\nBug: 29420829\nChange-Id: Iaba71f3b975022f150962fa306c2426c61457820\n"
    },
    {
      "commit": "d3f4e14d4c6ea02c49a50ad7c5fd08dd13b518e1",
      "tree": "f4d5f5976f5828787b3c2bd726b4fbea373a5201",
      "parents": [
        "2591f8308729b8f7b5d669d774cdac5636731535"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Mon Jun 13 14:51:43 2016 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Tue Jun 14 17:52:11 2016 +0000"
      },
      "message": "IMediaSource: add supportReadMultiple().\n\nBug: 29331573\nChange-Id: I7cdff44878bd93671e98fe11c99d17e82410cdcb\n"
    },
    {
      "commit": "1978994a117f0bac69e7b17af6ffe1dc9e632272",
      "tree": "24250d2279052f2e77309b4ffdd51636d2a96614",
      "parents": [
        "129307bc8016de05778d4f904ad9aaa9610bb86e",
        "d554814b49ae68a1e4a24f628bd0fed73a12ad08"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sat Jun 11 02:23:20 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 11 02:23:20 2016 +0000"
      },
      "message": "Merge \\\"MediaPlayer: fix state for setPlaybackParams.\\\" into nyc-dev\nam: d554814b49\n\nChange-Id: I31d18ed997e8a9519e717bf1721a2a9407e33328\n"
    },
    {
      "commit": "d554814b49ae68a1e4a24f628bd0fed73a12ad08",
      "tree": "03ebd25273dd8aa6b0035d2dbe4d185010d708b5",
      "parents": [
        "008ae06c8ccc5d78c80e20f01b66ebba95c095c1",
        "5be109faadfc08b561221bd801082873b614b93d"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Sat Jun 11 02:16:58 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jun 11 02:16:58 2016 +0000"
      },
      "message": "Merge \"MediaPlayer: fix state for setPlaybackParams.\" into nyc-dev"
    },
    {
      "commit": "5be109faadfc08b561221bd801082873b614b93d",
      "tree": "7ee2c4c5f29c4b9bf280a18a9ed6b96d4d932427",
      "parents": [
        "f5be6e9364240fff6833ab7a69a913748796268d"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jun 10 16:15:07 2016 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri Jun 10 16:49:09 2016 -0700"
      },
      "message": "MediaPlayer: fix state for setPlaybackParams.\n\nBug: 29032949\nChange-Id: I7580a04cc03f96109a770f95abd3fb884c810103\n"
    },
    {
      "commit": "504e6adea003bc26688f0e84e58eb91feaa439ef",
      "tree": "a1d82fcce2c4173c484c35b494e1a279f15bbf6f",
      "parents": [
        "f9e1b9c3beb052756bc37559d17ac7d31425d3d9",
        "09b5fd9cbfa3dd968ad1a5614afd1d538043a711"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Jun 10 16:19:26 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 10 16:19:26 2016 +0000"
      },
      "message": "Merge \\\"Don\\\u0027t use sp\u003c\u003e\u0026\\\" into nyc-dev\nam: 09b5fd9cbf\n\nChange-Id: I45e45e8f550922ef86daee7febf0ee6e4f427e95\n"
    },
    {
      "commit": "fc908d010b32bbb850a6306893ce7db166a932f6",
      "tree": "7159c9a2686269fe5ac5d9f801bacbe3c5c0fb71",
      "parents": [
        "596e81bc4f32f8a205b4885c03b240b90e7ef090"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jun 07 12:26:43 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 09 14:19:58 2016 -0700"
      },
      "message": "Don\u0027t use sp\u003c\u003e\u0026\n\nbecause they may end up pointing to NULL after a NULL check was performed.\n\nBug: 28166152\nChange-Id: Iab2ea30395b620628cc6f3d067dd4f6fcda824fe\n"
    },
    {
      "commit": "1f56e8a581b26bad357865aee53063e246dbdc55",
      "tree": "4a2afd032390c1a4a94718e3540ce7cb03cdb262",
      "parents": [
        "8c88ef273f6f2077c45c920dfb36e26fc930303b",
        "4905ff3baf0527641b93892357e93075583e61dc"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 09 18:37:08 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 09 18:37:08 2016 +0000"
      },
      "message": "Merge \\\\\"Don\\\\\u0027t use sp\u003c\u003e\u0026\\\\\" into lmp-mr1-ub-dev am: 277a8ab9ab\nam: 4905ff3baf\n\nChange-Id: Ia8ba85cf0bde2f32afb7f6704e4653c6c0e907ed\n"
    },
    {
      "commit": "4905ff3baf0527641b93892357e93075583e61dc",
      "tree": "c18fe56029e156a76bf42732a9a54040fe485bc1",
      "parents": [
        "69ee337c842f29ba2ddd6c54509925fcb303f855",
        "277a8ab9ab965c1731c24dc05f24c23090b5dd25"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 09 18:31:10 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 09 18:31:10 2016 +0000"
      },
      "message": "Merge \\\"Don\\\u0027t use sp\u003c\u003e\u0026\\\" into lmp-mr1-ub-dev\nam: 277a8ab9ab\n\nChange-Id: I67bac3501905ca69180bf187bf53a4a0e7581ee8\n"
    },
    {
      "commit": "d01cc80eaf2c5e1a1681d1410626c0ea7ba1dca8",
      "tree": "8a1c35093cbc3047302712b71b494cf6de353750",
      "parents": [
        "edf89fa6b7722c8a02ea54f5959e73c309e4b5af"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jun 07 12:26:43 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 09 10:51:07 2016 -0700"
      },
      "message": "Don\u0027t use sp\u003c\u003e\u0026\n\nbecause they may end up pointing to NULL after a NULL check was performed.\n\nBug: 28166152\nChange-Id: Iab2ea30395b620628cc6f3d067dd4f6fcda824fe\n"
    },
    {
      "commit": "949333a3ab4868c1cc7b2e0ed26d045fd99d8a88",
      "tree": "fcb2eb5c39ff0f580a509faabaf585feef73c57a",
      "parents": [
        "803ae13af2bef90c651cbcccb76bbd75403ff1ab",
        "d0f4bfb5527e88e868c4263cb6c9d219367b9fc9"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Jun 09 17:18:06 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 09 17:18:06 2016 +0000"
      },
      "message": "Don\\\u0027t use sp\u003c\u003e\u0026\nam: d0f4bfb552\n\nChange-Id: I0490c443ad93133a8023134789dcecbcfc159cf3\n"
    },
    {
      "commit": "d0f4bfb5527e88e868c4263cb6c9d219367b9fc9",
      "tree": "69301a8556126d12747adc0544dc57a8c389d97a",
      "parents": [
        "33e914c861732cbcca923d34d368e1635b68434f"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jun 07 12:26:43 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jun 08 17:10:39 2016 -0700"
      },
      "message": "Don\u0027t use sp\u003c\u003e\u0026\n\nbecause they may end up pointing to NULL after a NULL check was performed.\n\nBug: 28166152\nChange-Id: Iab2ea30395b620628cc6f3d067dd4f6fcda824fe\n"
    },
    {
      "commit": "e66381758d6ba02494251e6097e0774a56524be5",
      "tree": "df4f40e2ccb8ca187d1b6a65a597e01ea5615605",
      "parents": [
        "08cb85206ab65cc2b9df372e4ae5f75c331ae7a1",
        "0ee3710873997f09b9a0a645e8b2de9923894f17"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Jun 08 23:14:09 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 08 23:14:09 2016 +0000"
      },
      "message": "Merge \\\\\"Don\\\\\u0027t use sp\u003c\u003e\u0026\\\\\" into klp-dev am: 598f8d3218\nam: 0ee3710873\n\nChange-Id: I95ce93c3c1975b444bd6cd2c49a3b215395d2754\n"
    },
    {
      "commit": "fc47a301b7b2b044eddaedc98861d55193ec7dc0",
      "tree": "8f64350afe90fc797bba02c7a24720a9c80c31f5",
      "parents": [
        "b016207fc2442420e8d3a8633575ffe4fc29fef3"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jun 07 12:26:43 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jun 07 12:31:11 2016 -0700"
      },
      "message": "Don\u0027t use sp\u003c\u003e\u0026\n\nbecause they may end up pointing to NULL after a NULL check was performed.\n\nBug: 28166152\nChange-Id: Iab2ea30395b620628cc6f3d067dd4f6fcda824fe\n"
    },
    {
      "commit": "2f8e63b5be5b0160302cffe1f1f18e560d31d3e7",
      "tree": "ad5e2f3f7118b729de3bd238140c70dca2f145c0",
      "parents": [
        "725c7852e952f22edfc3c7d3fda67933cac56999",
        "050677873c10d4da308ac222f8533c96cca3207e"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Sat Jun 04 01:17:29 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jun 04 01:17:29 2016 +0000"
      },
      "message": "Merge \"Add AudioTrack and AudioRecord flag checks\" into nyc-mr1-dev"
    },
    {
      "commit": "050677873c10d4da308ac222f8533c96cca3207e",
      "tree": "fa2d3e91f74c5d838330f52cf158be8c774eec7f",
      "parents": [
        "53c87d5bb06a168290575099378bc7bfe1dca02b"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed Jun 01 18:27:28 2016 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 03 16:46:38 2016 -0700"
      },
      "message": "Add AudioTrack and AudioRecord flag checks\n\nVerify that the requested flags are compatible with the input\nor output flags when creating and AudioRecord or AudioTrack\n\nGet rid of IAudioFlinger::track_flags_t which was redundant\nwith audio_input_flags_t and audio_output_flags_t.\n\nChange-Id: I0dd9232f857b2737e99a8c668806e45bce09cdbd\n"
    },
    {
      "commit": "c57fe21ebdd6813c5a8954f3fda51b82d26acd07",
      "tree": "0de87347d7a68d15856c89a70b6599ed959703ad",
      "parents": [
        "7d58810be46a86fa5c66d6d53d2453a5accc76f8"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue May 31 09:45:43 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue May 31 09:45:43 2016 -0700"
      },
      "message": "limit mediaextractor memory\n\nLimit mediaextractor using rlimit, to prevent it from bringing down the system\nvia the low memory killer.\n\nBug: 28471206\nBug: 28615448\nChange-Id: Ic84137435d1ef0a6883e9789a4b4f399e4283f05\n"
    },
    {
      "commit": "69488c4ef115c9de52c85f4fcae27c7774720298",
      "tree": "9f1be0c3a13dec3768aa3e314f346afa7aa96ff0",
      "parents": [
        "f3d9908a888203e7e70b8c2d43ee741a95e154ed"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 16 18:43:33 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue May 24 18:59:42 2016 -0700"
      },
      "message": "AudioTrack: Fix timestamp startup condition\n\nSuppress timestamps without valid kernel information or\na server update.\n\nUpdate timing of server timestamp location to better indicate\nwhen the server pull occurs.\n\nUpdate write timing logic to suppress unneeded time calls\nand to ensure proper throttling.\n\nBug: 28771691\nChange-Id: I2cd25dad638ca1d0b1355d87d175d908f3bddb26\n"
    },
    {
      "commit": "f3d9908a888203e7e70b8c2d43ee741a95e154ed",
      "tree": "d19638ca4ece2ea0f7f60c851b7970b6d4178ba4",
      "parents": [
        "b2379ba0a32638bae2ea0460644f68cf5a0967ce",
        "07b745e166ee62030960ccea37e117caadf71c32"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue May 24 20:38:23 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 24 20:38:23 2016 +0000"
      },
      "message": "Merge \"Add memory heap checks for mediaserver and audioserver\" into nyc-dev"
    },
    {
      "commit": "b2379ba0a32638bae2ea0460644f68cf5a0967ce",
      "tree": "92313531455a4482d97d03d0f4ecb1e727b4076a",
      "parents": [
        "a0e10ff02b156738c0e5441104821b220eea3d68"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon May 23 17:42:12 2016 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 24 17:16:57 2016 +0000"
      },
      "message": "Fix android.permission.CAPTURE_AUDIO_OUTPUT permission check\n\nMake sure we use the correct PID and UID when checking\nandroid.permission.CAPTURE_AUDIO_OUTPUT permission from audio\npolicy service.\n\nBug: 28772898\nChange-Id: I8f0c45bf7a5728b4364a451eefb6c025892ae9a5\n"
    },
    {
      "commit": "9ea77cdba8c422940adb57a790b44ac04fe0353f",
      "tree": "1e7c588ce1add16e6991eaae918d38414b17d879",
      "parents": [
        "f0f4f1e494a80ce300a68cfce0e1dc627c09c29a"
      ],
      "author": {
        "name": "Haynes Mathew George",
        "email": "hgeorge@codeaurora.org",
        "time": "Wed Apr 06 17:07:48 2016 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 24 00:48:20 2016 +0000"
      },
      "message": "audioflinger: Pass pid of process creating track or opening record\n\nAudioFlinger allocates a Client heap for each unique pid.\nIf two applications use mediaplayer APIs, the same Client heap\nis reused as the pid used is not the application pid but that\nof mediaserver. With this change, the pid of the application\npid is used to decide the heap to be used.\n\nBug: 23525542\nBug: 28772898\nChange-Id: I31a695b0b321eff6e2aca80c3bc4aeb3e1cd9ac7\n"
    },
    {
      "commit": "7b86b7519019ad27274a6069309db33ed05772fc",
      "tree": "f261d27be496c788800ab41061cfb0f7d164a0c3",
      "parents": [
        "c5774baa39f3e1acb83036d18723cc00a3ec9d7a",
        "d64810330ba81c6eb9a17e9fcc67b05ab4c29560"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue May 24 00:20:42 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 24 00:20:42 2016 +0000"
      },
      "message": "Merge \"limit mediaserver memory\" into mnc-dev\nam: d64810330b\n\n* commit \u0027d64810330ba81c6eb9a17e9fcc67b05ab4c29560\u0027:\n  limit mediaserver memory\n\nChange-Id: I7a3e76e929fe6ddb1613b5956f218048cd9b707c\n"
    },
    {
      "commit": "07b745e166ee62030960ccea37e117caadf71c32",
      "tree": "a370227e0d195f58a4e7797d8a70933730970907",
      "parents": [
        "d4c4d2248bdfd06dc7b23dd2d81541d3941f8bf9"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 23 16:21:07 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 23 16:55:08 2016 -0700"
      },
      "message": "Add memory heap checks for mediaserver and audioserver\n\nMemory heap check updated and restored to mediaserver,\nadded as new option to audioserver.\n\nRequires properties to be set (example for audioserver):\n\n$ adb shell setprop libc.debug.malloc.program audioserver\n$ adb shell setprop libc.debug.malloc.options backtrace\u003d8\n$ adb shell pkill audioserver\n\n...\n\nand to dump:\n\n$ adb shell dumpsys media.audio_flinger -m\n\nBug: 28909124\nBug: 27500825\nChange-Id: Ifa8c2c02b022daf1a799ee4a1d75282a3c921763\n"
    },
    {
      "commit": "6c1ad0dea93e4eb7c2a2ede1f3be9dcf07417455",
      "tree": "d2a9da13d47a584d20675079afd4e6783ea79442",
      "parents": [
        "eaa4d780120dd690be2ae035ef4e715026b5b12e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 13 10:39:23 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon May 23 16:05:57 2016 -0700"
      },
      "message": "limit mediaserver memory\n\nLimit mediaserver using rlimit, to prevent it from bringing down the system\nvia the low memory killer.\nDefault max is 65% of total RAM, but can be customized via system property.\n\nBug: 28471206\nBug: 28615448\nChange-Id: Ic84137435d1ef0a6883e9789a4b4f399e4283f05\n"
    },
    {
      "commit": "4e61b921f04c068e88a7ab8561a6e054900f527e",
      "tree": "875b309f0432572f402660e0e7df922047ee1d10",
      "parents": [
        "b209b64a871f7180eaecf89f0756bd0d19359ae5",
        "57dc6d9dce0bbafa442fda41f98da858b89c5059"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon May 23 22:58:51 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 23 22:58:51 2016 +0000"
      },
      "message": "Merge \"limit mediaserver memory\" into lmp-dev am: 41e0a503e6 am: 76f9ec33f0\nam: 57dc6d9dce\n\n* commit \u002757dc6d9dce0bbafa442fda41f98da858b89c5059\u0027:\n  limit mediaserver memory\n\nChange-Id: Id57767343c25b32bf523ac1c5f421f2f38fb68ad\n"
    },
    {
      "commit": "e816dcc0b3ea6d5cee3b0b4ff230a20ab85b5996",
      "tree": "4d3e9bef2258720fb70694a3d6922e820fd220aa",
      "parents": [
        "8fd8bfdfbd930cdc669c4fc33d7d251f12ec7e5e",
        "38ab87c3e3cd4868958fcec4d1591ebc4a9e8d1a"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon May 23 22:50:37 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 23 22:50:37 2016 +0000"
      },
      "message": "Merge \"DO NOT MERGE limit mediaserver memory\" into klp-dev am: f8429c0c14\nam: 38ab87c3e3\n\n* commit \u002738ab87c3e3cd4868958fcec4d1591ebc4a9e8d1a\u0027:\n  DO NOT MERGE limit mediaserver memory\n\nChange-Id: I053031830618e20ff830ae3c097abba10ae73cfc\n"
    },
    {
      "commit": "76f9ec33f0e0ac80904b1cebe50b5d2bb3ccaf07",
      "tree": "8ba862ff53608e0b36b7ae8d54125ca077dc000e",
      "parents": [
        "71b3486ba6744e1804294ab3a9d6e37c2d3ac0cb",
        "41e0a503e6f0c124208a7b9a8fa7321656359407"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon May 23 22:46:25 2016 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon May 23 22:46:25 2016 +0000"
      },
      "message": "Merge \"limit mediaserver memory\" into lmp-dev\nam: 41e0a503e6\n\n* commit \u002741e0a503e6f0c124208a7b9a8fa7321656359407\u0027:\n  limit mediaserver memory\n\nChange-Id: I95f77a8d40bd8e7fcd5a0dfae71d29809a3e62cc\n"
    },
    {
      "commit": "1438f0b215040eb92e2b1e799f757ad32d5f8f22",
      "tree": "a2d5cae4a33c3c4c4a2e09aea70c412a6d0e8c6c",
      "parents": [
        "71095f174e8b88e008623b4cacd4ec0581b9015c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 13 10:43:19 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon May 23 08:54:13 2016 -0700"
      },
      "message": "DO NOT MERGE limit mediaserver memory\n\nLimit mediaserver using rlimit, to prevent it from bringing down the system\nvia the low memory killer.\nDefault max is 65% of total RAM, but can be customized via system property.\n\nBug: 28471206\nBug: 28615448\nChange-Id: I14fac1e12b5f3983be08a21bfbfc54feedbf3f16\n"
    },
    {
      "commit": "12e975bffb4915d2829114874793b1f936dde0b1",
      "tree": "9c4263196423a96427667009f8c1c61b1a3abecc",
      "parents": [
        "ef1fcffc9808df37f4031ddbf247492c8609559a"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 13 10:39:23 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue May 17 08:00:27 2016 -0700"
      },
      "message": "limit mediaserver memory\n\nLimit mediaserver using rlimit, to prevent it from bringing down the system\nvia the low memory killer.\nDefault max is 65% of total RAM, but can be customized via system property.\n\nBug: 28471206\nBug: 28615448\nChange-Id: Ic84137435d1ef0a6883e9789a4b4f399e4283f05\n"
    },
    {
      "commit": "51f03edcb36dcca327e9d5aa2410654e8a1b2809",
      "tree": "add63de381bb91551c190b70a689e186afe2deff",
      "parents": [
        "361c6c4276b772cc1ef7d7fb67f78d15034ccdd7",
        "1f1fc459ddb67d1162f2dbb10d14e57f42841da2"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Fri May 13 23:17:10 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 13 23:17:10 2016 +0000"
      },
      "message": "Merge \"IMediaSource: add readMultiple API to speed up inter-process reading.\" into nyc-dev"
    },
    {
      "commit": "1f1fc459ddb67d1162f2dbb10d14e57f42841da2",
      "tree": "7bf6233340100f1907e98f684119ee20e79c3022",
      "parents": [
        "f15d88daa721d53921bfb7798dd12f7c74b44ac1"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Wed May 11 16:17:22 2016 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu May 12 14:50:14 2016 -0700"
      },
      "message": "IMediaSource: add readMultiple API to speed up inter-process reading.\n\nGenericSource: use readMultiple for audio track.\nBug: 28545177\nBug: 22775369\nChange-Id: If26b80e75eba4212105d51140c4bfce85ec664f8\n"
    },
    {
      "commit": "038ccfd6ff5a32d6f559e5b479d6f8e55d0b5133",
      "tree": "6c5f250571a5115ac656968469e791784cd1f46c",
      "parents": [
        "0d0a8b48d267a1980cfd9507b51d173756835f34",
        "1b40f2804a27b695e9e53fb1699b64cb0dd387f9"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Tue May 10 14:09:32 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 10 14:09:32 2016 +0000"
      },
      "message": "Merge \"stagefright: IOMX: pass native handle in sp\u003cNativeHandle\u003e\" into nyc-dev"
    },
    {
      "commit": "1b40f2804a27b695e9e53fb1699b64cb0dd387f9",
      "tree": "89c071601bd3213bcc49973faf5d515a88db0328",
      "parents": [
        "6393ea6915e7e6fede4cee31bab0d373ce90211b"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon May 09 22:24:52 2016 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue May 10 08:36:47 2016 +0000"
      },
      "message": "stagefright: IOMX: pass native handle in sp\u003cNativeHandle\u003e\n\nThis clarifies ownership of the native handle\n\nBug: 28644266\nBug: 27856976\nChange-Id: I7a617513d7ac93dd58d74af9469663418735aaf3\n"
    },
    {
      "commit": "0d0a8b48d267a1980cfd9507b51d173756835f34",
      "tree": "88f5eca1d364e19eaa9fa7aecbc1f1904d5aece5",
      "parents": [
        "6393ea6915e7e6fede4cee31bab0d373ce90211b",
        "3e328782f1e1061d08ea0c45b855cc418a2d9ea6"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue May 10 07:51:28 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 10 07:51:28 2016 +0000"
      },
      "message": "Merge changes I58b03acd,I7d7eb086 into nyc-dev\n\n* changes:\n  stagefright: untangle metadata-mode handling\n  stagefright: add a way to update native handle in OMX buffers\n"
    },
    {
      "commit": "6393ea6915e7e6fede4cee31bab0d373ce90211b",
      "tree": "259740de82ecaa512cd2d11a46787a0e89c85c62",
      "parents": [
        "5adc73643fbccb4d7a768ab669e6c6eb434c4c98",
        "8dab17305ff72298e2b4874592ac72c004c392d8"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Mon May 09 23:27:17 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 09 23:27:17 2016 +0000"
      },
      "message": "Merge \"AMessage::FromParcel(): Limit recursion depth; report NULL on failure.\" into nyc-dev"
    },
    {
      "commit": "3e328782f1e1061d08ea0c45b855cc418a2d9ea6",
      "tree": "db604a686666d52d54d74d42a9625e833fa1d39f",
      "parents": [
        "7e0bef8aa6bf9db06079b743794ec2712ad84431"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon May 09 10:56:46 2016 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon May 09 15:46:36 2016 -0700"
      },
      "message": "stagefright: untangle metadata-mode handling\n\n- specify requested metadata mode from producers to OMX\n- (pass requested metadata in IOMX::storeMetadataInBuffers)\n- use correct logic for native handle source\n- use native handle source for encoded meta buffers\n\nBug: 22775369\nChange-Id: I58b03acd3e9a5367d5010d7f87b7af5cae23362c\n"
    },
    {
      "commit": "7e0bef8aa6bf9db06079b743794ec2712ad84431",
      "tree": "b3d09643047246a9a25ff83926db8e368befda5d",
      "parents": [
        "5adc73643fbccb4d7a768ab669e6c6eb434c4c98"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon May 09 10:48:30 2016 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Mon May 09 15:46:36 2016 -0700"
      },
      "message": "stagefright: add a way to update native handle in OMX buffers\n\nBug: 22775369\nChange-Id: I7d7eb0868fef896d1cb0a45bec759a00f0783673\n"
    },
    {
      "commit": "6d7b119a416c9f10288051e562f294365e5d954c",
      "tree": "734bff32a20de4a97c24271b745795db3871cd0f",
      "parents": [
        "0b667e2f6f9e871e2fdc89100b8ef4cc623adec2"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat May 07 22:59:48 2016 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Mon May 09 11:42:57 2016 -0700"
      },
      "message": "Improve timestamp jitter fix\n\nUse last valid kernel timestamp on server side, not client side.\n\nBug: 28465713\nChange-Id: I33590d6922980f288355f947bc56279245058429\n"
    },
    {
      "commit": "8dab17305ff72298e2b4874592ac72c004c392d8",
      "tree": "cc0f6f177142fbe70c463048f067297ef083adf2",
      "parents": [
        "0b667e2f6f9e871e2fdc89100b8ef4cc623adec2"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Mon May 02 16:08:39 2016 -0700"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Fri May 06 14:19:24 2016 -0700"
      },
      "message": "AMessage::FromParcel(): Limit recursion depth; report NULL on failure.\n\n- FromParcel() now takes as an optional parameter the maximum recursion depth.\n  (The default value is currently set to 255.) On the event that the input\n  parcel has AMessage nested deeper than the maximum recursion depth,\n  FromParcel() will return NULL.\n- Also, when the input parcel has items that are not recognized by FromParcel(),\n  NULL will be returned. (The old behavior was to invoke TRESPASS, which would\n  cause the process to stop.)\n\nBug: 28332724\nChange-Id: I722097f7d1711668f197651d7e8135d703f6c91f\n"
    },
    {
      "commit": "a321469104536544d1cf0c0098d14bbf14186e88",
      "tree": "83db847c1e933819826f00d9e6af227fab83a8e2",
      "parents": [
        "0277976e8118ac493440049affeb1fce1f08598e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 06 10:57:20 2016 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 06 10:57:20 2016 -0700"
      },
      "message": "Dump local source, not remote\n\ndumpsys media.extractor was printing the remote source instead of starting at\nthe local source.\n\nBug: 22775369\nChange-Id: I5026218515bf7ceb8485005ed7d89638a9c1963b\n"
    },
    {
      "commit": "7aa45dd7fc5c2bd959f1571231556ac06b7ec8ae",
      "tree": "93445d577ff2a865f26116d78a59dd612fe53229",
      "parents": [
        "9b04a0225085acdf6dd4944fb43695f246669014",
        "b01faa31462e19957ae3c0c3ada07c9576a9494f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue May 03 17:25:38 2016 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 03 17:25:38 2016 +0000"
      },
      "message": "Merge \"AudioTrack: Fix timestamp jitter\" into nyc-dev"
    },
    {
      "commit": "aebe9dc29988c94a774208ba659c4f156d274d79",
      "tree": "48a77c49fdc9d1bd0b8e43e4fe1b9ca29a75fefc",
      "parents": [
        "5bdfad1a45a7d5fd03732c75768eef65975660dc"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon May 02 14:38:21 2016 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon May 02 14:38:21 2016 -0700"
      },
      "message": "Normal tracks use triple buffering if resampling\n\nBug: 26230944\nChange-Id: I40f6cd7147db1be95f297af406c77c6404a76f37\n"
    }
  ],
  "next": "b01faa31462e19957ae3c0c3ada07c9576a9494f"
}
