)]}'
{
  "log": [
    {
      "commit": "4a84cbb33dd74bc033518d007e2d9315e600bdac",
      "tree": "f598676a197f597595f6f7396713ed05edc7c027",
      "parents": [
        "73142871e81c42374cb85390efc1fb7adca230f3"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Dec 18 16:34:47 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Dec 21 13:26:44 2018 -0800"
      },
      "message": "NdkWrapper: add missing DRM AMediaFormat keys\n\nBug: 121387877\nTest: MediaPlayer2DrmTest\nChange-Id: I7e07bb80746990a4f2e35ff595cab8ed75eda062\n"
    },
    {
      "commit": "44f43604955f35a47184d64865bd089c9e673e60",
      "tree": "6c6d1b6b4e4346b6c7415505abfbd7ed4d973bf1",
      "parents": [
        "77a428b58b1ab5d5f7212d8b1d4dbac20a985018"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Dec 18 12:51:19 2018 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 20 19:17:12 2018 +0000"
      },
      "message": "MediaRecorder: add getPortId() method\n\nAdd method to retrieve unique port ID for the AudioRecord instance\nassociated with a MediaRecorder.\n\nBug: 111438757\nTest: CTS tests for MediaRecorder\nChange-Id: I77295ccd163bfa2319a492ed64186a28b691ac38\n"
    },
    {
      "commit": "be9768e8eff47385c32bcc7f9c3b82c27058b3cc",
      "tree": "2162cb598328f4d4fc057cf88483613037fb69be",
      "parents": [
        "ff0508b3d64e54829b69170adace3bbea4f6a5b6"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Dec 19 13:10:35 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Dec 19 13:52:45 2018 -0800"
      },
      "message": "Fix memory leaks\n\nBug: 111407253\nTest: manual, libmemunreachable\nChange-Id: I69ad7b48498346925dd02c10b206035c0ae49305\n"
    },
    {
      "commit": "2b167173e145d8846c9a248039f0f4dc423ade73",
      "tree": "395f2c76fd05edb48c42ab76f5c2eb6994a04675",
      "parents": [
        "83d789d6234f5cd5eb90f02a47ab04d4f6ea8299"
      ],
      "author": {
        "name": "François Gaffie",
        "email": "francois.gaffie@renault.com",
        "time": "Mon Jun 04 16:05:14 2018 +0200"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu Dec 13 17:24:46 2018 -0800"
      },
      "message": "audiopolicy: update type convertion library\n\nTest: Audio smoke tests.\nTest: CTS tests for AudioRecord, AudioTrack and AudioEffect\n\nChange-Id: I3ed8c7d7ee8a97f0bd41a5ae9f28d673994d7f07\nSigned-off-by: François Gaffie \u003cfrancois.gaffie@renault.com\u003e\n"
    },
    {
      "commit": "3c03c8ba1504003f25ee04b49609eb10b20e1bdf",
      "tree": "78956d959c2684a79768a6dffca77bdc7d561dbc",
      "parents": [
        "8dd9d107e9056283bc38c5921cff29c481adc99f",
        "245cdd91559873aeacf21b7c780655ef43c01682"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 12 22:38:27 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 12 22:38:27 2018 +0000"
      },
      "message": "Merge changes Ic5f780de,I3f963307\n\n* changes:\n  Support audio-haptic coupled playback.\n  Add buffer provider that can adjust channels.\n"
    },
    {
      "commit": "801757712fc9f478a1207fe272dd343f332d4a33",
      "tree": "e653ec76b78534508e1e83430208f71d712b09b1",
      "parents": [
        "0b7c782690047627586751b7118f2fc7573d0993",
        "bd2f653de8664083aed50699a8788f5401ddd1dc"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Dec 12 14:09:51 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 12 14:09:51 2018 -0800"
      },
      "message": "Merge \"Visualizer: fix native crash when visualizer release\" am: f9b76f7b43 am: b04bff0e0d\nam: bd2f653de8\n\nChange-Id: I75622471354b9645bb494e85a22ab9f54181d697\n"
    },
    {
      "commit": "f9b76f7b43e020bb7b64963324ce1faaaa5e8d7e",
      "tree": "10d0f482344aabfb868b1f8caddd4094eb500ad4",
      "parents": [
        "6d89c10db93c94727bbdb0ea7be432adedfc4565",
        "704c577cce2dd3c04d9457dcf016014f40234abe"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Dec 12 21:37:04 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 12 21:37:04 2018 +0000"
      },
      "message": "Merge \"Visualizer: fix native crash when visualizer release\""
    },
    {
      "commit": "704c577cce2dd3c04d9457dcf016014f40234abe",
      "tree": "63e3a54766c7b6a4ea5b8cb364dee63970ead781",
      "parents": [
        "3d514b76343437a6277a777e20ff13a15b0c8f1b"
      ],
      "author": {
        "name": "zengjing",
        "email": "zengjing@xiaomi.com",
        "time": "Sat Sep 29 13:25:35 2018 +0800"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Wed Dec 12 20:03:26 2018 +0000"
      },
      "message": "Visualizer: fix native crash when visualizer release\n\nWhen the Visualizer effect is released, synchronous wait for the CaptureThread can\ncause ANR in an app. This is why an asynchronous \u0027release\u0027 method is introduced which\nis used by Visualizer.release() method on the Java side. Since CaptureThread may still\nbe running while the the last reference to the Visualizer instance is released,\nCaptureThread now holds a strong reference to the Visualizer, which it releases\nupon exit from the thread loop.\n\nThe \u0027release\u0027 method does not check for \u0027enabled\u0027 status because setEnabled(false)\nmay fail due to audioserver calling AudioFlinger::EffectHandle::setControl to\nhold control.\n\nTest: CTS VisualizerTest\nChange-Id: I8d936f0f79540345d3e3675f6129bb942a08e423\nSigned-off-by: zengjing \u003czengjing@xiaomi.com\u003e\n"
    },
    {
      "commit": "dce8f8cc41cb6be63d13ad0099d61807746ff5d7",
      "tree": "f85faa34c35ce81c45bcbd5bfed3fc93073e37f8",
      "parents": [
        "6b6a0f05248fc646d42f09cb891d8b6fda19426e"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Mon Dec 10 17:49:31 2018 -0800"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Wed Dec 12 11:23:05 2018 -0800"
      },
      "message": "Add buffer provider that can adjust channels.\n\n1. Add adjust channels buffer provider, which will expand or contract\nsample data from one interleaved channel format to another. Expanded\nchannels are filled with zeros and put at the end of each frames.\nContracted channels are omitted from the end of each audio frame.\n\n2. Add adjust channels non destructive buffer provider, which could\nexpand or contract sample data from one interleaved channel format to\nanother while not destructing the buffer. Extra expanded channels are\ninterleaved in from the end of the input buffer. Contracted channels are\ncopied to the end of the output buffer. Contracted channels could be\nwritten to an output buffer with certain audio format.\n\nTest: Manually\nBug: 111454766\nChange-Id: I3f963307e73b3f7aa662d4127f78f0c61ac84510\n"
    },
    {
      "commit": "0cc7de2b76d68b690f61e02a13f22e0b5bd174bc",
      "tree": "8a7d755e7ddd78fa1aa8ac756a91df1c148607b3",
      "parents": [
        "59c920b7d817e4484c68ac4cdfb0c96d41380ff8",
        "df27b04b52fd6a2ba9d9a5180adc2847386632a8"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Wed Dec 12 17:18:57 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 12 17:18:57 2018 +0000"
      },
      "message": "Merge \"Plumbing for OPUS encoding.\""
    },
    {
      "commit": "c94b0f806352d9384eeb92c2e4d7173851ccc573",
      "tree": "36bd89a1cd2fe27c243a1db1445957be3ad90cba",
      "parents": [
        "45d34272dfa8462adda0f11ccfa169c5afa49621",
        "405733256a9cf62c9e3be2d8dbd5ccb9cb7c5d97"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Dec 12 04:05:07 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 12 04:05:07 2018 +0000"
      },
      "message": "Merge \"Support open output stream with haptic channel mask.\""
    },
    {
      "commit": "405733256a9cf62c9e3be2d8dbd5ccb9cb7c5d97",
      "tree": "b395e3e093aa3010b54f9227e8a7cef08ed1b2a0",
      "parents": [
        "6b6a0f05248fc646d42f09cb891d8b6fda19426e"
      ],
      "author": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Thu Nov 08 12:08:02 2018 -0800"
      },
      "committer": {
        "name": "jiabin",
        "email": "jiabin@google.com",
        "time": "Tue Dec 11 17:18:05 2018 -0800"
      },
      "message": "Support open output stream with haptic channel mask.\n\nWhen haptic playback is supported according to audio policy\nconfiguration file, try to open the output stream with haptic channel\nmask. When trying to creat a track with haptic channel mask, use haptic\noutput if it is available.\n\nBug: 111454766\nTest: Manually test\nChange-Id: Ia8c70dd7f602a134d0509630eb734b8c540dea7d\n"
    },
    {
      "commit": "5dcd67b8459dfa3530c2b545193f02ebb54dece5",
      "tree": "26f7b90273586f8b9d16469217b5078352bece99",
      "parents": [
        "c6b48fe6272db5d3ca910598565c2b48b547ce7f"
      ],
      "author": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Dec 11 10:50:13 2018 -0800"
      },
      "committer": {
        "name": "Dongwon Kang",
        "email": "dwkang@google.com",
        "time": "Tue Dec 11 13:24:16 2018 -0800"
      },
      "message": "Keeping AMediaExtractor_disconnect() where it is used.\n\nThis private API will be replaced with public API soon.\n\nTest: make checkbuild\nMerged-In: I083b85c31e42f7ddd4b2da365557e3d9251f8777\nChange-Id: I6a9868fd1cf73f578a15e86b43f5ef049babd9ad\n"
    },
    {
      "commit": "df27b04b52fd6a2ba9d9a5180adc2847386632a8",
      "tree": "15607195f3f2cb9372c61bb78b4af6bed26a28d3",
      "parents": [
        "5a2048c3095478482a5ac16639514d3a0a214713"
      ],
      "author": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Nov 27 18:55:09 2018 -0800"
      },
      "committer": {
        "name": "Ray Essick",
        "email": "essick@google.com",
        "time": "Tue Dec 11 11:58:13 2018 -0800"
      },
      "message": "Plumbing for OPUS encoding.\n\nWebm, OGG container extensions to hold opus.\nhooks so we can say that we\u0027re recording in opus format.\nOMX-specific changes are omitted since our target is Codec2\n\nBug: 111850384\nTest: with separate omx routines\nChange-Id: Iecb8b53df3fbd8506d2e6f007602284eb2d0decc\n"
    },
    {
      "commit": "07567d630dbda88b9a25a439a5936e507d1caeca",
      "tree": "5a0dbb9804c62be63d69b6da9272e1cf27ce2924",
      "parents": [
        "fb88fcd6fedec63fc370e74902ccc57eef6b4e69",
        "0e043b67ee430bc807971a5ffb29c653501ce99c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Dec 07 15:22:52 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 07 15:22:52 2018 +0000"
      },
      "message": "Merge \"C-ify MediaBuffer\""
    },
    {
      "commit": "df7d3e08762a077ec6d5c909129472100c9a6649",
      "tree": "c5b6e36454a1d838d7ac56fb52c1a7cc5754cff8",
      "parents": [
        "0209452544dfd347de2ddb4e8cfaf89f51bc039c",
        "6671ea8a46da5cbeaba2da4c623353441758cf50"
      ],
      "author": {
        "name": "Ivan Lozano",
        "email": "ivanlozano@google.com",
        "time": "Thu Dec 06 17:16:25 2018 -0800"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 06 17:16:25 2018 -0800"
      },
      "message": "Merge \"Remove CFI diagnostics.\" am: 64ac8c6301 am: b89b976d77\nam: 6671ea8a46\n\nChange-Id: I4de33cfd8451cceab9ca234d884522e6e9489b08\n"
    },
    {
      "commit": "db19f572b941e62ffd688f2198da122977c55a28",
      "tree": "3713ab1298069be97a599b88c5cae6ef0900bee8",
      "parents": [
        "8c545704ea199e13c23f47cd8f4067bcdc25071f"
      ],
      "author": {
        "name": "Ivan Lozano",
        "email": "ivanlozano@google.com",
        "time": "Thu Dec 06 10:33:28 2018 -0800"
      },
      "committer": {
        "name": "Ivan Lozano",
        "email": "ivanlozano@google.com",
        "time": "Thu Dec 06 10:53:33 2018 -0800"
      },
      "message": "Remove CFI diagnostics.\n\nRemove diagnostics mode from CFI across the board. This should reduce\nperformance overhead and also allows the minimal runtime to work when\nother ubsan sanitizers are enabled. CFI stack dumps should include a\ncfi related function, so it should be apparent when a crash is CFI-related.\n\nBug: 117417735\nTest: make -j\nChange-Id: Id2cb6cb64425c4c89c031d93156fb1a20be5fa7b\n"
    },
    {
      "commit": "930bbf99ed405fc17c18383d425b46eadd01d805",
      "tree": "6120281ec32b64e40439d48ca801e814e68be784",
      "parents": [
        "f4a342abd2959904caa18b5a0671e8107581ff24"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Tue Sep 11 18:44:27 2018 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Thu Dec 06 10:36:01 2018 -0800"
      },
      "message": "BufferProvider: Clear out mBuffer when changing upstream BufferProvider\n\nTest: QCOM internal stress test\nBug: 111313529\nChange-Id: Ieb7a61eddeb85528fabf7ad8f74b5104d50c2339\n"
    },
    {
      "commit": "0e043b67ee430bc807971a5ffb29c653501ce99c",
      "tree": "d48612310795acb3478370ae141a63274b06f8b8",
      "parents": [
        "b6670e3dbe3ca63d6766ae45de809ea97590d817"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Nov 14 11:26:05 2018 -0800"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Dec 06 10:10:06 2018 -0800"
      },
      "message": "C-ify MediaBuffer\n\nBug: 111407253\nTest: CTS, manual\nChange-Id: Id20094f23d9d0dc0ec23127bbedc62c6e29944bd\n"
    },
    {
      "commit": "18dca5ef856873fee805c31be69eaca914de33ce",
      "tree": "91d8cce9219dd522587c0b41d298ae882d0adcc0",
      "parents": [
        "da0c1f2ca3e860997844eb146524887f96583d9f",
        "c8baaba1ee057336c0f9293a1762befded9b5936"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Nov 13 07:03:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 13 07:03:36 2018 +0000"
      },
      "message": "Merge \"Add new offline management APIs to MediaDrm\""
    },
    {
      "commit": "f872691537da559a5d3f755604dc52e430d12617",
      "tree": "f053337222092b30abb6bf3ec00d9a8df5f10adb",
      "parents": [
        "c25db9303131d04d15f2ca28f1a8f9153becf449"
      ],
      "author": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Wed Oct 17 13:31:26 2018 -0700"
      },
      "committer": {
        "name": "Dichen Zhang",
        "email": "dichenzhang@google.com",
        "time": "Thu Nov 08 14:18:11 2018 -0800"
      },
      "message": "Enable JAudioTrack.\n\nMediaPlayer2 AudioOutput using public APIs.\n\nBug: 112549970\nTest: android.media.cts.MediaPlayer2Test, android.media.cts.RoutingTest\nChange-Id: Id76d80c040a52fd2ab724999697e222495906aec\n"
    },
    {
      "commit": "c8baaba1ee057336c0f9293a1762befded9b5936",
      "tree": "ff28a3497e5660eb564dda6571b5bb90ac2d485c",
      "parents": [
        "71fb1a8ce526868a1b36058a1a27260946f83d59"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Tue Oct 23 11:32:36 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Wed Nov 07 17:31:36 2018 -0800"
      },
      "message": "Add new offline management APIs to MediaDrm\n\nbug:110838441\nbug:117570956\nbug:116252891\n\ntest:cts android.media.cts.MediaDrmClearkeyTest#testOfflineKeyManagement\n\nChange-Id: I2ee86afbd1a0ae793454c2e81f3267aaf10bade7\n"
    },
    {
      "commit": "69985f830f322ef33cf0b947a2fe09ec04d34de2",
      "tree": "e5afd822491fed511c660d9f0413dd6896893988",
      "parents": [
        "45bd57bcf1a0847f4c7f911b00effa5eaf23c367",
        "4d432f1d0b33b54e49fc21fd583f57e1e86966f1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 06 17:38:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Nov 06 17:38:26 2018 +0000"
      },
      "message": "Merge \"AMediaDataSourceWrapper: keep DataSource sp alive\""
    },
    {
      "commit": "df0ddbbb401d4043f06a1e605882563ac0714c3d",
      "tree": "a1990be4a4aeba6d3a5d90177388fafc36e35fad",
      "parents": [
        "49a995e6b35e750f378722e017d56c488a032f09",
        "917041aa10ad15f58501c8c1dd848db4c2ae0d5c"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Sat Nov 03 18:30:51 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Nov 03 18:30:51 2018 -0700"
      },
      "message": "Merge \"Return bits per sample and sample rate as metadata\" am: 814b68373d am: 2132849552\nam: 917041aa10\n\nChange-Id: I287cc4ffd05fd7e3aec2772f4c0c660cfff1c2c8\n"
    },
    {
      "commit": "814b68373d4b093c214efd7876fcc71d4ab4b067",
      "tree": "fd12d82f347bf476f2edc82491cbf61acd6295c6",
      "parents": [
        "0f638a05521036b3c600ac487bf832a629da9e7b",
        "575c277d7f49ed2ae0a3033a4f2cac627e2c02e6"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Sun Nov 04 00:44:58 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Nov 04 00:44:58 2018 +0000"
      },
      "message": "Merge \"Return bits per sample and sample rate as metadata\""
    },
    {
      "commit": "4d432f1d0b33b54e49fc21fd583f57e1e86966f1",
      "tree": "f07a3a595d607b972043218c33337c5a81414b3f",
      "parents": [
        "69c9844bed34c367224d5f6219e8410664b2119b"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Nov 01 12:29:06 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Nov 02 20:04:14 2018 +0000"
      },
      "message": "AMediaDataSourceWrapper: keep DataSource sp alive\n\nBug: 118506674\nTest: android.media.cts.MediaPlayer2Test#testConsecutiveSeeks\nChange-Id: Iafa26d6a0fa6ad4aa7dee696fff1673075e51624\n"
    },
    {
      "commit": "eeeacd44ee69d10a5a431decf6b3db421c45f9eb",
      "tree": "511cf4afde73b03bf5a5b337fa76228ee64342b5",
      "parents": [
        "59409356027170e408836905f2b6be7f41ef17da",
        "be802d887029d733d3f6a97640b114ff6561229e"
      ],
      "author": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Fri Nov 02 08:34:43 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Nov 02 08:34:43 2018 -0700"
      },
      "message": "Merge \"Use specific RSS check under 64-bit Scudo\" am: 90a050ec4e am: a01574e540\nam: be802d8870\n\nChange-Id: I86b6da6177973a9654660df0b82f74b1faac68ea\n"
    },
    {
      "commit": "e08896ab7714643fc5b8ed5bff994825513a67e5",
      "tree": "3cf56664f54bcea1da65ad78bd05d2a99a98f1bd",
      "parents": [
        "887cb9ea946a3f29999849408ac9b051b705c008"
      ],
      "author": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Wed Oct 17 12:37:10 2018 -0700"
      },
      "committer": {
        "name": "Kostya Kortchinsky",
        "email": "kostyak@google.com",
        "time": "Fri Nov 02 15:02:29 2018 +0000"
      },
      "message": "Use specific RSS check under 64-bit Scudo\n\nScudo is a hardened memory allocator that can be enabled on a per target basis,\nand replaces malloc/free/etc with its own (go/scudo-allocator). It lives in\nLLVM\u0027s compiler-rt project, along with ASan and the other sanitizers.\n\nThe 64-bit version of the allocator reserves (but doesn\u0027t commit) a large\nportion of the address space, which is not compatible with the address space\nlimit enforced by RLIMIT_AS.\n\nScudo offers a function to enforce an upper RSS limit (note this is the actual\nRSS of a process, not its AS), use it if running with 64-bit Scudo.\n\nBug: 63907455\nTest: aosp compiled \u0026 run in emulator\nTest: manually enabling Scudo for mediaextractor \u0026 mediacodec, flashing \u0026 using\n      a marlin\n\nChange-Id: Iaef6ff04077b22d16b0b62d413081ee8e6ba6ea0\n"
    },
    {
      "commit": "575c277d7f49ed2ae0a3033a4f2cac627e2c02e6",
      "tree": "e9202b5b514c409b22f1ccddbeabbce2a3ce5298",
      "parents": [
        "887cb9ea946a3f29999849408ac9b051b705c008"
      ],
      "author": {
        "name": "Daniel Bonnevier",
        "email": "daniel.bonnevier@sonymobile.com",
        "time": "Mon May 26 11:42:41 2014 +0200"
      },
      "committer": {
        "name": "Tomoharu Kasahara",
        "email": "tomoharu.kasahara@sony.com",
        "time": "Fri Nov 02 19:46:40 2018 +0900"
      },
      "message": "Return bits per sample and sample rate as metadata\n\nMakes it possible to retrieve bits per sample and\nsample rate by metadata retriever.\n\nBug: 112986969\nTest: Check if sample rate and bits per sample can be retrieved\n\nChange-Id: Iaefb0ad51c08a5abb4ba60c5eed50697c78fa70b\n"
    },
    {
      "commit": "59409356027170e408836905f2b6be7f41ef17da",
      "tree": "5b134630a17a274fbc6bfa207d18abde73167681",
      "parents": [
        "79ca50328c5227002bebf212608b50b066e52a24",
        "7530afeffbdec1e0538ec7a6f993364e273f215b"
      ],
      "author": {
        "name": "Hsin-Yi Chen",
        "email": "hsinyichen@google.com",
        "time": "Thu Nov 01 19:46:31 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Nov 01 19:46:31 2018 -0700"
      },
      "message": "Merge \"Delete unused headers in media/libmedia/include/media\" am: 887cb9ea94 am: a47789fdff\nam: 7530afeffb\n\nChange-Id: If7a43a0a99e1496cbd2303182c902b103f22c219\n"
    },
    {
      "commit": "887cb9ea946a3f29999849408ac9b051b705c008",
      "tree": "0b94bb10bcacfeebafb67bc55406ff20b453121d",
      "parents": [
        "fc0fa0c91baa5231b1e667779ba473b6a31671c6",
        "e2c88b2f635b4e45f622b4884005b40ef9d05e2d"
      ],
      "author": {
        "name": "Hsin-Yi Chen",
        "email": "hsinyichen@google.com",
        "time": "Fri Nov 02 02:06:28 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Nov 02 02:06:28 2018 +0000"
      },
      "message": "Merge \"Delete unused headers in media/libmedia/include/media\""
    },
    {
      "commit": "e2c88b2f635b4e45f622b4884005b40ef9d05e2d",
      "tree": "a6f0b25056a07f675bba3551cba3ea30646db7d2",
      "parents": [
        "e1a209a6a99048f50fcce8e47088c211801ef4bf"
      ],
      "author": {
        "name": "Hsin-Yi Chen",
        "email": "hsinyichen@google.com",
        "time": "Wed Oct 31 15:35:39 2018 +0800"
      },
      "committer": {
        "name": "Hsin-Yi Chen",
        "email": "hsinyichen@google.com",
        "time": "Thu Nov 01 18:02:15 2018 +0800"
      },
      "message": "Delete unused headers in media/libmedia/include/media\n\nBug: 117582158\nTest: mma\nChange-Id: I89a4069edc959ccbc428c81af63e183f5d187c72\n"
    },
    {
      "commit": "caac69b7302d1ea083886441f57785d628629640",
      "tree": "58d510f7b370673bbb875b15797c3078adff9f84",
      "parents": [
        "c292a161349ca16ed36b2d27df8f59d72182558f",
        "ad6490fe985694201a5eaf60c339d4b371319efa"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Oct 25 21:37:51 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Oct 25 21:37:51 2018 -0700"
      },
      "message": "Merge \"Add to retrieve color aspects as metadata\" am: ddf3c7a1ab am: 1b81e543f8\nam: ad6490fe98\n\nChange-Id: I197e3353f8f4b725f3d2963cd38eb7c2cd979f43\n"
    },
    {
      "commit": "e31ac8a2decec1ecda02bc9739984c35783fc92c",
      "tree": "275526fa98f5be607aa5abbb207adf7b5fb1140d",
      "parents": [
        "2d4cf009bb6e7ed9a35971061323ba566bf1a61c"
      ],
      "author": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Oct 25 11:06:21 2018 -0700"
      },
      "committer": {
        "name": "Wei Jia",
        "email": "wjia@google.com",
        "time": "Thu Oct 25 11:28:54 2018 -0700"
      },
      "message": "DataSourceDesc: set max time in ms and us\n\nTest: cts\nBug: 112549021\n\nChange-Id: I3198cf221dc17b9c6504b3c160121a385a848487\n"
    },
    {
      "commit": "ccb002f5a98a82d3ed5aee7835eb25c0c6778a08",
      "tree": "132a61938693af72747bcf47170cb001fee3cb27",
      "parents": [
        "e0bc1a9b8ee77919211819d03404aca893f8bcbf"
      ],
      "author": {
        "name": "Toshikazu Saito",
        "email": "toshikazu.x.saito@sony.com",
        "time": "Wed Aug 29 15:00:22 2018 +0900"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed Oct 24 18:07:03 2018 +0000"
      },
      "message": "Add to retrieve color aspects as metadata\n\nAdd to retrieve color aspects as metadata. If CSD can be retrieved from\nExtractor, color aspects is retrieved from CSD firstly. If CSD cannot be\nretrieved, color aspects is retrieved from Extractor.\nCurrently, supported codec is only HEVC for CSD retrieving.\n\nBug: 114329709\nTest: put hdr/non-hdr contents and check media db\n\nChange-Id: I842f3308dbc68dd241c0a71c4dd27a338a6ad3af\n"
    },
    {
      "commit": "99b5d269d6ef1ceda16306d463468bc566a89ae0",
      "tree": "b3030670fec916921124338a3464923082d1bb5d",
      "parents": [
        "84a7939c444b66361d80020df0404854be03e605",
        "2a6618db7f417cdf798fdc2f72f6853966dc7548"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 22 22:41:31 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Oct 22 22:41:31 2018 +0000"
      },
      "message": "Merge \"Return correct error codes from extractors\""
    },
    {
      "commit": "2a6618db7f417cdf798fdc2f72f6853966dc7548",
      "tree": "577dbd0e8b965aee99edb28a4eca1f4192215f07",
      "parents": [
        "4d026f5583e1f61726b8d24569433a6b072ebf6e"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 22 12:58:07 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Oct 22 13:33:21 2018 -0700"
      },
      "message": "Return correct error codes from extractors\n\nFixes playback of short files\nBug: 118072995\nBug: 118161523\nBug: 111407253\nTest: manual\n\nChange-Id: Ie9e1707c7525ab72ace8cf9d4428df1df1205b9e\n"
    },
    {
      "commit": "49fb89d3a0853ef77ecd533bec586abc65754857",
      "tree": "c5384ccf1b4c014763cb1039ea1e90d95861b3a3",
      "parents": [
        "cab10da0da9d9a991c4b895992b6c0e34d5b8293"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Wed Jan 31 17:53:19 2018 -0800"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sun Oct 21 15:09:28 2018 -0700"
      },
      "message": "nuplayer2: remove NuCachedSource2 reference from GenericSource\n\nBug: 63934228\nChange-Id: I6862ca94327df88dddd7afaa125622c64d61516b\n"
    },
    {
      "commit": "ea788f7e048433545a737dc70946cc9150fbc6a5",
      "tree": "e23264a72da1c4b0fd652a8a5b2da7730c9314b6",
      "parents": [
        "1c152226bcfaa32d1e1e95168157fe99048d424a"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Oct 12 14:44:24 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Fri Oct 12 16:00:33 2018 -0700"
      },
      "message": "Add media.codec.update service\n\nThis is done similarly to how we update the extractors.\nmedia.swcodec will start a service \"media.codec.update\"\nto get notified of the update apk location, then updated\nversion of the component store will be loaded.\n\nSince the update interface is exactly the same, we reuse\nIMediaExtractorUpdateService to avoid adding new an aidl\ninterface. Besides this service will likely be removed\nafter we switch to APEX.)\n\nBug: 111407413\nBug: 117290290\nChange-Id: I739ba0071806beed99302ccd3da7a6f73a437f06\n"
    },
    {
      "commit": "5dcf85aa7666bf7efb5472e49c14c97c7b1bcefc",
      "tree": "d79d9f3603a571b14fdd5e7de9811ee14826331f",
      "parents": [
        "1e91e0ea18e4c267b54ae2e14c8c9f0a013188a7"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 11 09:49:02 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Oct 11 10:57:13 2018 -0700"
      },
      "message": "Use media_status_t instead of status_t in extractor interface\n\nBug: 111407253\nTest: CTS\n\nChange-Id: Iabf0e033f553a398b70bdf616261fbdabc6f71f8\n"
    },
    {
      "commit": "cac3ae975aa71ef134f2a9e57ee638a1afd1c966",
      "tree": "ba741036400ecbf21701e44ff698bc3b0148ae8d",
      "parents": [
        "4cc873cc1dcf9e69572c2e52b68af1aebea0ad98",
        "a668d590019787d0aa9222f02cc0b90c84bf1390"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Oct 08 14:27:48 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 08 14:27:48 2018 -0700"
      },
      "message": "Merge \"Add noexcept to move constructors and assignment operators.\" am: a499844d1c am: 0b9e96bb27\nam: a668d59001\n\nChange-Id: I2d3da1397479d027bd581a301606e355488a2c0c\n"
    },
    {
      "commit": "0b9e96bb27c150a95e89756816992eb2e2f298ac",
      "tree": "6b6a3f24e8245cdcb2df3b92743d2e543222a191",
      "parents": [
        "b40a3829849001874c5e10ebafdffef5aee2d47b",
        "a499844d1cf45a8dad85d2c4282961994385ece4"
      ],
      "author": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Mon Oct 08 13:38:46 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Mon Oct 08 13:38:46 2018 -0700"
      },
      "message": "Merge \"Add noexcept to move constructors and assignment operators.\"\nam: a499844d1c\n\nChange-Id: I7c8ed80d9ed81e75cc6a17fd19b83e3a08137ce7\n"
    },
    {
      "commit": "cf8d9b4727dd5d3357d68852dfc13f0c005dfd95",
      "tree": "cfbb0ad55aa80494f58d0cf678ca936b696d4c13",
      "parents": [
        "3c5b1b7150257e33d4ee14166d577d1d644a31b2"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Tue Sep 25 14:02:02 2018 -0700"
      },
      "committer": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Oct 05 16:42:11 2018 +0000"
      },
      "message": "Add noexcept to move constructors and assignment operators.\n\nBug: 116614593\nTest: build with WITH_TIDY\u003d1\nChange-Id: I3cab80a57fac8c13ea449fdb72f27b6f122a0b1e\n"
    },
    {
      "commit": "32fddecebdd0ae2c63b930cfb039f41c71739de6",
      "tree": "4fbaacbaa85c7972993b73ec4ee9753d3fb0b925",
      "parents": [
        "fcc6fdd51d4d6dd75c69a048ed2eb469d7f7c446",
        "03244035489de61c4eb09506cb41a1a46a834a49"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Oct 03 15:42:09 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Oct 03 15:42:09 2018 +0000"
      },
      "message": "Merge \"Network DataSources: implement disconnect in close\""
    },
    {
      "commit": "03244035489de61c4eb09506cb41a1a46a834a49",
      "tree": "6a4a3309af6e97e50181889b67b01991bf9f1ebd",
      "parents": [
        "87653da51febf0b3be01c742c5d2b6728b496ffa"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Oct 02 14:36:32 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Tue Oct 02 16:15:24 2018 -0700"
      },
      "message": "Network DataSources: implement disconnect in close\n\nBug: 109928575\nTest: android.media.cts.NativeDecoderTest#testAMediaDataSourceClose\nChange-Id: I083b85c31e42f7ddd4b2da365557e3d9251f8777\n"
    },
    {
      "commit": "56f1938e514594c41f04ee3a7d9b84deef265eb7",
      "tree": "d27e46b08f0d1653282b66f9d56442738866016c",
      "parents": [
        "f441367a5fde9d08788797c4daccd717ce1a7609"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Wed Sep 12 15:30:59 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Oct 02 14:14:31 2018 -0700"
      },
      "message": "Support extractors that use AMediaFormat for metadata\n\nSupport secondary plugin API that uses AMediaFormat so plugins can be gradually\nchanged over to it.\n\nBug: 111407253\nTest: CTS, manual\n\nChange-Id: I25de3cb9463ca3b91370cecd16c80915d6407daf\n"
    },
    {
      "commit": "2a3363ad85d82a8dfa89573d0d84898cb8bb8727",
      "tree": "3e9be93220d9925d70e82a416211bdece2d9b341",
      "parents": [
        "f7f463120abca9a0050f3e82b0ebd222410e141b"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Sep 13 13:15:30 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Sep 28 16:07:44 2018 -0700"
      },
      "message": "C-ify MediaTrack\n\nAdd C-API replacement for MediaTrack in extractor plugins.\nMove MediaTrack from libmediaextractor.so to libmedia.so\n\nBug: 111407253\nTest: CTS, manual\n\nChange-Id: I3407e903fe41a2d7b7233538808281fce318c27a\n"
    },
    {
      "commit": "a77c9edb91589d8673d3af6e2243b6f087430a11",
      "tree": "a7fdc9df8701f5b9c664e8e78693df636e4fd027",
      "parents": [
        "94afc302956ed4a150db2488c031f37d0b8acf14",
        "92d2576a31abdb7e84b16370a5579e2d1f728145"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Sep 21 15:29:37 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 21 15:29:37 2018 -0700"
      },
      "message": "Merge \"Suppress implicit-fallthrough warnings in mediarecorder.\" am: fd53bf2f59 am: 5c1de015ad\nam: 92d2576a31\n\nChange-Id: I5bd4471c15c08216583d12e9e5bb281053794580\n"
    },
    {
      "commit": "5c1de015adb5ba537118faf1b6bad15b61df3097",
      "tree": "4575543b471623fc9834d97d5847e65308bee3c5",
      "parents": [
        "06a5fadedad0f2d168f4287efe23c6e8ca473063",
        "fd53bf2f59071766f6f2ea925a6718919eac2502"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Sep 21 14:01:06 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Sep 21 14:01:06 2018 -0700"
      },
      "message": "Merge \"Suppress implicit-fallthrough warnings in mediarecorder.\"\nam: fd53bf2f59\n\nChange-Id: I96af33f62de30176268b8b7375502a5afdd4ed7b\n"
    },
    {
      "commit": "38bdd657aee952ee5f9699fd8ddf4b5e156a3904",
      "tree": "c9bcf7f7ee92fe5e81a9475ae8364728b105a592",
      "parents": [
        "48f698163f6853837a98b7b1afe9238ba4de74cb"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Thu Sep 13 14:26:05 2018 -0700"
      },
      "committer": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Fri Sep 21 17:50:41 2018 +0000"
      },
      "message": "Suppress implicit-fallthrough warnings in mediarecorder.\n\nAdd FALLTHROUGH_INTENDED for clang compiler.\n\nBug: 112564944\nTest: build with global -Wimplicit-fallthrough.\nChange-Id: I42918227a55029f46362d448c496012de9ad3670\n"
    },
    {
      "commit": "efa12510317fa8ebbc2f00f1bff45d2805a83e59",
      "tree": "e37f2c94a6661a632e06a49ab21e4a3faaf7d96a",
      "parents": [
        "fd1da15b1b1f05a6b431fd4e33dbb3361e2fc773"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Sep 17 12:18:03 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Sep 17 15:15:42 2018 -0700"
      },
      "message": "Fix bug in MediaBufferGroup new buffer allocation\n\nMediaBufferGroup could allocate buffers of size 0, but this\nwas masked because we pre-allocated many more buffers. Now\nthat we allocate fewer buffers upfront, it\u0027s more likely\nto hit this case.\n\nBug: 29125703\nTest: CTS\n\nChange-Id: Iba666f161be6d7c8bf09e1b48b1fd80750685a57\n"
    },
    {
      "commit": "0d97cec0533f47237b16b294fd92a827f2ebdc6f",
      "tree": "b335bf96cbf750c08d235f60bb2cd674614a8250",
      "parents": [
        "6aecd3553601595e2c33689d459c28fff738729e",
        "98603d8711b10969ba770fbb19774201212207a1"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Mon Aug 27 15:54:14 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Aug 27 15:54:14 2018 +0000"
      },
      "message": "Merge \"Add AMediaFormat functions to clear and copy\""
    },
    {
      "commit": "ea1287b50d2f7566d9748de3f4b83a407e6338f1",
      "tree": "5c0d8486db1502bebd5dd5e2e1ad9b65706d6eea",
      "parents": [
        "f42230f2ed5c01f2de62e78d462cb102953be5dc",
        "e0c8a8c884e9fd02277cab068a7859bb0f273115"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Fri Aug 24 13:12:03 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 24 13:12:03 2018 -0700"
      },
      "message": "Merge \"Skip memory limits under HWASan, same as ASan.\" am: 4eeaffe5ee am: 85998cd83a\nam: e0c8a8c884\n\nChange-Id: I2b69c476aa5f612e85d385b5e656ffb76c626d3b\n"
    },
    {
      "commit": "85998cd83a1745642bc6823f7864ff47a2f2aa53",
      "tree": "33a1df481c33dde25edd20ffcbfa7bf5c00e14a0",
      "parents": [
        "5e64d79404ebdeb19715357ce997a3fc2ad7835c",
        "4eeaffe5ee9e806fa56dce69657ea30c11e0fbad"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Fri Aug 24 11:16:55 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Aug 24 11:16:55 2018 -0700"
      },
      "message": "Merge \"Skip memory limits under HWASan, same as ASan.\"\nam: 4eeaffe5ee\n\nChange-Id: I152b9543b0c8bb8276b7a8bcc64430292fa2dc20\n"
    },
    {
      "commit": "98603d8711b10969ba770fbb19774201212207a1",
      "tree": "f4cbd7d89e49d348ec4f42e32c45509b2acbcefa",
      "parents": [
        "ddc47d47a956e7b67449f2345ccf481e025ca62d"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jul 17 11:06:55 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri Aug 24 09:43:09 2018 -0700"
      },
      "message": "Add AMediaFormat functions to clear and copy\n\nAlso move NdkMediaFormat internals to libmedia to avoid a future circular\ndependency between libmedia and libmediandk.\n\nBug: 111407253\nTest: build, boot, play some files\n\nChange-Id: I54d91439f216c3834726e5505afef40dc0d93e67\n"
    },
    {
      "commit": "7bd26ab0a794612f633457067288e30ed0efd520",
      "tree": "be42259512ec3ef494985c301cc7f5f075912244",
      "parents": [
        "db44c5d13b9972a0d0dd177c31259b74bc2e4376"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Fri Jul 27 11:58:12 2018 -0700"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Thu Aug 23 15:10:54 2018 -0700"
      },
      "message": "Skip memory limits under HWASan, same as ASan.\n\nHWASan is a new memory tool with similar properties: it also has a\nlarge sparse \"shadow\" mapping that makes RLIMIT_AS ineffective.\n\nBug: 112438058\nTest: mmm SANITIZE_TARGET\u003dhwaddress\n\nChange-Id: Iec3dee890e9d5fbdc4fee5e7e59c58ee2b03a0bf\n"
    },
    {
      "commit": "a70beb16195266900997f2f376d2f28017cd45a4",
      "tree": "ba0716f8eb0e1210e663bd48242c2b56deeee401",
      "parents": [
        "9985754cabf9d426bf95e3adfc27cea7fcc86e42"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Jul 17 14:10:03 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Thu Aug 23 08:10:30 2018 -0700"
      },
      "message": "Move MediaExtractor back to libstagefright\n\nIt is no longer needed in libmediaextractor, and moving it back\nto libstagefright will avoid a circular dependency later.\n\nBug: 111407253\nTest: build, boot, play some files\n\nChange-Id: I1373a9eedee27998e7733ea23ae1a375e45cc9c3\n"
    },
    {
      "commit": "cec44d0c8dc9703ca87435d95bdcd6ef228784d7",
      "tree": "a8f3ae236978e7201114e765a652632a0286d30e",
      "parents": [
        "0b16447f1cbaab5838477a68b26eeefa18b4e7aa"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Sun Jun 17 22:21:09 2018 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Tue Aug 21 10:49:16 2018 -0700"
      },
      "message": "C-ify DataSource\n\nAdd a C API for DataSource/Base, and a helper so extractors\ncan continue using a C++ API.\n\nBug: 111407253\nTest: build, boot, play some files\n\nChange-Id: I1c8b2990e17d18eee53c9abf7ebef2ced0e8b7fd\n"
    },
    {
      "commit": "e32f08e97dba172a1ed5a12854af2f009df4795f",
      "tree": "d9b4f852ab5257f10a6bc4788417b00bad848754",
      "parents": [
        "5a7913b405ac893998591fbad1242d7d9b7b2a62",
        "6bb53c045a0bfa4e25a8add4e16f4b0a9256211b"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Jul 25 19:23:12 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 19:23:12 2018 -0700"
      },
      "message": "Merge \"Fix a memory leak\" am: a7dbdc8553 am: d8ce8e33e9 am: 584d6870c1\nam: 6bb53c045a\n\nChange-Id: I63f065aac01e743eb3a700d7b35b94312694b1e7\n"
    },
    {
      "commit": "584d6870c18b4f05ae3ec5ea36944362658c065f",
      "tree": "88631d4791c1127ab278323f92136da274dd9afe",
      "parents": [
        "399b40b4b3a3b5b56b816408c26426e24f5bf68e",
        "d8ce8e33e90e4aef13d61141584c4fec50322eaa"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Jul 25 19:15:37 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 19:15:37 2018 -0700"
      },
      "message": "Merge \"Fix a memory leak\" am: a7dbdc8553\nam: d8ce8e33e9\n\nChange-Id: Iec7c6507badef8b5b53b50e242eed34f5dbfbb8a\n"
    },
    {
      "commit": "d8ce8e33e90e4aef13d61141584c4fec50322eaa",
      "tree": "38aa63fdd9a4316230816d4bfcf568f053b9237b",
      "parents": [
        "671b05bf3c82131612bf761a742f38ca45b453cf",
        "a7dbdc855331b41b70ca0ff31c1707bed250b6b9"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Jul 25 19:11:58 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jul 25 19:11:58 2018 -0700"
      },
      "message": "Merge \"Fix a memory leak\"\nam: a7dbdc8553\n\nChange-Id: Icfff65b3db3863569cda75bed53f01defbadb799\n"
    },
    {
      "commit": "215545be9a8133a196633af8400616ca822080fb",
      "tree": "08b5d26e040f72e037cfb569a5d972e9da826ec2",
      "parents": [
        "69b9593594de8b2836ca3e6a7881b2268e9cb56d"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Jul 25 10:06:30 2018 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Wed Jul 25 10:52:46 2018 -0700"
      },
      "message": "Fix a memory leak\n\n`if (index !\u003d 1)` below, we\u0027d leak this memory.\n\nCaught by the static analyzer:\n\nframeworks/av/media/libmedia/MediaProfiles.cpp:573:21: warning:\nPotential leak of memory pointed to by \u0027profile\u0027\n[clang-analyzer-cplusplus.NewDeleteLeaks]\n\nBug: None\nTest: Ran the analyzer again.\nChange-Id: I3a8641358294a2d405cdf4d00fb1af86d893f9dc\n"
    },
    {
      "commit": "39b09b52e313e89c3493927b379d2e256bf04bd9",
      "tree": "04e64f327c09b0d3344884d59c35ff520c751e3e",
      "parents": [
        "cd56a1c2a0adcd21aad3a64c761aa3562d915be1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Jun 29 12:24:40 2018 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Jul 10 09:02:26 2018 -0700"
      },
      "message": "audioserver: log system event for binder timeouts\n\nAdd event logging in case of audioserver watchdog to help\ncollect statistics.\n\nTest: make. Simulate watchdog and check events in logcat.\n\nChange-Id: I4716852c77d56703ad5f3dfc2500f598a2b80a12\n"
    },
    {
      "commit": "7c6ae98049e422454f6e9ea21d9d3fd6a7bfd217",
      "tree": "06f9d2dc1df52505e59968677bc1dc8d042a1e55",
      "parents": [
        "495d8f29c82be95d499f8897311411ccc74ec52b"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Jun 14 12:33:38 2018 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Thu Jun 14 17:03:06 2018 -0700"
      },
      "message": "audioflinger: Add support for RecordTrack with no conversion\n\nWhen piping encoded audio data via software patch, it needs\nto be created without the buffer converter. In this case the audio\ndata is copied directly from ResamplerBufferProvider.\n\nAdded input flag AUDIO_INPUT_FLAG_DIRECT to indicate to PatchPanel\nthat the PatchRecord track needs to be opened in this mode.\nThis flag can be later added to minor Audio HAL update.\n\nBug: 63901775\nTest: MSD scenario; verified that phone over USB headset still works\n      on marlin / sailfish\n\nChange-Id: If2745778d356769b143fb3c29910275ddef119ac\n"
    },
    {
      "commit": "e0f2694168bc1d8689b37fee52af2ae1a403fe56",
      "tree": "f60b15398f3897f559a2361417c1a4cbc7eee86e",
      "parents": [
        "9c6d88f78066ab0aa812845124efb2f194c9cf05",
        "ab065b63be1bfa8f95a372a4a5629fa16f54c75e"
      ],
      "author": {
        "name": "Jaekyun Seok",
        "email": "jaekyun@google.com",
        "time": "Fri Jun 08 12:44:23 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 08 12:44:23 2018 -0700"
      },
      "message": "Merge \"Add odm/etc/media_profiles_V1_0.xml\" into pi-dev am: afb0d8c57e\nam: ab065b63be\n\nChange-Id: I0ceeaf2e7bd8b52a07bdee09c4040ec4d7a14f5b\n"
    },
    {
      "commit": "ab065b63be1bfa8f95a372a4a5629fa16f54c75e",
      "tree": "896aa72dace5420890bd074319e361013f5a7edf",
      "parents": [
        "a5b2df722f6bad2a4405b9d5faa568143f167f8c",
        "afb0d8c57e6a6efca3c413cf28a8e25ee8973a6d"
      ],
      "author": {
        "name": "Jaekyun Seok",
        "email": "jaekyun@google.com",
        "time": "Fri Jun 08 12:38:26 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 08 12:38:26 2018 -0700"
      },
      "message": "Merge \"Add odm/etc/media_profiles_V1_0.xml\" into pi-dev\nam: afb0d8c57e\n\nChange-Id: I865012b3fb17efae6ae0ee62bad40497eb959d96\n"
    },
    {
      "commit": "6b0bd48f20e610238878289cd4e21e68eeef776a",
      "tree": "b4a41c2286d87392d386172b3e5791d78035474e",
      "parents": [
        "29d1cc0fe6c2cc5f97e9d77e21f47df58544340c"
      ],
      "author": {
        "name": "Jaekyun Seok",
        "email": "jaekyun@google.com",
        "time": "Fri Jun 08 16:57:37 2018 +0900"
      },
      "committer": {
        "name": "Jaekyun Seok",
        "email": "jaekyun@google.com",
        "time": "Fri Jun 08 16:57:37 2018 +0900"
      },
      "message": "Add odm/etc/media_profiles_V1_0.xml\n\nBug: 109856157\nTest: succeeded building\nChange-Id: Id19ee5d49fdd448a895be3d5e4f6b1c2cdff6bb7\n"
    },
    {
      "commit": "ba57b7d5fd987fbe9d619eafab90bdc4deda2464",
      "tree": "622facbfbbe2c3759c7f0eb4e861f353d0739510",
      "parents": [
        "d9850c3b1b97385f6affc4d299e2b8be1a4b5084",
        "59fef32845e5fec2f5c97c9637965b8c3ca24a6f"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Sat May 26 01:46:09 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 26 01:46:09 2018 +0000"
      },
      "message": "Merge \"SingleStateQueue: Add last method to Mutator\""
    },
    {
      "commit": "f7d141320f508441a5323a11c2808e4a1c06129a",
      "tree": "5b1bc31aa6a2d439313db6ff8bff495fcd040d9f",
      "parents": [
        "ade178f6158d2daffd50b632d3589e782371d1c0",
        "72675e932bce9b96731ee57a57d63de617c5a5f5"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri May 25 17:09:42 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 25 17:09:42 2018 -0700"
      },
      "message": "Merge \"stagefright: pass HIDL backed persistent surface cross binder\" into pi-dev am: 55c07b0d4b\nam: 72675e932b\n\nChange-Id: If19bf075d126ed7edf734378c5b7ae4a4d5b7d1c\n"
    },
    {
      "commit": "72675e932bce9b96731ee57a57d63de617c5a5f5",
      "tree": "c5d24300f76369012496eca65456aab4d71dab88",
      "parents": [
        "7375a4732cb2c5a3d7b6fd2ceec75ed26643953d",
        "55c07b0d4be9c5e128524e75e901099bd115b6e2"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Fri May 25 17:05:10 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri May 25 17:05:10 2018 -0700"
      },
      "message": "Merge \"stagefright: pass HIDL backed persistent surface cross binder\" into pi-dev\nam: 55c07b0d4b\n\nChange-Id: I274bc3fe6905f82795166b32d6fefcc30b57a674\n"
    },
    {
      "commit": "59fef32845e5fec2f5c97c9637965b8c3ca24a6f",
      "tree": "345a351bf0f54ef6737aa3e117747075e35f2bb1",
      "parents": [
        "40e34f6fe614ceea5dd11fbb7b797d1108305983"
      ],
      "author": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri May 25 12:43:43 2018 -0700"
      },
      "committer": {
        "name": "Andy Hung",
        "email": "hunga@google.com",
        "time": "Fri May 25 12:45:53 2018 -0700"
      },
      "message": "SingleStateQueue: Add last method to Mutator\n\nObtains last value written.\n\nTest: see bug for CL topic and test\nBug: 80272001\nChange-Id: Ia71752970ac2e66bb1c89cd9e06691fc88f64647\n"
    },
    {
      "commit": "79c49ae0bdaaee24d7dc26b6658acfab27274b22",
      "tree": "45481f8ff81c74795383a9296bba640ec8f21277",
      "parents": [
        "d3663c97fb8bd44877e07a753a12b838a780b69c"
      ],
      "author": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu May 24 23:40:20 2018 -0700"
      },
      "committer": {
        "name": "Lajos Molnar",
        "email": "lajos@google.com",
        "time": "Thu May 24 23:41:57 2018 -0700"
      },
      "message": "stagefright: pass HIDL backed persistent surface cross binder\n\nBug: 67591367\nChange-Id: I20b70813a96c65822c35240448fafa9e5c749ae1\n"
    },
    {
      "commit": "b1dd2d9b7b0a3da1db8d3e3c2a76509a53a316e9",
      "tree": "0bb55367e3a4df518f559dd4c630dae24ba57982",
      "parents": [
        "7be71d225fd6d44cc38eaef532c2eb502dcadb91",
        "b1243bf60d3a4ee226bc33bf449c4624133958a2"
      ],
      "author": {
        "name": "Mickey Keeley",
        "email": "mickeykeeley@google.com",
        "time": "Thu May 24 16:38:01 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 24 16:38:01 2018 +0000"
      },
      "message": "Merge \"libmedia_helper export headers\""
    },
    {
      "commit": "b1243bf60d3a4ee226bc33bf449c4624133958a2",
      "tree": "addca1cbc4350e9b85663eadffa0e496f2c70783",
      "parents": [
        "b5bffacf0b3930c17c50005d0102bff0ca012309"
      ],
      "author": {
        "name": "Mickey Keeley",
        "email": "mickeykeeley@google.com",
        "time": "Mon May 21 09:08:22 2018 -0700"
      },
      "committer": {
        "name": "Mickey Keeley",
        "email": "mickeykeeley@google.com",
        "time": "Mon May 21 09:09:33 2018 -0700"
      },
      "message": "libmedia_helper export headers\n\nHave libmedia_helper export libmedia_headers so that future clients\nwon\u0027t need to explicitly include them.\n\nBug: 80076889\nTest: sdk_google_iot_x86 builds.\n\nChange-Id: Iac6e1237f10b461dbcd72370be843634aaff431d\n"
    },
    {
      "commit": "b1410279236c35e05edfb7aa96dec563759d073e",
      "tree": "7228325d07710a7366a5601b11e974b2f9dfdd02",
      "parents": [
        "18a64dc9e1bdb6f0bf80a76b86b3ca96ed5be333",
        "7221451768a69fa5bc8dbbff8ea76af47d3ea70a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu May 17 15:03:40 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 17 15:03:40 2018 -0700"
      },
      "message": "Merge \"audiopolicy: Optimize A2DP codec config change\" into pi-dev am: 0ba1ae398e\nam: 7221451768\n\nChange-Id: Iab6dde9d368f6647aeb1eab49dc7b45a6b96f756\n"
    },
    {
      "commit": "7221451768a69fa5bc8dbbff8ea76af47d3ea70a",
      "tree": "862cc3e9533ab6d1220c351fab87017e4a24dd77",
      "parents": [
        "52f0c23904b2249fb92ad015d74d9c6969930cdb",
        "0ba1ae398e65718fba66bb1bd258d4d0a9ba6c28"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu May 17 14:58:36 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 17 14:58:36 2018 -0700"
      },
      "message": "Merge \"audiopolicy: Optimize A2DP codec config change\" into pi-dev\nam: 0ba1ae398e\n\nChange-Id: I8a8da84dafe1f941b7fb0240ac353c35ea06ace3\n"
    },
    {
      "commit": "3432e0439d3b09756f125dfa734951c654d63baf",
      "tree": "a5ccde7855da94bf284d302e61adf0d155f0dcfa",
      "parents": [
        "5eb9d967e81ace00d96ab50b9264b25560e9df1d"
      ],
      "author": {
        "name": "Aniket Kumar Lata",
        "email": "alata@codeaurora.org",
        "time": "Fri Apr 06 14:22:15 2018 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Thu May 17 11:18:25 2018 -0700"
      },
      "message": "audiopolicy: Optimize A2DP codec config change\n\nHandle A2DP codec config change in audio HAL without\nclosing / re-opening outputs or invalidating streams\nfrom AudioPolicyManager.\n\nBug: 79476124\nTest: music playback over BT A2DP\nChange-Id: I87263da32815a4d4f6273068ef0b2a5b93c73b75\n"
    },
    {
      "commit": "dc769682023ba8a8a5da07c3e3a3adfabe4bd612",
      "tree": "6f6a0991e71927cda302c4c489f69bd239023597",
      "parents": [
        "f1040d20210338eb850b000d4344ddc9a04eb493"
      ],
      "author": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Fri May 04 15:34:08 2018 -0700"
      },
      "committer": {
        "name": "Mikhail Naganov",
        "email": "mnaganov@google.com",
        "time": "Wed May 16 09:43:33 2018 -0700"
      },
      "message": "audio_server: Unify audio_patch creation\n\nProvide PatchBuilder helper class instead of fiddling with\nstruct audio_patch directly.\n\nRename \u0027getAudioPortConfig\u0027 methods of AudioFlinger helper\nclasses into \u0027toAudioPortConfig\u0027 to match classes\nof AudioPolicyManager.\n\nFactor out common code in AudioPolicyManager that was\nadding audio patches. For that, AudioOutputDescriptor now inherits\nfrom AudioSessionInfoProvider, and the latter has been extended\nwith \u0027setPatchHandle\u0027 method.\n\nTest: switch to/from Bluetooth on phone calls and media playback,\n      use camcorder\nChange-Id: Idd99645dc6943ed078c4d94d0197fead7831ab4d\n"
    },
    {
      "commit": "06271b6e172067bffca03ae3f94ae6a1fb4a752a",
      "tree": "ea20565aaabe6f471302597e9c2e9bf7396f0136",
      "parents": [
        "000878037733b48a4e8a63af764147403420c935",
        "9b3eee31c19c965946553d7a98637f704bd14af2"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu May 10 19:30:44 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 10 19:30:44 2018 -0700"
      },
      "message": "Merge \"libaudioprocessing: clamp application provided float audio\" into pi-dev am: b3dee358b1\nam: 9b3eee31c1\n\nChange-Id: Iab7a6ec9a1cdbb17848e124bc73e60c1c7700ea8\n"
    },
    {
      "commit": "9b3eee31c19c965946553d7a98637f704bd14af2",
      "tree": "c04f4ec21a32524981d15f0332ea31b4fca78b6f",
      "parents": [
        "d64be95782e1210abd63b1024080bafdb9af88ff",
        "b3dee358b18472d6623a9d6342d7f2f7e8e45bec"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu May 10 19:25:57 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 10 19:25:57 2018 -0700"
      },
      "message": "Merge \"libaudioprocessing: clamp application provided float audio\" into pi-dev\nam: b3dee358b1\n\nChange-Id: I51eb47b06977d7ebf761c0601a505a4ccc8b0a20\n"
    },
    {
      "commit": "b3dee358b18472d6623a9d6342d7f2f7e8e45bec",
      "tree": "a3d6104f1bd6212309642fc7138a3245be5c7ee8",
      "parents": [
        "0dd0949cae167f88f280510cb49151ef32fde639",
        "e053bfaaa6477016b935c98cacf0b297b5d3d6e1"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri May 11 02:15:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 11 02:15:46 2018 +0000"
      },
      "message": "Merge \"libaudioprocessing: clamp application provided float audio\" into pi-dev"
    },
    {
      "commit": "72ea0a8cff7820b3cb2274b38209f3dff287f8c6",
      "tree": "38ce1961b592877b530ebb264e579ba6700eb1a8",
      "parents": [
        "c0c611cd81457ac74c20a418e405f17c3ab8a100",
        "e34561be0524fc177c3c1ba973a4e739e6f01ec9"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu May 10 17:12:09 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 10 17:12:09 2018 -0700"
      },
      "message": "Fix security vulnerability in CryptoHal am: b1f8c80d3a\nam: e34561be05\n\nChange-Id: I4ae6d1080be406bf53e3617c59c75206cc5066c6\n"
    },
    {
      "commit": "e34561be0524fc177c3c1ba973a4e739e6f01ec9",
      "tree": "02d1ec2cb6121842a24f973be91dd16a8c74ab71",
      "parents": [
        "2dcfc31372324638109585877c66379ff82a41af",
        "b1f8c80d3a0c144407d1bd6b63eb6ac9e90112f2"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu May 10 16:36:26 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu May 10 16:36:26 2018 -0700"
      },
      "message": "Fix security vulnerability in CryptoHal\nam: b1f8c80d3a\n\nChange-Id: I00d72bd20647471c62f6dd10dfba84193b0021ae\n"
    },
    {
      "commit": "b1f8c80d3a0c144407d1bd6b63eb6ac9e90112f2",
      "tree": "a97d00e9565b2e7276dafa3aac15b823c952cfc2",
      "parents": [
        "1ab07d1de9875dab00960d3939d0a00bc2ec5864"
      ],
      "author": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu Apr 19 16:23:21 2018 -0700"
      },
      "committer": {
        "name": "Jeff Tinker",
        "email": "jtinker@google.com",
        "time": "Thu May 10 23:23:39 2018 +0000"
      },
      "message": "Fix security vulnerability in CryptoHal\n\nCryptoHal was not checking that the memory heap set by setHeap\nwas the same one that was actually used for the decrypt call, allowing\nthe caller to spoof the decrypt call into accessing arbitrary memory.\n\nbug:76221123\ntest: mediadrmserverpoc included in the bug \u0026 GTS media tests\nChange-Id: I35214a1a6d0a4b864123e147d1a1adc2377bfbc5\n"
    },
    {
      "commit": "88a2cb3869457739ef801101af9c8b856240c966",
      "tree": "2dfae24d1d1742e496a26daac3d19f83cb5bb6cf",
      "parents": [
        "9382876687b3be53a09100c44c26c437652023a3"
      ],
      "author": {
        "name": "Chih-Hung Hsieh",
        "email": "chh@google.com",
        "time": "Sat Mar 10 21:10:38 2018 -0800"
      },
      "committer": {
        "name": "Chih-hung Hsieh",
        "email": "chh@google.com",
        "time": "Wed May 09 01:12:15 2018 +0000"
      },
      "message": "Use regex pattern in version scripts for lld.\n\n* lld complains about unfound symbols in version scripts.\n\nBug: 77820876\nTest: make checkbuild\nChange-Id: I38af432c0c78b2ab3cdcfc5eefbf941fdba8beee\n(cherry picked from commit 5c67e746885b37f6080d63410876db13a68bae75)\n"
    },
    {
      "commit": "08c80574ee6c3c5587098e13347f3aac3d475a08",
      "tree": "e4eb7e9adb4725f9a4467c34b7d76d835e5f8ae4",
      "parents": [
        "92409179eb36df366814c736caf2b7efc02df70e",
        "e264f1ddb67466016a3e8890d4d0bf3cb3ce6120"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue May 08 15:26:47 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 08 15:26:47 2018 -0700"
      },
      "message": "Merge \"Decode one row of tiles at a time for image that has tiles\" into pi-dev am: 4df59e77f8\nam: e264f1ddb6\n\nChange-Id: Ie9d8ba328e73be59bb4548ba96cbf3c0a0ab85ab\n"
    },
    {
      "commit": "e264f1ddb67466016a3e8890d4d0bf3cb3ce6120",
      "tree": "a7eb2b650d734cd47bf916f7cbc3cdd787bda0c7",
      "parents": [
        "e93c26858d9aec2d4f2649fbc4f782bf4e85b06a",
        "4df59e77f88682bbde9f627dc50b3e572815f57c"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue May 08 15:22:43 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue May 08 15:22:43 2018 -0700"
      },
      "message": "Merge \"Decode one row of tiles at a time for image that has tiles\" into pi-dev\nam: 4df59e77f8\n\nChange-Id: If7c3f76b81dc6aeb68c9577ba16d5c83b228ca8f\n"
    },
    {
      "commit": "0c1407f79ef36422330c2003a608d37df714256b",
      "tree": "04eb9f45da49543f2ad97040a692ea245f8906bd",
      "parents": [
        "0c1f9148ed187a9c3819374050c5ea319b059439"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Wed May 02 17:09:05 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Mon May 07 19:38:05 2018 -0700"
      },
      "message": "Decode one row of tiles at a time for image that has tiles\n\nAdd an api to IMediaMetadataRetriever to decode image rect.\nIt will reuse the same full frame IMemory, and decode only\nthe requested rect. For now, StagefrightMetadataRetriever\nwill only allow decoding of rect that\u0027s a full row of tiles,\nand the requested must be issued sequentially (i.e. no\narbitrary rects). When the extract side is fixed to allow\nseeking by tiles, it can be extended to allow arbitrary\nrects.\n\nThis allows HeifDecoderImpl (on client side) to start\nprocessing the getScanlines in parallel with the decoding.\n\nTest: CTS MediaMetadataRetrieverTest;\nManual testing of HEIF decoding of files with or without tiles;\nManual testing of HEIF thumbnails generation in Downloads app.\n\nbug: 78475896\nChange-Id: I820b21cdf33f80593ee6092d8e1ba68b3beb65dd\n"
    },
    {
      "commit": "e053bfaaa6477016b935c98cacf0b297b5d3d6e1",
      "tree": "d2076ced75198bd8f53f291f3b59ca34ffe9e037",
      "parents": [
        "c3d554d42f637a9076473b070b30ba3e8229189c"
      ],
      "author": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Thu Nov 09 22:07:34 2017 -0800"
      },
      "committer": {
        "name": "Kevin Rocard",
        "email": "krocard@google.com",
        "time": "Fri May 04 17:13:51 2018 -0700"
      },
      "message": "libaudioprocessing: clamp application provided float audio\n\nFor security reason, float buffers provided by application must be\nclamped to FLOAT_NOMINAL_RANGE_HEADROOM.\nWith the new all float pipeline, float are no longer clamped by their\nconversion to fixed point.\n\nThis patch adds a float buffer provider that clamps float samples\nas they are copied to audio pipeline.\n\nTest: Play music, play video in chrome (opensles format float),\n      play float pcm audio file specially crafter with \u003e\u003e 1 samples.\nBug: 68099072\nChange-Id: I220b436d9982bc43a75715a030efd0e6a0c79fa3\nSigned-off-by: Kevin Rocard \u003ckrocard@google.com\u003e\n"
    },
    {
      "commit": "dfcc596ab400176215717766c6a88251c8642fa3",
      "tree": "f9b079f5bc003b5788993fa6cf71cb5c875b20fc",
      "parents": [
        "1d37b198f37e90ceaa8cd9b3b048d603bd9322e9",
        "ad33f439ee2946eae0d72221d2ac08600d95410b"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Apr 27 18:02:51 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 27 18:02:51 2018 -0700"
      },
      "message": "Merge \"NdkMediaExtractor: remove `disconnect` from NDK headers\" into pi-dev am: 036e93aa10\nam: ad33f439ee\n\nChange-Id: If8cfb5bda48f46e0aa99651657641a9944064f0b\n"
    },
    {
      "commit": "ad33f439ee2946eae0d72221d2ac08600d95410b",
      "tree": "26156b75a094808b7c9efff37506b425ca489b4b",
      "parents": [
        "c55ede9dab97eba7ebd573f475864aa58cc4f493",
        "036e93aa100246e7089fcd7b800e400fb122275c"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Apr 27 17:50:45 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Apr 27 17:50:45 2018 -0700"
      },
      "message": "Merge \"NdkMediaExtractor: remove `disconnect` from NDK headers\" into pi-dev\nam: 036e93aa10\n\nChange-Id: I6d32a7e9385379a8ea356be600972a1c70b344e6\n"
    },
    {
      "commit": "036e93aa100246e7089fcd7b800e400fb122275c",
      "tree": "077cae906ddb8f4cd8b900cd4078e58d125675f9",
      "parents": [
        "1f0cbeddf430e24d943892381600262ae3ce542e",
        "3fd320dac30e103a47bdbcf1897deac3d08f99e9"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Sat Apr 28 00:40:28 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Apr 28 00:40:28 2018 +0000"
      },
      "message": "Merge \"NdkMediaExtractor: remove `disconnect` from NDK headers\" into pi-dev"
    },
    {
      "commit": "3fd320dac30e103a47bdbcf1897deac3d08f99e9",
      "tree": "88073126277312b68ec8726b7fc61e4c7cc59397",
      "parents": [
        "64da22285776f07a775afd45f9fc36cea1aa05e3"
      ],
      "author": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Thu Apr 26 16:21:29 2018 -0700"
      },
      "committer": {
        "name": "Robert Shih",
        "email": "robertshih@google.com",
        "time": "Fri Apr 27 22:26:21 2018 +0000"
      },
      "message": "NdkMediaExtractor: remove `disconnect` from NDK headers\n\nBug: 63934228\nChange-Id: I74f0564bb75dffb934931d0e5f1d34b17916f2b8\n"
    },
    {
      "commit": "f4b5b3a9bfe50e7d44272a81b91b2eabf8b579da",
      "tree": "c734763835b14bcc47575dab3e0759ec0386b479",
      "parents": [
        "5c3c29e53490558a8e538044921daa263df22414",
        "173ede0bb1d2b1ab7fb47f7e6474d91cc95d76d1"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Apr 26 13:17:01 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 26 13:17:01 2018 -0700"
      },
      "message": "Merge \"Remove one redundant frame copy in MetadataRetriever\" into pi-dev am: b0d44131e9\nam: 173ede0bb1\n\nChange-Id: I67458f38c9e1f798d662c7faf37f54e6ae84ea2a\n"
    },
    {
      "commit": "173ede0bb1d2b1ab7fb47f7e6474d91cc95d76d1",
      "tree": "3a0abb383e160a5635c5f435057336748d07270c",
      "parents": [
        "e9108d0f23dfb59f59da8a55db8c91f2bdc3297f",
        "b0d44131e93e0190351ac50ea7a3fe76da168557"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Apr 26 13:09:22 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Apr 26 13:09:22 2018 -0700"
      },
      "message": "Merge \"Remove one redundant frame copy in MetadataRetriever\" into pi-dev\nam: b0d44131e9\n\nChange-Id: Ieea9eff4d94c5acb6d4c51b19633eafb60544bc2\n"
    },
    {
      "commit": "b0d44131e93e0190351ac50ea7a3fe76da168557",
      "tree": "c369f4f9b21c0484edad8ca591a31b5ceee0546c",
      "parents": [
        "90033d19134e13de6b7829db496925676c9d4d72",
        "3f4e6ddcf05aa1a286bc3963b5a9f53bf30b4327"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Apr 26 19:50:42 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 26 19:50:42 2018 +0000"
      },
      "message": "Merge \"Remove one redundant frame copy in MetadataRetriever\" into pi-dev"
    },
    {
      "commit": "3f4e6ddcf05aa1a286bc3963b5a9f53bf30b4327",
      "tree": "afb38add9c3818f5039a7d1b21fe65bd2b3e53a3",
      "parents": [
        "67f280ee7f7ec076cce335c7aa7d3150ae0a3e28"
      ],
      "author": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Tue Apr 24 16:12:57 2018 -0700"
      },
      "committer": {
        "name": "Chong Zhang",
        "email": "chz@google.com",
        "time": "Thu Apr 26 11:58:49 2018 -0700"
      },
      "message": "Remove one redundant frame copy in MetadataRetriever\n\nWhen extracting bitmaps, MediaMetadataRetriever does a copy from\nStagefrightMetadataRetriever\u0027s VideoFrame to IMemory. We could\njust allocate IMemory directly and return that to the client.\n\nbug: 78475896\nChange-Id: Ibe07e7d2c68f031261470308476089c2fa9298ea\n"
    },
    {
      "commit": "82a8d3aa9e7f7304644ec31869f8683cfdbf7803",
      "tree": "b12562b04299b7421144b6aabecf14c0657a93ec",
      "parents": [
        "2ca26c9f1d924b52848e0e4ffe3ba31058d7e6fe",
        "38ca1a3c28ea441bc9f48595f843b46a3da9ebd7"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Apr 25 17:35:23 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 25 17:35:23 2018 -0700"
      },
      "message": "Merge \"Allow customized registration of codec services\" into pi-dev am: d549c0835a\nam: 38ca1a3c28\n\nChange-Id: Id6a3c8e218845d49d33e9661a960458490bdc2e6\n"
    },
    {
      "commit": "38ca1a3c28ea441bc9f48595f843b46a3da9ebd7",
      "tree": "bbda65805389e68bbe1bbc0d4d42e40ea3e44884",
      "parents": [
        "36c3a8577e5d75c08a0b89a8f47a992f53790ff1",
        "d549c0835ab7fc3c06f0e43b9daa3c8994440e5d"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Apr 25 17:26:50 2018 -0700"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Apr 25 17:26:50 2018 -0700"
      },
      "message": "Merge \"Allow customized registration of codec services\" into pi-dev\nam: d549c0835a\n\nChange-Id: Ie6135acf7a458caac941863499ce9b0b22f9a7ba\n"
    },
    {
      "commit": "a66243a7d65c6152e4f0c3e0ac6ba3470c73a6a2",
      "tree": "9c2c2b90ccdeff518971f07af89c31228b8e5d5c",
      "parents": [
        "67f280ee7f7ec076cce335c7aa7d3150ae0a3e28"
      ],
      "author": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Apr 18 01:38:29 2018 -0700"
      },
      "committer": {
        "name": "Pawin Vongmasa",
        "email": "pawin@google.com",
        "time": "Wed Apr 25 04:21:59 2018 -0700"
      },
      "message": "Allow customized registration of codec services\n\nTest: adb bugreport\n\nBug: 78206546\nChange-Id: Id42d57b8b647570e68de228de856a39b2755862d\n"
    }
  ],
  "next": "b3358a7f9b36f15314d8ffcfcb5107598c8b8cc6"
}
