)]}'
{
  "log": [
    {
      "commit": "512f42d7ea5dc3ef3f8da73a603b77d3d44b19e7",
      "tree": "15ab8676c8dd79288f4ffe1906533409aac8e900",
      "parents": [
        "135d69a75e06f44946171909907672b44eb25c99",
        "99d0f6a1438fac26fb3f4e1cb613749ff77fb754"
      ],
      "author": {
        "name": "Shai Barack",
        "email": "shayba@google.com",
        "time": "Sun Oct 24 15:58:22 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sun Oct 24 15:58:22 2021 +0000"
      },
      "message": "Merge \"[build] Remove unused import\" into main"
    },
    {
      "commit": "99d0f6a1438fac26fb3f4e1cb613749ff77fb754",
      "tree": "20b1ac4c043aaa6e84587000674189a1943ed837",
      "parents": [
        "67a1c874da0de181bc6dc101ad07a7da99f049b3"
      ],
      "author": {
        "name": "Shai Barack",
        "email": "shayba@google.com",
        "time": "Sat Oct 23 10:31:42 2021 -0700"
      },
      "committer": {
        "name": "Shai Barack",
        "email": "shayba@google.com",
        "time": "Sat Oct 23 10:31:48 2021 -0700"
      },
      "message": "[build] Remove unused import\n\nChange-Id: I22e5fe372057106c56dfbdc111aedbb82f9bd595\n"
    },
    {
      "commit": "135d69a75e06f44946171909907672b44eb25c99",
      "tree": "56fb630eeab619b5842fefeef1339b51c5f70a56",
      "parents": [
        "c0b92b24778b251a8ae3c7da09acac6d114c7b16",
        "67a1c874da0de181bc6dc101ad07a7da99f049b3"
      ],
      "author": {
        "name": "Shai Barack",
        "email": "shayba@google.com",
        "time": "Tue Jul 27 16:52:01 2021 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jul 27 16:52:01 2021 +0000"
      },
      "message": "Merge \"[cflags] Allow set but unused parameter in third party code\" into main"
    },
    {
      "commit": "67a1c874da0de181bc6dc101ad07a7da99f049b3",
      "tree": "a284e2c2cd35db6d72559d6df2168d668de1070c",
      "parents": [
        "7d1684d8855376446028e9972629ceca883c5be0"
      ],
      "author": {
        "name": "Shai Barack",
        "email": "shayba@google.com",
        "time": "Mon Jul 26 21:27:00 2021 -0700"
      },
      "committer": {
        "name": "Shai Barack",
        "email": "shayba@google.com",
        "time": "Mon Jul 26 21:27:48 2021 -0700"
      },
      "message": "[cflags] Allow set but unused parameter in third party code\n\nBug: 77973\nChange-Id: I8a77cc1a31468f0d15eca330a9330680741db746\n"
    },
    {
      "commit": "c0b92b24778b251a8ae3c7da09acac6d114c7b16",
      "tree": "ec24d22a7238332b91b2db238b9ba9ac18f32792",
      "parents": [
        "7d1684d8855376446028e9972629ceca883c5be0"
      ],
      "author": {
        "name": "dannyzen",
        "email": "dannyrosen@google.com",
        "time": "Wed Jun 02 10:57:50 2021 -0400"
      },
      "committer": {
        "name": "Danny Rosen",
        "email": "dannyrosen@google.com",
        "time": "Wed Jun 02 18:00:03 2021 +0000"
      },
      "message": "[owners] Add OWNERs files to opus\n\nBug: 77855\nChange-Id: I404d91da94497986edae1afb8f45dd57528795ec\n"
    },
    {
      "commit": "7d1684d8855376446028e9972629ceca883c5be0",
      "tree": "b01bce35f65844813094eae41b18f707003501cc",
      "parents": [
        "77ef8ee8b0f6b8651b854d67695031077b329107"
      ],
      "author": {
        "name": "Shai Barack",
        "email": "shayba@google.com",
        "time": "Sat Sep 26 10:42:06 2020 -0700"
      },
      "committer": {
        "name": "Shai Barack",
        "email": "shayba@google.com",
        "time": "Sun Sep 27 04:37:33 2020 +0000"
      },
      "message": "[Wconversion] Suppress warnings\n\nBug: 58162\nChange-Id: Ic40b6209a2923f0b2341fdb7134886dd6ac1a0c4\n"
    },
    {
      "commit": "77ef8ee8b0f6b8651b854d67695031077b329107",
      "tree": "7a9f23e23528da3f0231c2ba86280ed5bbcce75d",
      "parents": [
        "ad8fe90db79b7d2a135e3dfd2ed6631b0c5662ab"
      ],
      "author": {
        "name": "Dale Sather",
        "email": "dalesat@google.com",
        "time": "Wed Apr 08 15:24:18 2020 -0700"
      },
      "committer": {
        "name": "Dale Sather",
        "email": "dalesat@google.com",
        "time": "Mon Apr 20 12:54:17 2020 -0700"
      },
      "message": "[opus] add BUILD.gn adapted from Chromium\n\nThis CL adds a BUILD.gn file for opus. This has been tested with\nffmpeg and mediaplayer integration.\n\nChange-Id: Iea7817d3f93b9d5483ade0839b3a3611645e2b28\n"
    },
    {
      "commit": "ad8fe90db79b7d2a135e3dfd2ed6631b0c5662ab",
      "tree": "546bc34e78282242d5fd3856181da7e197410f35",
      "parents": [
        "3ebf4ad86de2469572f7fa2bd6451469e7867c8f"
      ],
      "author": {
        "name": "Marcus Asteborg",
        "email": "maastebo@microsoft.com",
        "time": "Tue Apr 23 13:41:14 2019 -0700"
      },
      "committer": {
        "name": "Ralph Giles",
        "email": "giles@thaumas.net",
        "time": "Tue Jun 04 16:18:42 2019 -0700"
      },
      "message": "Fix typo in _FORTIFY_SOURCE define.\n\nSigned-off-by: Ralph Giles \u003cgiles@thaumas.net\u003e\n"
    },
    {
      "commit": "3ebf4ad86de2469572f7fa2bd6451469e7867c8f",
      "tree": "972c330a89c870444e44c01963a2130cb7c67bfe",
      "parents": [
        "86e5f5ea56529d688568929d036574a93311e82a"
      ],
      "author": {
        "name": "Felicia Lim",
        "email": "flim@google.com",
        "time": "Fri May 31 13:58:44 2019 -0700"
      },
      "committer": {
        "name": "Felicia Lim",
        "email": "flim@google.com",
        "time": "Fri May 31 14:13:03 2019 -0700"
      },
      "message": "Silk CNG adapts faster to received packets with lower gains\n"
    },
    {
      "commit": "86e5f5ea56529d688568929d036574a93311e82a",
      "tree": "0fc7c3fad94325c8f97b3856391972e91207e11f",
      "parents": [
        "296d556d170f0dc0d5fe49945a5943f1f65a05d8"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Apr 26 11:16:52 2019 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Apr 26 11:17:46 2019 -0400"
      },
      "message": "Add mising cmake file from make dist\n\nThanks to theislander on HA for reporting this.\n"
    },
    {
      "commit": "296d556d170f0dc0d5fe49945a5943f1f65a05d8",
      "tree": "61b1b466c8cde6f2be7183cd6c997a3780f11a7a",
      "parents": [
        "e85ed7726db5d677c9c0677298ea0cb9c65bdd23"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Apr 14 03:57:18 2019 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Apr 14 03:57:18 2019 -0400"
      },
      "message": "Update checksums\n"
    },
    {
      "commit": "e85ed7726db5d677c9c0677298ea0cb9c65bdd23",
      "tree": "205b6c3fd4db216fb3716a80b6e96d34e48af2ad",
      "parents": [
        "1f92613e7d01958d2ec1b0072c27c6f2c118fc01"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Apr 12 16:26:57 2019 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Apr 12 16:26:57 2019 -0400"
      },
      "message": "Bump LT version\n\nAdding the OPUS_GET_IN_DTX() query\n"
    },
    {
      "commit": "1f92613e7d01958d2ec1b0072c27c6f2c118fc01",
      "tree": "275fb827d60549974265bd4eb27f99a6a0da34ac",
      "parents": [
        "268780fbf07e95e31b3d443004b5c3a997f9cad3"
      ],
      "author": {
        "name": "Marcus Asteborg",
        "email": "maastebo@microsoft.com",
        "time": "Thu Apr 11 09:50:14 2019 -0700"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Apr 11 23:07:34 2019 -0400"
      },
      "message": "CMake changes\n\nIf CMAKE_BUILD_TYPE is empty and CFlags are set then only use CFlags.\nIf None are set then use CMAKE_BUILD_TYPE by Release by default.\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "268780fbf07e95e31b3d443004b5c3a997f9cad3",
      "tree": "abc01d281f191ec5ac2b7f898fec5e8f128f8295",
      "parents": [
        "4f4b11c2398e96134dc62ee794bfe33ecd6e9bd2"
      ],
      "author": {
        "name": "Marcus Asteborg",
        "email": "maastebo@microsoft.com",
        "time": "Wed Apr 10 16:34:01 2019 -0700"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Apr 10 20:24:31 2019 -0400"
      },
      "message": "CMake changes\n\nMake release build default\nMade CUSTOM_MODE an option with default off\nAdded missing buildflags for Linux and security.\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "4f4b11c2398e96134dc62ee794bfe33ecd6e9bd2",
      "tree": "b10d512517d899b686f76d50ecc1ec00c70154cc",
      "parents": [
        "afea46e9d795bd08ee7f82fb65a9ff4a7d842b66"
      ],
      "author": {
        "name": "Gustaf Ullberg",
        "email": "gustaf.ullberg@gmail.com",
        "time": "Thu Dec 20 15:35:41 2018 +0100"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Apr 10 17:26:57 2019 -0400"
      },
      "message": "API for checking whether the encoder is in DTX\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "afea46e9d795bd08ee7f82fb65a9ff4a7d842b66",
      "tree": "d3cb6687da12d86460f082a505ed81fdeb4541d7",
      "parents": [
        "196511de23161330c74d123a2076892652c9dc95"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sun Apr 07 23:27:57 2019 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Mon Apr 08 21:40:42 2019 -0700"
      },
      "message": "Correctly enable/disable SILK DTX with forced mode\n"
    },
    {
      "commit": "196511de23161330c74d123a2076892652c9dc95",
      "tree": "764262205bbd9d8b843b77bfe79f67596bfeccae",
      "parents": [
        "f9d3d432d135253357ba457ecd0e4f68f12a4584"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sun Apr 07 23:25:27 2019 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Mon Apr 08 21:39:15 2019 -0700"
      },
      "message": "Fix build errors using Makefile.mips\n\nBroken by earlier ARM optimizations.\n"
    },
    {
      "commit": "f9d3d432d135253357ba457ecd0e4f68f12a4584",
      "tree": "e7a535cee27223f5b59621bc2b3202336fb42fdd",
      "parents": [
        "3765a248489e902b5e1b26e1d68aa10d6e02ff67"
      ],
      "author": {
        "name": "Marcus Asteborg",
        "email": "maastebo@microsoft.com",
        "time": "Thu Nov 15 19:48:38 2018 -0800"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Apr 03 11:51:13 2019 -0400"
      },
      "message": "Adding CMake support for Windows, Mac, Linux and Android Co-Authored-By: evpobr\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "3765a248489e902b5e1b26e1d68aa10d6e02ff67",
      "tree": "1f09bb5a0fce0371501013ceb4a468447dcaf8d0",
      "parents": [
        "db082963b98323d88535f4522ba710208ba93a1a"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Apr 01 01:45:36 2019 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Apr 01 01:45:36 2019 -0400"
      },
      "message": "Fix #elif OPUS_ARM_INLINE_EDSP\n\nReported in https://github.com/xiph/opus/issues/108\n"
    },
    {
      "commit": "db082963b98323d88535f4522ba710208ba93a1a",
      "tree": "d0144af4bd011a3239721a56024da80415141a0c",
      "parents": [
        "6554681d17b1a6bfe79cfeff51cbeeeaec279a3f"
      ],
      "author": {
        "name": "Felicia Lim",
        "email": "flim@google.com",
        "time": "Fri Mar 01 13:00:18 2019 -0800"
      },
      "committer": {
        "name": "Felicia Lim",
        "email": "flim@google.com",
        "time": "Fri Mar 01 15:15:36 2019 -0800"
      },
      "message": "Fix mismatching arg names in function declaration and definition\n"
    },
    {
      "commit": "6554681d17b1a6bfe79cfeff51cbeeeaec279a3f",
      "tree": "3becff94582aaa253e9990cad6f8832b6a1e726f",
      "parents": [
        "cdaf661e8d3e85770bf06db8cff12ae6be7fa2a6"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Mon Feb 25 20:09:00 2019 -0800"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Mon Feb 25 20:19:39 2019 -0800"
      },
      "message": "test_opus_encode: Use fprintf instead of snprintf\n\nsnprintf is not in C89.  Fixes opus-pedantic test failure introduced\nin 59f8e5e4f.\n"
    },
    {
      "commit": "cdaf661e8d3e85770bf06db8cff12ae6be7fa2a6",
      "tree": "4aafc595452eda5f20571d123763d137661c2364",
      "parents": [
        "57092f9dca12f587a5fc1625f45d88c6977edc81"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 13 16:15:38 2019 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 13 16:52:53 2019 -0500"
      },
      "message": "Reset nb_no_activity_frames when analysis DTX isn\u0027t used\n"
    },
    {
      "commit": "57092f9dca12f587a5fc1625f45d88c6977edc81",
      "tree": "7c665cb88d7ea84412145c9d931f115e98f23566",
      "parents": [
        "a7aa7fb382416ff257ab352c3b9cf3d46da51f56"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 13 13:33:42 2019 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 13 16:52:52 2019 -0500"
      },
      "message": "Improve silence handling\n\nCopy the previous analysis data instead of flagging as invalid\n"
    },
    {
      "commit": "a7aa7fb382416ff257ab352c3b9cf3d46da51f56",
      "tree": "aabda719d0d2847c0538b880b317c6146030d938",
      "parents": [
        "843121b356685ff5a8c40211951f392f77f689cc"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 13 11:48:20 2019 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 13 13:51:08 2019 -0500"
      },
      "message": "Fixing initialization issues on small frame sizes\n"
    },
    {
      "commit": "843121b356685ff5a8c40211951f392f77f689cc",
      "tree": "f8896b370ce4e45f01ca4ca4b50b065a464b7888",
      "parents": [
        "0619d0848520ce2cd45ec3c9fc3a2c9743b4608e"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 12 19:33:26 2019 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 13 13:51:08 2019 -0500"
      },
      "message": "Fixes analysis buffering for silence and complexity changes\n\nThe previous code would go out of sync in those cases.\n"
    },
    {
      "commit": "0619d0848520ce2cd45ec3c9fc3a2c9743b4608e",
      "tree": "0fb136af327268babb161a21a074e3ecc836dc42",
      "parents": [
        "9f2a0c70d40442f3f05a575c4ea3e9eb1051a195"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 12 16:13:04 2019 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 12 16:13:04 2019 -0500"
      },
      "message": "Avoiding problems with x87\n\nlogE[b] can end up slightly larger than tonal-\u003ehighE[b] due to rounding\n"
    },
    {
      "commit": "9f2a0c70d40442f3f05a575c4ea3e9eb1051a195",
      "tree": "833416d2b80eb9538d84367cd27201865e60e1a5",
      "parents": [
        "f57908334a7b258b7e52ebdd23c910f0e4a19069"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 23 13:47:40 2019 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 23 13:48:31 2019 -0500"
      },
      "message": "Properly handle a bad stream_id in OPUS_MULTISTREAM_GET_*_STATE_REQUEST\n\nThanks to Dmitriy for reporting this.\n"
    },
    {
      "commit": "f57908334a7b258b7e52ebdd23c910f0e4a19069",
      "tree": "37d548480c0f56c549797472221704220c0de3ad",
      "parents": [
        "9b24723915525afcba589ce77a320ba8d24edeb0"
      ],
      "author": {
        "name": "evpobr",
        "email": "evpobr@gmail.com",
        "time": "Sun Jan 20 08:13:36 2019 +0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Jan 20 01:40:37 2019 -0500"
      },
      "message": "Fix FIXED_POINT conditional check\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "9b24723915525afcba589ce77a320ba8d24edeb0",
      "tree": "2f55c3f393a993ea5bcbc95f41009b829398761e",
      "parents": [
        "9791b22b2c83980f6b4386c870cad58557c78007"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sat Dec 29 15:51:16 2018 -0800"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sat Dec 29 15:55:18 2018 -0800"
      },
      "message": "Clean up resources in projection test\n"
    },
    {
      "commit": "9791b22b2c83980f6b4386c870cad58557c78007",
      "tree": "bbf1b402274cb2bc99fc4f8b5db72f042f5dc571",
      "parents": [
        "054acff3c142c147e3b5801a13347f04c56f0eb5"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Nov 22 14:06:34 2018 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Nov 22 14:06:34 2018 -0500"
      },
      "message": "Refactoring: Isolating the matrix-vector product in gemm_accum()\n"
    },
    {
      "commit": "054acff3c142c147e3b5801a13347f04c56f0eb5",
      "tree": "42291fe758accdfef1e673081c697e13774198ab",
      "parents": [
        "3ff7e1ae2d46ca325ee7cbbc14388ec138f4273f"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Nov 03 02:49:44 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Nov 03 02:49:44 2018 -0400"
      },
      "message": "missing script\n"
    },
    {
      "commit": "3ff7e1ae2d46ca325ee7cbbc14388ec138f4273f",
      "tree": "7ce7c13fb9bd60f98b41ccb8c1b494e2fac8de3c",
      "parents": [
        "59f8e5e4f8728391fde64eb56530f692fc6ce787"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Nov 03 02:39:15 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Nov 03 02:39:15 2018 -0400"
      },
      "message": "Adding the scripts used to train the RNN classifier\n\nSorry, no doc for now\n"
    },
    {
      "commit": "59f8e5e4f8728391fde64eb56530f692fc6ce787",
      "tree": "d0d5cc83f560c9730ed4a4a0eed6f6fda1d0dda6",
      "parents": [
        "55480908beebc07c91d26968e855f548bd7eea66"
      ],
      "author": {
        "name": "Janne Johansson",
        "email": "janne.johansson@safespring.com",
        "time": "Fri Oct 19 09:12:07 2018 +0200"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Oct 31 02:39:21 2018 -0400"
      },
      "message": "Trivial sprintf to snprintf conversion. Some linkers warn about unbounded sprintf calls.\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "55480908beebc07c91d26968e855f548bd7eea66",
      "tree": "ed837d1f39a0527587b541fc350f7edba1936f26",
      "parents": [
        "833d2f0ed7ccfa01d560bccec81d45153c5f3b79"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Oct 31 02:36:17 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Oct 31 02:36:17 2018 -0400"
      },
      "message": "Make float2int() static with VS\n\nAddresses the rest of https://github.com/xiph/opus/pull/79\n"
    },
    {
      "commit": "833d2f0ed7ccfa01d560bccec81d45153c5f3b79",
      "tree": "dbf6460aab27ea8e100e5ec9e8291af55148e8bf",
      "parents": [
        "befb83bab4a830aafcbd82c1aa70bae1e6f485bc"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 30 14:23:09 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 30 14:23:09 2018 -0400"
      },
      "message": "Remove useless OPUS_SET_EXPERT_FRAME_DURATION() on CELT\n\nframe diration is only handled at the Opus layer. There\u0027s no change\nin behaviour, just less puzzling code.\n\nThanks to Dmitriy \u003cdmilvdv@gmail.com\u003e for reporting this.\n"
    },
    {
      "commit": "befb83bab4a830aafcbd82c1aa70bae1e6f485bc",
      "tree": "2a27b942b8f7b67a1dfb4e7cb27151b0aa452d01",
      "parents": [
        "04e07d2f6360b593fe10bd308fcd5f62b349b28e"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 16 15:48:31 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 30 14:20:17 2018 -0400"
      },
      "message": "Fixes misleading initialization with not enough zeros\n"
    },
    {
      "commit": "04e07d2f6360b593fe10bd308fcd5f62b349b28e",
      "tree": "e438fa1a7226fe51d4faf3d59ce30ddcbb2acca6",
      "parents": [
        "83d5155f151ca47c9d6274ded1a7481f746b9a43"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 30 14:19:38 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 30 14:19:38 2018 -0400"
      },
      "message": "update checksums\n"
    },
    {
      "commit": "83d5155f151ca47c9d6274ded1a7481f746b9a43",
      "tree": "5f2ef33e94d17e04db576112d9e0d622dc0c7cdc",
      "parents": [
        "4d523a9fd2d6f525df2aeaf3d659616f9e610f32"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 16 19:44:13 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 16 19:44:13 2018 -0400"
      },
      "message": "Bump LT version numbers\n\nWe\u0027re adding the ambisonics API\n"
    },
    {
      "commit": "4d523a9fd2d6f525df2aeaf3d659616f9e610f32",
      "tree": "4b966777639a53d7c46c197ff79f516c96c86f93",
      "parents": [
        "aebc9046f9902e0c3f44d0d866261294592ea693"
      ],
      "author": {
        "name": "Pavel P",
        "email": "pavlov.pavel@gmail.com",
        "time": "Tue Feb 27 13:16:14 2018 -0800"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 16 15:59:48 2018 -0400"
      },
      "message": "Proper detection of _mm_cvtss_si32 for MS compiler\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "aebc9046f9902e0c3f44d0d866261294592ea693",
      "tree": "4dc3be91b7d2700a2de7bfd928f103309aacad38",
      "parents": [
        "a8e2a2b1a8ab2cb9d9e7d4fe21128ac9e769fe4e"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 16 15:57:04 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Oct 16 15:57:04 2018 -0400"
      },
      "message": "Renaming compute_allocation to clt_compute_allocation() to avoid symbol clashes\n\nAs suggested in https://github.com/xiph/opus/pull/83\n"
    },
    {
      "commit": "a8e2a2b1a8ab2cb9d9e7d4fe21128ac9e769fe4e",
      "tree": "c7d4ae16e50f6a8e08ef6af599579be9dc4b14fe",
      "parents": [
        "5d290239f110af41f1e29b63b8008b5016e23a63"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Sep 26 22:57:36 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Sep 26 22:57:36 2018 -0400"
      },
      "message": "Prevent the SILK counter from overflowing after 2 years and 9 months\n\nor \"just\" 1 year and 4 months for 10-ms frames.\nThe overflow can eventually cause a divide-by-zero when counter \u003d\u003d -16\n\nThanks to Dmitry Malinin for reporting the bug.\n"
    },
    {
      "commit": "5d290239f110af41f1e29b63b8008b5016e23a63",
      "tree": "e3cce23e4aceec9962cc12774fabd6b134e148dd",
      "parents": [
        "4a643d98c388727e73aebbe626a7379c6fddbbbe"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Sep 24 16:02:37 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Sep 25 13:05:04 2018 -0400"
      },
      "message": "Retrain RNN classifier weights to include reverberated speech\n"
    },
    {
      "commit": "4a643d98c388727e73aebbe626a7379c6fddbbbe",
      "tree": "37dc822e588dd4e9566696126103b477c02f2cc2",
      "parents": [
        "c6d977a966ccdb9ea684d8650cc6f8cccfedf8d7"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Sep 14 16:27:03 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Sep 14 16:27:03 2018 -0400"
      },
      "message": "Fixes packet parsing for 16-bit CPUs\n\nWithout that change, a very long (\u003e 682 ms) illegal packet could trigger\na wrap-around in the test and be accepted as valid.\n\nOnly 16-bit architectures (e.g. TI C5x) were affected.\n"
    },
    {
      "commit": "c6d977a966ccdb9ea684d8650cc6f8cccfedf8d7",
      "tree": "175fe4ff5c22c553be6877cc86c989eeaeeb3e34",
      "parents": [
        "f689e0522713f3267f3047fe7c8e36cd15cf4d38"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Sep 14 13:12:53 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Sep 14 13:13:13 2018 -0400"
      },
      "message": "Clarify configure --help\n"
    },
    {
      "commit": "f689e0522713f3267f3047fe7c8e36cd15cf4d38",
      "tree": "f7d4116310e8cc11302686d640498a3277ab3375",
      "parents": [
        "5cbd7d5f7d981385fb948a161a7cd5a0146d9039"
      ],
      "author": {
        "name": "Ralph Giles",
        "email": "giles@thaumas.net",
        "time": "Wed Sep 12 18:42:51 2018 -0700"
      },
      "committer": {
        "name": "Ralph Giles",
        "email": "giles@thaumas.net",
        "time": "Wed Sep 12 18:47:23 2018 -0700"
      },
      "message": "Update ISO Base Media Format draft to version 0.8.1.\n\n- Switch to \u0027Opus\u0027 file type identification.\n- Revise channel mapping to better support ambisonics.\n"
    },
    {
      "commit": "5cbd7d5f7d981385fb948a161a7cd5a0146d9039",
      "tree": "82b436925ebe44888b9bf3c34e5f8c311a57682c",
      "parents": [
        "eb55ebfc118fafd1f7bd7e91d7f2203c1e072860"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Sep 10 13:49:38 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Sep 10 13:49:38 2018 -0400"
      },
      "message": "Avoiding get_demixing_matrix() symbol clash on unified build\n"
    },
    {
      "commit": "eb55ebfc118fafd1f7bd7e91d7f2203c1e072860",
      "tree": "65efa961f2b9d08f878397048f23da205e5d473b",
      "parents": [
        "5d4db02f50b848645e7e0933feaab3e407a9e3b5"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Sep 10 13:30:35 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Sep 10 13:30:35 2018 -0400"
      },
      "message": "OpusMSDecoder does not have an arch field\n"
    },
    {
      "commit": "5d4db02f50b848645e7e0933feaab3e407a9e3b5",
      "tree": "5cfabaa0e1e864e34da4ed3dc7805f2b5cfc3f16",
      "parents": [
        "c2a6ac4e341f7224ef8e30ad4e1eee79a516e069"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Sep 06 18:14:38 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Sep 06 18:14:38 2018 -0400"
      },
      "message": "Add include/opus_projection.h to opus_headers.mk\n"
    },
    {
      "commit": "c2a6ac4e341f7224ef8e30ad4e1eee79a516e069",
      "tree": "ab2aeb73d59a646a34817f84108a52894f7bc334",
      "parents": [
        "38fca4a203a6759f2c90b86c84c4db087982ca81"
      ],
      "author": {
        "name": "Marcin Gorzel",
        "email": "gorzel@google.com",
        "time": "Thu Aug 30 13:15:21 2018 +0100"
      },
      "committer": {
        "name": "Felicia Lim",
        "email": "flim@google.com",
        "time": "Fri Aug 31 09:32:49 2018 -0700"
      },
      "message": "Apply equal bit allocation to ambisonic channels\n\nFixes issue #95 on GitHub.\n\nSigned-off-by: Felicia Lim \u003cflim@google.com\u003e\n"
    },
    {
      "commit": "38fca4a203a6759f2c90b86c84c4db087982ca81",
      "tree": "3426d211a93e0d242360be0e551a46277c4f6e76",
      "parents": [
        "dd6d6d523b4e7e51f2cfee725caf41cedeba1af2"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sat Jul 28 13:07:15 2018 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sat Jul 28 13:07:15 2018 -0700"
      },
      "message": "Work around VS2015 internal compiler error\n\nThe error was:\nc:\\projects\\opus\\celt\\celt_encoder.c(1019): fatal error C1001: An internal error has occurred in the compiler. [C:\\projects\\opus\\win32\\VS2015\\opus.vcxproj]\n  (compiler file \u0027f:\\dd\\vctools\\compiler\\utc\\src\\p2\\main.c\u0027, line 255)\n   To work around this problem, try simplifying or changing the program near the locations listed above.\n  Please choose the Technical Support command on the Visual C++\n   Help menu, or open the Technical Support help file for more information\n\n  Internal Compiler Error in C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\bin\\x86_amd64\\CL.exe.  You will be prompted to send an error report to Microsoft later.\n"
    },
    {
      "commit": "dd6d6d523b4e7e51f2cfee725caf41cedeba1af2",
      "tree": "72fbe175ef6cd7494ccc68ce7a2d8139317a26b1",
      "parents": [
        "6adfa708a0ecf8fdd83fe8da3322dc80e6dfb74e"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Jul 28 13:50:45 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Jul 28 13:55:01 2018 -0400"
      },
      "message": "Fixing arithmetic problems for 16-bit CPUs in ambisonics_rate_allocation()\n"
    },
    {
      "commit": "6adfa708a0ecf8fdd83fe8da3322dc80e6dfb74e",
      "tree": "9f08504d5951c0d9efa856bacc4cb69d6aeaf2a8",
      "parents": [
        "bc4ecf1917bf70f289b969ec048a6e0d3eecb5bd"
      ],
      "author": {
        "name": "Felicia Lim",
        "email": "flim@google.com",
        "time": "Fri Jul 27 18:10:05 2018 -0700"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Jul 28 13:55:01 2018 -0400"
      },
      "message": "Fix bitrate allocation for channel mapping 2\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "bc4ecf1917bf70f289b969ec048a6e0d3eecb5bd",
      "tree": "7fd6be8be18f4d6393350338776ef17a3f95f427",
      "parents": [
        "1f0c1b196fc69b373beccf55c40aefd230412bd6"
      ],
      "author": {
        "name": "Joshua Bowman",
        "email": "silverbacknet@gmail.com",
        "time": "Fri Jul 06 18:07:09 2018 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Thu Jul 26 19:07:26 2018 -0700"
      },
      "message": "win32: Add ambisonics sources to VS project\n\n[mark.hsj: Add other missing files and update filter file]\nSigned-off-by: Mark Harris \u003cmark.hsj@gmail.com\u003e\nFixes https://github.com/xiph/libopusenc/issues/9\nFixes https://github.com/xiph/opus-tools/issues/32\n"
    },
    {
      "commit": "1f0c1b196fc69b373beccf55c40aefd230412bd6",
      "tree": "9dc76fcf85b625730eb736321f36cb2bd6cd5c79",
      "parents": [
        "722a66b84becd0907f0bb4f6f80d17dbc04eb5e6"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 20:13:55 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 20:13:55 2018 -0400"
      },
      "message": "Fixes C90 \"mixed declarations and code\" error\n"
    },
    {
      "commit": "722a66b84becd0907f0bb4f6f80d17dbc04eb5e6",
      "tree": "69bb2a713f5f823204f5a144df56c5a3d1810f69",
      "parents": [
        "ac044500cc3ad39f9b0795cec08106124d705564"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 12:06:35 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 19:49:35 2018 -0400"
      },
      "message": "Remove ambisonics experimental flag\n"
    },
    {
      "commit": "ac044500cc3ad39f9b0795cec08106124d705564",
      "tree": "5c90104a40358e49e5156c558795c8385b3bf673",
      "parents": [
        "2c0061c19bad73f49cd3f47eea440fd7799dbd90"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jul 04 14:37:12 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 09:56:12 2018 -0400"
      },
      "message": "Enable ambisonics by default\n"
    },
    {
      "commit": "2c0061c19bad73f49cd3f47eea440fd7799dbd90",
      "tree": "3c74f685a9c16dca23aaf0130791a78284931db4",
      "parents": [
        "ea8b26ff85fe143428cef3222b04249e80ef13d2"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jul 04 14:36:53 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 01:01:33 2018 -0400"
      },
      "message": "Enable hardening by default\n"
    },
    {
      "commit": "ea8b26ff85fe143428cef3222b04249e80ef13d2",
      "tree": "cf17928a63fd9b24e3b24eb822c71279090c6d42",
      "parents": [
        "784d4ff92db4fca7fbdc71f4aff08956da1eeb8e"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jul 25 22:47:50 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 00:29:26 2018 -0400"
      },
      "message": "Fix comma that should have been a semicolon\n\nDidn\u0027t cause any problem, but still good to fix. Reported by\nkeithchugg on github.\n"
    },
    {
      "commit": "784d4ff92db4fca7fbdc71f4aff08956da1eeb8e",
      "tree": "4fb84ac455d975f601be1fa3fe728094fc0b99ed",
      "parents": [
        "6a74b411ec7fc864a62b179c1e4727176446773b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 00:19:11 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jul 26 00:19:11 2018 -0400"
      },
      "message": "oops\n"
    },
    {
      "commit": "6a74b411ec7fc864a62b179c1e4727176446773b",
      "tree": "bff5ab2e4dce1173b55904aa255701ba701e8f4d",
      "parents": [
        "1827db6a601e02729475c4618500f49f8b0cbefa"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Jun 15 16:52:14 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jul 25 22:41:14 2018 -0400"
      },
      "message": "Use ambisonics families 2 and 3 instead of 254 and 253\n"
    },
    {
      "commit": "1827db6a601e02729475c4618500f49f8b0cbefa",
      "tree": "f6cd3ed929a12b117e9766b314de108e95a00ad5",
      "parents": [
        "01b035f8ba4f48e9e1ad9f9407f77ce9a7e4aa44"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sat Jul 21 21:10:17 2018 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sat Jul 21 21:36:34 2018 -0700"
      },
      "message": "Validate multistream/projection decoder frame_size\n"
    },
    {
      "commit": "01b035f8ba4f48e9e1ad9f9407f77ce9a7e4aa44",
      "tree": "650ba740211d9f62460076d6fea50c29d839758e",
      "parents": [
        "c1c247d7e715100a50ca185948c7336bdd4dfdba"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sat Jul 21 17:55:24 2018 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sat Jul 21 21:35:39 2018 -0700"
      },
      "message": "Silence compiler warnings\n\nclang -Wcast-align warnings with ambisonics enabled\nclang -Wnull-pointer-arithmetic warnings in test_opus_api.c\ngcc -Wimplicit-fallthrough warnings on arm\nmsvc warning C4244 in celt_encoder.c with fixed point\n"
    },
    {
      "commit": "c1c247d7e715100a50ca185948c7336bdd4dfdba",
      "tree": "72fb2842f28cc86fea4ca3a90524cd803dd1919a",
      "parents": [
        "16160ac68c8296f695c49c9847221608b084b5f9"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jun 14 13:22:48 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jun 14 13:22:48 2018 -0400"
      },
      "message": "Make bandwidth detection more conservative to avoid low-passing frames\n"
    },
    {
      "commit": "16160ac68c8296f695c49c9847221608b084b5f9",
      "tree": "6c00ef2415659c0b7610e9953a85089070578ada",
      "parents": [
        "693098f6ee1783ec1f0d0390ddcb4f96663bf088"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Jun 01 15:54:56 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Jun 01 15:54:56 2018 -0400"
      },
      "message": "update checksums\n"
    },
    {
      "commit": "693098f6ee1783ec1f0d0390ddcb4f96663bf088",
      "tree": "99b8c266740bd8965483d438f69f3c8a6de70f5e",
      "parents": [
        "d5a8136218977ef1bdcadb2c883b96106755654d"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue May 29 00:35:02 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue May 29 00:35:02 2018 -0400"
      },
      "message": "Avoiding arithmetic on NULL pointer\n\nCauses a warning with -Wnull-pointer-arithmetic and the code wasn\u0027t doing\nanything anyway (the ctl call ignores NULLs)\n"
    },
    {
      "commit": "d5a8136218977ef1bdcadb2c883b96106755654d",
      "tree": "55b7990d1e4db828b81fc60cac691ee40c925a2b",
      "parents": [
        "d6ae25a8be0548626433aad7d6d577636231a251"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue May 29 00:28:50 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue May 29 00:30:20 2018 -0400"
      },
      "message": "Avoiding leaks when opus_demo exits with an error\n\nThis gets rid of false positives in static analysis\n(see https://trac.webkit.org/changeset/232236/webkit)\n"
    },
    {
      "commit": "d6ae25a8be0548626433aad7d6d577636231a251",
      "tree": "37cdc530d559b05109710f44b26d0365336bd9c1",
      "parents": [
        "697beca22dcdf04ee7720218741f34a7ec0bb86d"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Mon May 28 01:09:09 2018 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Mon May 28 01:09:09 2018 -0700"
      },
      "message": "Fix DISABLE_FLOAT_API unused parameter warning\n"
    },
    {
      "commit": "697beca22dcdf04ee7720218741f34a7ec0bb86d",
      "tree": "03719e79d91088cae878a375cc313fb15e89fb33",
      "parents": [
        "287cb030ab8a59dcecbb7ab8ea689f6dd5eb38b8"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sun May 27 17:47:28 2018 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Mon May 28 00:37:54 2018 -0700"
      },
      "message": "Only call isqrt32() with a positive argument\n\nFixes test_opus_projection failure under ubsan, due to clz(0).\n"
    },
    {
      "commit": "287cb030ab8a59dcecbb7ab8ea689f6dd5eb38b8",
      "tree": "54342924de3d64f139224985e0249134e0bb0b42",
      "parents": [
        "ed7283089cd1b6e8e3913bcfa310647a7797c288"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu May 24 13:15:39 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu May 24 13:15:39 2018 -0400"
      },
      "message": "Switch from narrowband to wideband at 9 kb/s, don\u0027t use mediumband\n"
    },
    {
      "commit": "ed7283089cd1b6e8e3913bcfa310647a7797c288",
      "tree": "71713c7d6334d4c553917b63cd3be528e21e6bfb",
      "parents": [
        "cd78f3976ea44797a10486592880511227d31594"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu May 24 02:36:30 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu May 24 02:36:30 2018 -0400"
      },
      "message": "Fix decision thresholds for larger frame sizes\n\nDon\u0027t assume that frames larger than 20 ms save any overhead compared to 20 ms.\n"
    },
    {
      "commit": "cd78f3976ea44797a10486592880511227d31594",
      "tree": "aad956862b87d31e34b39bfe83a73b549af88a7c",
      "parents": [
        "85ce87ffbe8b30247f62bf2868d28ef75468aec9"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed May 23 16:59:23 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu May 24 02:29:11 2018 -0400"
      },
      "message": "Fixes a SILK bandwidth switching regression\n\nThe bug was triggered because f982b84d started using prefill for\nSILK bandwidth changes, which reinitialized the encoder state and\nprevented the variable lowpass from working properly. To fix the problem,\nwe preserve the sampling rate and variable low-pass when prefilling.\n"
    },
    {
      "commit": "85ce87ffbe8b30247f62bf2868d28ef75468aec9",
      "tree": "2aed61354bdef87f288d49fbb636573231fd3f92",
      "parents": [
        "004ef8b9b1771688cd514cdb1c9f466913e3a355"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed May 16 20:05:47 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu May 17 17:09:28 2018 -0400"
      },
      "message": "Improving rate control for low bitrate\n\nUsing a finer table for the rate to SNR curves in silk_control_SNR().\nIt\u0027s now possible to have an SNR that reaches 0, so we can lower bitrate\ndown to ~5 kbps for narrowband and 5.5 kbps for wideband.\n"
    },
    {
      "commit": "004ef8b9b1771688cd514cdb1c9f466913e3a355",
      "tree": "d6a0f6102b777eaeba611c9cb15bc2bc8d167b66",
      "parents": [
        "652c4559f593d3aad78bd5c85a216eeae7859429"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu May 17 15:26:19 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu May 17 15:26:19 2018 -0400"
      },
      "message": "Oops, fix NaN test\n"
    },
    {
      "commit": "652c4559f593d3aad78bd5c85a216eeae7859429",
      "tree": "c8d4b6b4780badfddf343cea7305d270213c8e3d",
      "parents": [
        "42f43db7e470dec8c7a40c86180d6a07241c3577"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue May 15 15:36:33 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue May 15 15:36:33 2018 -0400"
      },
      "message": "Aborting on NaN in CELT\n\nNaNs should be filtered at the Opus layer, so if there are any in the CELT\nencoder, then it\u0027s likely something went horribly wrong (e.g. corrupted state).\nIn that case, better abort than have something bad happen.\n"
    },
    {
      "commit": "42f43db7e470dec8c7a40c86180d6a07241c3577",
      "tree": "39db3088e1693763e3e7d57fecff3df1aff8778a",
      "parents": [
        "1b5844678cde315bd2d67f0e8233d15cc83b001d"
      ],
      "author": {
        "name": "Gustaf Ullberg",
        "email": "gustaf.ullberg@gmail.com",
        "time": "Tue Apr 10 13:37:49 2018 +0200"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon May 14 13:55:39 2018 -0400"
      },
      "message": "Silk makes use of Opus VAD\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "1b5844678cde315bd2d67f0e8233d15cc83b001d",
      "tree": "741d845a18d4993f029308ad57394f215994503b",
      "parents": [
        "19966ccd4b743026d895c179ede04d436f65eca0"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sun May 06 20:31:30 2018 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Sun May 06 20:31:30 2018 -0700"
      },
      "message": "README: Update to reflect RFC 7845 and 8251\n"
    },
    {
      "commit": "19966ccd4b743026d895c179ede04d436f65eca0",
      "tree": "d212b0c1064666138869d6cb36b00ab0ff643d3a",
      "parents": [
        "d01199be4cf3257478bd04ed028e3c589d306215"
      ],
      "author": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Thu May 03 22:55:54 2018 -0700"
      },
      "committer": {
        "name": "Mark Harris",
        "email": "mark.hsj@gmail.com",
        "time": "Thu May 03 23:02:49 2018 -0700"
      },
      "message": "Fix opus_packet_parse() non-null arg attribute\n\nIt is the size array that must be non-null.\n"
    },
    {
      "commit": "d01199be4cf3257478bd04ed028e3c589d306215",
      "tree": "8ffd1ef77e970e38659893caca2eb815ef604021",
      "parents": [
        "f0cea0d23767cd1dab1dd902622aeb7efa53b669"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 03:54:21 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:28 2018 -0400"
      },
      "message": "two more asserts I forgot\n"
    },
    {
      "commit": "f0cea0d23767cd1dab1dd902622aeb7efa53b669",
      "tree": "895d90e2e38cf374876fdfd45de4cd837bfb466b",
      "parents": [
        "2b249dda9a184188dc713043bdc9a367e9d1c034"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Mar 26 13:48:39 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:28 2018 -0400"
      },
      "message": "Misc assertion cleanup\n"
    },
    {
      "commit": "2b249dda9a184188dc713043bdc9a367e9d1c034",
      "tree": "43a8b7292e647c65d8088ec1d3ef8494358d7bba",
      "parents": [
        "909f1ceb5dae0f6ba0ebb16958f0819124b95d90"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Mar 26 12:54:38 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:27 2018 -0400"
      },
      "message": "Harden SILK x86 code\n"
    },
    {
      "commit": "909f1ceb5dae0f6ba0ebb16958f0819124b95d90",
      "tree": "20be5571d76760bb350f1d1586a440e1b29478ec",
      "parents": [
        "e69fc1995efb6ed9baa1d30bdac12dc37a06f62c"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Mar 26 12:46:47 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:27 2018 -0400"
      },
      "message": "Hardening silk/fixed\n"
    },
    {
      "commit": "e69fc1995efb6ed9baa1d30bdac12dc37a06f62c",
      "tree": "096280a5f123ae3b6e77663a12169373a4a1c27f",
      "parents": [
        "7e3352ef517379c9ab42a2416b444882ff86aec6"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Mar 26 03:23:09 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:27 2018 -0400"
      },
      "message": "Hardening asserts for SILK float\n"
    },
    {
      "commit": "7e3352ef517379c9ab42a2416b444882ff86aec6",
      "tree": "0d53c0120e5225689563dc4cf7cd1632df6cabbb",
      "parents": [
        "69bcb28d3ddb20231580bd09e44d87a769dabcb7"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 24 02:16:15 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:27 2018 -0400"
      },
      "message": "Converting some silk_assert()s into hardening celt_assert()s\n\nOnly converted the ones that are really sure (not signal-dependent)\nand that shouldn\u0027t add much run-time complexity\n"
    },
    {
      "commit": "69bcb28d3ddb20231580bd09e44d87a769dabcb7",
      "tree": "2f77881efd1abd40ede3db650fd20a5bef6b1df3",
      "parents": [
        "3995a0c150511572280170280a348fab575edbe7"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 23 16:13:59 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:27 2018 -0400"
      },
      "message": "Some missing checks\n"
    },
    {
      "commit": "3995a0c150511572280170280a348fab575edbe7",
      "tree": "af279be0813dc8a8d852a4cb3b3e507f35e323e4",
      "parents": [
        "a29504cca7ba43d63dee26e7b0875f314364c9dd"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 23 14:29:11 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:26 2018 -0400"
      },
      "message": "Adding multistream decoder validation\n"
    },
    {
      "commit": "a29504cca7ba43d63dee26e7b0875f314364c9dd",
      "tree": "8b3fe5ae227f3113faefdb47f7f9ffc66f2dd94e",
      "parents": [
        "bf1d4420c25b515842c78be88898004cc28a34e9"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 23 13:25:01 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:26 2018 -0400"
      },
      "message": "Asserting on some ctl() calls that should never fail\n"
    },
    {
      "commit": "bf1d4420c25b515842c78be88898004cc28a34e9",
      "tree": "558e1ad340e9e5418942cedf6879a30eb521a9a1",
      "parents": [
        "574d50cb572466f6391cee55781d7aa5900ca249"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 23 13:04:13 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:26 2018 -0400"
      },
      "message": "Adds Opus decoder state validation\n"
    },
    {
      "commit": "574d50cb572466f6391cee55781d7aa5900ca249",
      "tree": "2b56a03bd796e6bb7c4ecb32f829dad838bf8abe",
      "parents": [
        "92ffce621df6ace95267ac8c13aa0d862f6a476b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 23 03:16:33 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:26 2018 -0400"
      },
      "message": "Adding decoder state validation\n"
    },
    {
      "commit": "92ffce621df6ace95267ac8c13aa0d862f6a476b",
      "tree": "7302ccce9da008625a9b64c49e869d1ee12c7fab",
      "parents": [
        "ef203135b49eb37327fb6884c272108fef485e0d"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 23 12:13:30 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:26 2018 -0400"
      },
      "message": "Fixing no-redundancy CELT-\u003eSILK and CELT-\u003ehybrid transitions\n\nWe make sure the CELT PLC we do in the transition uses the same bandwidth\nas the previous (CELT) packet and not the new bandwidth\n"
    },
    {
      "commit": "ef203135b49eb37327fb6884c272108fef485e0d",
      "tree": "512145c932ab2cbb1f1158b986091b9b6ca52bf0",
      "parents": [
        "9b092dd388a98f8ceb8ec703fe2b757e88e96ec0"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Mar 22 17:40:35 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Mar 27 15:13:25 2018 -0400"
      },
      "message": "Adding ENABLE_HARDENING\n\nEnables \"safes\" assertions even with ENABLE_ASSERTIONS isn\u0027t set\n"
    },
    {
      "commit": "9b092dd388a98f8ceb8ec703fe2b757e88e96ec0",
      "tree": "9450b8c19a05df1ca6286c9fc56c592a34c52e3c",
      "parents": [
        "a4b5282f94deea91e4e5271d7ff7f72a8d1f9b6b"
      ],
      "author": {
        "name": "Andrew Allen",
        "email": "bitllama@google.com",
        "time": "Mon Mar 19 14:55:24 2018 -0700"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Mar 21 13:59:30 2018 -0400"
      },
      "message": "Support for Ambisonics.\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "a4b5282f94deea91e4e5271d7ff7f72a8d1f9b6b",
      "tree": "43492d547fc9a62038e740f885ddd69c73cf510e",
      "parents": [
        "e1c0770a49f5aad8053c204bb11c7c552020b684"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Mar 12 11:39:08 2018 -0400"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Mar 12 12:01:45 2018 -0400"
      },
      "message": "Using a first-order filter for DC rejection\n\nA second-order DC rejection filter is uselsss unless we have complex\npoles. However, complex poles means we have to compute the filter as a\nsingle pass (rather than two casdaded first-order filters), which has\nnumerical issues that would require a higher complexity to solve.\nSo rather than waste cycles with a second-order filter (with a longer\nimpulse response), we just go with a first-order filter.\n"
    },
    {
      "commit": "e1c0770a49f5aad8053c204bb11c7c552020b684",
      "tree": "5f37d2bfaad9199783bbc8f9a334be321c5cfcd3",
      "parents": [
        "610c14ce80ad1a6754a9e2743e6799cf45a093c5"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 02 15:08:21 2018 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 02 15:08:21 2018 -0500"
      },
      "message": "Don\u0027t enable -fstack-protector-strong on Windows for now\n\nIt adds a libssp-0.dll dependency and prevents static linking\n"
    },
    {
      "commit": "610c14ce80ad1a6754a9e2743e6799cf45a093c5",
      "tree": "b2f0bbca15a6041e7deff812a7648e5ad8a5dde0",
      "parents": [
        "cea38f1c8c8ff58efa328e4ef5b26818d1b9e707"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 17:18:57 2018 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 17:18:57 2018 -0500"
      },
      "message": "Adding -D_FORTIFY_SOURCE\u003d2 when possible\n"
    },
    {
      "commit": "cea38f1c8c8ff58efa328e4ef5b26818d1b9e707",
      "tree": "e26f009867e94b85229983be71e850d10dc69a4d",
      "parents": [
        "76d966f4361f5d7417ca40481ca53ca6fe6d4cb5"
      ],
      "author": {
        "name": "Gustaf Ullberg",
        "email": "gustaf.ullberg@gmail.com",
        "time": "Wed Nov 22 11:38:18 2017 +0100"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 16:33:05 2018 -0500"
      },
      "message": "Fixed off-by-one issue in Silk DTX\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "76d966f4361f5d7417ca40481ca53ca6fe6d4cb5",
      "tree": "aaab64a8ff1006bd4e45e0f12a15a09b26979777",
      "parents": [
        "e3e1f89029a997e1b58f03c38f43352a85861c6a"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 14:51:52 2018 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 15:51:25 2018 -0500"
      },
      "message": "Enable -fstack-protector-strong by default on x86\n\nThe size overhead seems to be about 1% and the speed overhead is\n\"in the noise\" (\u003c2%).\nThe automake code is copied from opus-tools\n"
    },
    {
      "commit": "e3e1f89029a997e1b58f03c38f43352a85861c6a",
      "tree": "7d4b83625ef99235d35e7a698ac9a5c89d3aadaf",
      "parents": [
        "59b1a521f4909f959e6968c14dc7e618d0df461b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 21 03:15:52 2018 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 21 03:15:52 2018 -0500"
      },
      "message": "Fix comment to take into account previous commit\n"
    },
    {
      "commit": "59b1a521f4909f959e6968c14dc7e618d0df461b",
      "tree": "2d8d61f0bc3d7a61988160d26ff6ae88fb813de1",
      "parents": [
        "475fa4a98c7f4be57e507f55a37ef3fce79692a6"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 21 01:33:59 2018 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 21 01:39:40 2018 -0500"
      },
      "message": "Increasing the CELT bit allocation slightly for stereo hybrid\n\nFixes a \"regression\" from 1.2 to 1.3-beta that was especially noticeable\non a Korean speech sample. (it wasn\u0027t a real regression since 1.2 only\nworked because it was using CELT)\n"
    },
    {
      "commit": "475fa4a98c7f4be57e507f55a37ef3fce79692a6",
      "tree": "134a6553c015179c05c567e02ca6e36dd14662de",
      "parents": [
        "4b6af2da93379da6ea4778889d678ee6cea964d8"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 01:54:33 2018 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 02:07:18 2018 -0500"
      },
      "message": "Fix divide-by-zeros in opus_demo stats code\n"
    },
    {
      "commit": "4b6af2da93379da6ea4778889d678ee6cea964d8",
      "tree": "7f9b7436148fe8cf2fe7731a9e8bbc2edc34829e",
      "parents": [
        "4503261d0f055a4a2ba7bd1c05035a5759912857"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 12:36:44 2018 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 18 02:17:07 2018 -0500"
      },
      "message": "Fixes integer overflow in SILK VAD for 10-ms frames\n\nReported by Chandrakala Madhira on the mailing list\n"
    }
  ],
  "next": "4503261d0f055a4a2ba7bd1c05035a5759912857"
}
