)]}'
{
  "log": [
    {
      "commit": "5de2e3b836f6d2980acb3b4ef33b208220daa3c0",
      "tree": "bcb55ab5278aa0b00469e5710cffa1da96af62e1",
      "parents": [
        "a58d3d2adb790c104798cd88c8a3aff4fa8b82cc",
        "6d3f60d1b73eba3d5f06472c15218f7b03c28729"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Mon Jan 27 11:28:42 2025 -0800"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jan 27 11:28:42 2025 -0800"
      },
      "message": "Modify apex_available to Bluetooth apex am: 6d3f60d1b7\n\nOriginal change: https://android-review.googlesource.com/c/platform/external/libopus/+/3446448\n\nChange-Id: I653adddeff735969d54e51fa7b85440369b7385f\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "6d3f60d1b73eba3d5f06472c15218f7b03c28729",
      "tree": "bcb55ab5278aa0b00469e5710cffa1da96af62e1",
      "parents": [
        "a58d3d2adb790c104798cd88c8a3aff4fa8b82cc"
      ],
      "author": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Thu Jan 09 14:37:49 2025 -0800"
      },
      "committer": {
        "name": "William Escande",
        "email": "wescande@google.com",
        "time": "Thu Jan 09 14:37:49 2025 -0800"
      },
      "message": "Modify apex_available to Bluetooth apex\n\nBluetooth apex name has changed from com.android.btservices to\ncom.android.bt. We now need to update the reference in the code.\n\nUpdating apex_available in bp and other reference from within the code\n\nBug: 383863941\nFlag: Exempt build infra\nTest: m .\nChange-Id: I5f9c7ecab529ce991d83fdd292865b5cfeea1693\n"
    },
    {
      "commit": "a58d3d2adb790c104798cd88c8a3aff4fa8b82cc",
      "tree": "32a744221041e4214868bf4ef93ccd4ce0dcee7c",
      "parents": [
        "e6364bd2fb4cf6506a2994ba13f93f96725e7f92",
        "5ba9953ee4045966d61fe4b65a307fb80679bbd8"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Apr 29 23:13:05 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Apr 29 23:13:05 2024 +0000"
      },
      "message": "[automerger skipped] Empty merge of Android 24Q2 Release (ab/11526283) to aosp-main-future am: 5ba9953ee4 -s ours\n\nam skip reason: Merged-In I16962a2f06d1f899d9456979bd1421a0096f6149 with SHA-1 451afe3f7a is already in history\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/external/libopus/+/27144952\n\nChange-Id: I5be5c63165924f388d03dcd080eb988ae8ffe7a7\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "5ba9953ee4045966d61fe4b65a307fb80679bbd8",
      "tree": "32a744221041e4214868bf4ef93ccd4ce0dcee7c",
      "parents": [
        "451afe3f7a8d9f681af9555560b07d6a16be0701",
        "57b21234d940d58d8da68c493f3ddc02b72ad1e0"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Apr 29 11:50:00 2024 -0700"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Mon Apr 29 11:50:00 2024 -0700"
      },
      "message": "Empty merge of Android 24Q2 Release (ab/11526283) to aosp-main-future\n\nBug: 337098550\nMerged-In: I16962a2f06d1f899d9456979bd1421a0096f6149\nChange-Id: If678f862b2c40141bc610860e5e4ac251e7ae002\n"
    },
    {
      "commit": "e6364bd2fb4cf6506a2994ba13f93f96725e7f92",
      "tree": "32a744221041e4214868bf4ef93ccd4ce0dcee7c",
      "parents": [
        "574a12e90929dbe1db7d44fbd2f95fab1385809c",
        "451afe3f7a8d9f681af9555560b07d6a16be0701"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 26 23:26:00 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 26 23:26:00 2024 +0000"
      },
      "message": "Remove useless `neon:` clause. am: 563d9f467c am: 451afe3f7a\n\nOriginal change: https://android-review.googlesource.com/c/platform/external/libopus/+/3009573\n\nChange-Id: I508a9e48ee532b048f3800e8b050f5c42bc6ae70\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "451afe3f7a8d9f681af9555560b07d6a16be0701",
      "tree": "32a744221041e4214868bf4ef93ccd4ce0dcee7c",
      "parents": [
        "76c1ae14b451be8f3c41e465173562eb5ccb7409",
        "563d9f467ca9381e21ad5c432709b81ccf93b080"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 26 23:10:54 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 26 23:10:54 2024 +0000"
      },
      "message": "Remove useless `neon:` clause. am: 563d9f467c\n\nOriginal change: https://android-review.googlesource.com/c/platform/external/libopus/+/3009573\n\nChange-Id: I16962a2f06d1f899d9456979bd1421a0096f6149\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "563d9f467ca9381e21ad5c432709b81ccf93b080",
      "tree": "32a744221041e4214868bf4ef93ccd4ce0dcee7c",
      "parents": [
        "d94ff5d9d3087b9d4e77bcca09e0cd04422d14dc"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 26 14:47:38 2024 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 26 14:47:38 2024 +0000"
      },
      "message": "Remove useless `neon:` clause.\n\nThe OS has been neon-only for many years now.\n\nChange-Id: Iee179508b70c4c8eebaf1ba9e67db1688ba73d4b\n"
    },
    {
      "commit": "574a12e90929dbe1db7d44fbd2f95fab1385809c",
      "tree": "d9d7fa8d9bad205b5b4c103235a90a49cc8d2da7",
      "parents": [
        "3b84f0818ad2f0ddd2918dd5f0db897e730c8204",
        "76c1ae14b451be8f3c41e465173562eb5ccb7409"
      ],
      "author": {
        "name": "Rakesh Kumar",
        "email": "rakesh.kumar@ittiam.com",
        "time": "Wed Mar 20 13:58:58 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 20 13:58:58 2024 +0000"
      },
      "message": "libopus: Ignore integer overflows in celt_decode_with_ec_dred am: d94ff5d9d3 am: 76c1ae14b4\n\nOriginal change: https://android-review.googlesource.com/c/platform/external/libopus/+/3003163\n\nChange-Id: Idb40c155acad22897cebbf88768103982ab13032\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "76c1ae14b451be8f3c41e465173562eb5ccb7409",
      "tree": "d9d7fa8d9bad205b5b4c103235a90a49cc8d2da7",
      "parents": [
        "571ac43bb97f89fcf4cba732c896972360220360",
        "d94ff5d9d3087b9d4e77bcca09e0cd04422d14dc"
      ],
      "author": {
        "name": "Rakesh Kumar",
        "email": "rakesh.kumar@ittiam.com",
        "time": "Wed Mar 20 13:40:46 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 20 13:40:46 2024 +0000"
      },
      "message": "libopus: Ignore integer overflows in celt_decode_with_ec_dred am: d94ff5d9d3\n\nOriginal change: https://android-review.googlesource.com/c/platform/external/libopus/+/3003163\n\nChange-Id: I8114cd5e6e14da0497656c1a91e39935dee40092\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "d94ff5d9d3087b9d4e77bcca09e0cd04422d14dc",
      "tree": "d9d7fa8d9bad205b5b4c103235a90a49cc8d2da7",
      "parents": [
        "15c162f4666fec92509f7c8ea62308e2234a6067"
      ],
      "author": {
        "name": "Rakesh Kumar",
        "email": "rakesh.kumar@ittiam.com",
        "time": "Mon Mar 18 18:33:02 2024 +0530"
      },
      "committer": {
        "name": "Rakesh Kumar",
        "email": "rakesh.kumar@ittiam.com",
        "time": "Wed Mar 20 06:53:48 2024 +0530"
      },
      "message": "libopus: Ignore integer overflows in celt_decode_with_ec_dred\n\nBug: 329570744\nBug: 329623119\nBug: 329621409\n\nTest: POC in bug descriptions\nChange-Id: Ic0774cbf61e5c09f25963928997b46af25bf756d\n"
    },
    {
      "commit": "3b84f0818ad2f0ddd2918dd5f0db897e730c8204",
      "tree": "9f47d34cae17b90863bad0b94e6c9b3edd7b2b39",
      "parents": [
        "57b21234d940d58d8da68c493f3ddc02b72ad1e0",
        "571ac43bb97f89fcf4cba732c896972360220360"
      ],
      "author": {
        "name": "Sadaf Ebrahimi",
        "email": "sadafebrahimi@google.com",
        "time": "Wed Mar 13 16:55:11 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 13 16:55:11 2024 +0000"
      },
      "message": "Upgrade libopus to v1.5 am: 15c162f466 am: 571ac43bb9\n\nOriginal change: https://android-review.googlesource.com/c/platform/external/libopus/+/3001676\n\nChange-Id: I6e20c2bfe62061a2007985974f8af196008be165\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "571ac43bb97f89fcf4cba732c896972360220360",
      "tree": "9f47d34cae17b90863bad0b94e6c9b3edd7b2b39",
      "parents": [
        "e42fff9d341bc5cc34c7d9dfa1950fd97f7ff77b",
        "15c162f4666fec92509f7c8ea62308e2234a6067"
      ],
      "author": {
        "name": "Sadaf Ebrahimi",
        "email": "sadafebrahimi@google.com",
        "time": "Wed Mar 13 16:34:23 2024 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 13 16:34:23 2024 +0000"
      },
      "message": "Upgrade libopus to v1.5 am: 15c162f466\n\nOriginal change: https://android-review.googlesource.com/c/platform/external/libopus/+/3001676\n\nChange-Id: I3516c81bb208d015e200d1c980fc4fae94136292\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "15c162f4666fec92509f7c8ea62308e2234a6067",
      "tree": "9f47d34cae17b90863bad0b94e6c9b3edd7b2b39",
      "parents": [
        "e42fff9d341bc5cc34c7d9dfa1950fd97f7ff77b",
        "23d4b31de15a723716f9fde5ec736773f2e1aa2e"
      ],
      "author": {
        "name": "Sadaf Ebrahimi",
        "email": "sadafebrahimi@google.com",
        "time": "Tue Mar 12 17:24:49 2024 +0000"
      },
      "committer": {
        "name": "Sadaf Ebrahimi",
        "email": "sadafebrahimi@google.com",
        "time": "Tue Mar 12 17:39:01 2024 +0000"
      },
      "message": "Upgrade libopus to v1.5\n\nThis project was upgraded with external_updater.\nUsage: tools/external_updater/updater.sh update external/libopus\nFor more info, check https://cs.android.com/android/platform/superproject/+/main:tools/external_updater/README.md\n\nTest: TreeHugger\nChange-Id: I5e8ccb33e729bd87984107ac9fc99987d8ff79f4\n"
    },
    {
      "commit": "23d4b31de15a723716f9fde5ec736773f2e1aa2e",
      "tree": "cdfefed8624a9ff24bf9724de0b40d39c42adbb4",
      "parents": [
        "1bb6d7899721f387255c62b12b2abf64f81a55ce"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Mar 04 01:42:20 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Mar 04 01:42:20 2024 -0500"
      },
      "message": "Fix opus_demo -e/-d with weights blob\n"
    },
    {
      "commit": "1bb6d7899721f387255c62b12b2abf64f81a55ce",
      "tree": "b3111f41a05e0bb202ad69c38d8c5ce640643b6f",
      "parents": [
        "0ff629bf9706b016c0622a188ed8710b7a051cab"
      ],
      "author": {
        "name": "Sid Rao",
        "email": "srao@positronnetworks.com",
        "time": "Sun Mar 03 18:31:32 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 18:31:32 2024 -0500"
      },
      "message": "Update README for 1.5\n"
    },
    {
      "commit": "0ff629bf9706b016c0622a188ed8710b7a051cab",
      "tree": "8406e8fa8a210ffdab4830e1d905fad82aa2fec8",
      "parents": [
        "4eca11c001294a2495f405773795b6d919605ca5"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 13:16:49 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 13:16:49 2024 -0500"
      },
      "message": "Fix configure help for --enable-osce\n"
    },
    {
      "commit": "4eca11c001294a2495f405773795b6d919605ca5",
      "tree": "8d1067d0c558a0c8bed0b455d6b5afdd796d20c1",
      "parents": [
        "32d4d874accd322f7e237b734678542fea88393b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 02:55:37 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 02:55:37 2024 -0500"
      },
      "message": "Avoid OSCE crash if weights aren\u0027t loaded\n"
    },
    {
      "commit": "32d4d874accd322f7e237b734678542fea88393b",
      "tree": "7b85a42ba733ad39ceb7f833cd0305364d3794d0",
      "parents": [
        "33a89b7ea8db4d9a6fcc802aa85264e13a4ebbaf"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 02:45:39 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 02:45:39 2024 -0500"
      },
      "message": "Basic void pointer check\n\nOnly manage to warn on non-pointers\n"
    },
    {
      "commit": "33a89b7ea8db4d9a6fcc802aa85264e13a4ebbaf",
      "tree": "b3a442be46892c9bf489ad3c983a9a287978d857",
      "parents": [
        "c9276272abc65b2a06d13d1b351d2c52417270d9"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 00:14:55 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Mar 03 00:30:30 2024 -0500"
      },
      "message": "Add checks when loading blob data\n"
    },
    {
      "commit": "c9276272abc65b2a06d13d1b351d2c52417270d9",
      "tree": "ec22d1f8f4f72afc3bf028c13cc0a447547fdf60",
      "parents": [
        "efeaa8aef8ba3a29fbba04908ce61ebb8e225fd1"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 17:38:03 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 17:38:03 2024 -0500"
      },
      "message": "missing newlines\n"
    },
    {
      "commit": "efeaa8aef8ba3a29fbba04908ce61ebb8e225fd1",
      "tree": "525f5210144aa3bd1686b24b979bf4cb01cb0b1f",
      "parents": [
        "24b7eab4a30bd4fb3769fc532ab0d8af379c255d"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 17:36:09 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 17:36:09 2024 -0500"
      },
      "message": "Make weights blob a void*\n"
    },
    {
      "commit": "24b7eab4a30bd4fb3769fc532ab0d8af379c255d",
      "tree": "b0b61d7c85787216f11dca639c54405c303cfb25",
      "parents": [
        "b4ff554268a6edaf154f01c646ae528cab0dcd58"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 14:42:07 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 15:05:45 2024 -0500"
      },
      "message": "Bump LT version\n\nMany new features, API still compatible\n"
    },
    {
      "commit": "b4ff554268a6edaf154f01c646ae528cab0dcd58",
      "tree": "a2306b4b19c61b46656a3a7600c71df104d4e323",
      "parents": [
        "1f5189a50a41a07ebc15f0d3423ef236de9f9893"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 15:04:20 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 15:05:45 2024 -0500"
      },
      "message": "Fix conversion warnings\n"
    },
    {
      "commit": "1f5189a50a41a07ebc15f0d3423ef236de9f9893",
      "tree": "1648de3c6d00f9ce6222f4bc1e0c51466274a130",
      "parents": [
        "6880cddec1a48c018511820929ad9d11ae23105a"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 14:38:34 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 14:38:34 2024 -0500"
      },
      "message": "Actually use RTCD in the PLC feature prediction\n"
    },
    {
      "commit": "6880cddec1a48c018511820929ad9d11ae23105a",
      "tree": "b2b14b83745d76c851f5710da1c0e4738559785e",
      "parents": [
        "ab2ab570946e5d15b16491219f23a05446f628c3"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 00:33:48 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Mar 02 00:33:48 2024 -0500"
      },
      "message": "Fix clang alignment warning\n"
    },
    {
      "commit": "ab2ab570946e5d15b16491219f23a05446f628c3",
      "tree": "0a6c853510477c2e1d7717260f90e6dbc90a160a",
      "parents": [
        "5c8576383b7613dc8ff3d69dd435e56811da82ed"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 23:49:29 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 23:49:29 2024 -0500"
      },
      "message": "Fix NaN in Deep PLC\n\nsilk_burg_analysis() could return a slightly negative value on zero\ninput, which would cause a negative, which the log didn\u0027t like.\n"
    },
    {
      "commit": "5c8576383b7613dc8ff3d69dd435e56811da82ed",
      "tree": "27a6596238b4d31bcd07480bfe6ab5ccf34ffbc7",
      "parents": [
        "bd3ce03103be4d98489d90f2f8c089edbb13bdc1"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 19:16:31 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 19:16:31 2024 -0500"
      },
      "message": "Fixes ubsan tests with clang\n\nWithout the fix, ubsan would complain about some of the\nNULL pointer checks from test_opus_api.\n"
    },
    {
      "commit": "bd3ce03103be4d98489d90f2f8c089edbb13bdc1",
      "tree": "5753d9aabf7640a3e7ccca883d340e96a4424ced",
      "parents": [
        "0713a18ebc87bad579b901b3dcd2499d8e5b552b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 17:43:08 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 17:43:08 2024 -0500"
      },
      "message": "Avoid warning about LPCNetPLCState being redefined\n"
    },
    {
      "commit": "0713a18ebc87bad579b901b3dcd2499d8e5b552b",
      "tree": "78ed102c760e8635a5af6ef396da145e85209fda",
      "parents": [
        "e9b243b32a7d2e85b0dcfb9704c507bb59f8a3cf"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 17:34:52 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 17:34:52 2024 -0500"
      },
      "message": "Fix overflow in CELT Deep PLC\n\nAdded proper saturation and rounding\n"
    },
    {
      "commit": "e9b243b32a7d2e85b0dcfb9704c507bb59f8a3cf",
      "tree": "d14e43809999226f2bc24baca9783afb159251a9",
      "parents": [
        "b6fd9aaa0da2a700c2d0dca87f9fe6e02d4a94e8"
      ],
      "author": {
        "name": "Michael Klingbeil",
        "email": "klingm@amazon.com",
        "time": "Thu Feb 29 16:13:46 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Mar 01 02:55:09 2024 -0500"
      },
      "message": "add arm rtcd for apple\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "b6fd9aaa0da2a700c2d0dca87f9fe6e02d4a94e8",
      "tree": "e9cef9117aaf4c8a8c86d81ad244688953f512c6",
      "parents": [
        "26c3bbbe8f58c233714efae9cd758104c8de938e"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 29 22:32:01 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 29 22:32:01 2024 -0500"
      },
      "message": "Allow wrap-around in Neon NSQ_del_dec LCG\n\nMatches the C code and avoids undefined behaviour\n"
    },
    {
      "commit": "26c3bbbe8f58c233714efae9cd758104c8de938e",
      "tree": "b66225df7482c178f07f9897b6445581eb2a1df1",
      "parents": [
        "23c591318e63f9f38a2d60b361230f148e29fb70"
      ],
      "author": {
        "name": "Rudi Heitbaum",
        "email": "rudi@heitbaum.com",
        "time": "Mon Aug 21 19:46:18 2023 +1000"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 29 15:57:13 2024 -0500"
      },
      "message": "meson fix comparison\n\ncc.get_define returns str (not bool)\n\nFixes:\nFetching value of define \"__APPLE__\" :\n../meson.build:316:12: ERROR: Object \u003c[StringHolder] holds [str]: \u0027\u0027\u003e of type str does not support the `bool()` operator.\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "23c591318e63f9f38a2d60b361230f148e29fb70",
      "tree": "69a9d7fb236decd139582f813c80a671a93d0686",
      "parents": [
        "91bfdbd40ffcc9402cdbbefa7e3a1bd8cf3760e6"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 27 14:30:31 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 27 14:30:31 2024 -0500"
      },
      "message": "Remove NORM_ALIASING_HACK (with SMALL_FOOTPRINT)\n\nIt was breaking badly for PLC.\n"
    },
    {
      "commit": "91bfdbd40ffcc9402cdbbefa7e3a1bd8cf3760e6",
      "tree": "b3b2ca7545f5a4ac327be684dccd12fec11127c7",
      "parents": [
        "1fc28c3830d53f645a855c7f223536aa6d1be594"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 27 12:40:36 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 27 12:40:36 2024 -0500"
      },
      "message": "Fix lpcnet_demo usage\n\n-fargan-synthesis not -fargan_synthesis\n"
    },
    {
      "commit": "1fc28c3830d53f645a855c7f223536aa6d1be594",
      "tree": "1c858c07b1138028496d35887695ee9b2a52f93f",
      "parents": [
        "448518fbedf7d9c752ad2dfb855c1286fbc31797"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Feb 26 12:43:39 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Feb 26 23:56:32 2024 -0500"
      },
      "message": "Allow band boost in dynalloc_analysis() for 2.5 ms\n\nUsed to be disabled for LM\u003d\u003d0 because of the unreliable energy in\none-bin bands. Now we just used the max with the previous energy to\nstabilize things.\n"
    },
    {
      "commit": "448518fbedf7d9c752ad2dfb855c1286fbc31797",
      "tree": "6a1d091aef103cd35b348763efe057d90121833d",
      "parents": [
        "c0cc80dcf4d59b554b55be40dcebfcc00ddc83dd"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 25 17:14:29 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 25 17:14:29 2024 -0500"
      },
      "message": "Add some DRED decoding tests\n"
    },
    {
      "commit": "c0cc80dcf4d59b554b55be40dcebfcc00ddc83dd",
      "tree": "875e0f21b4948f3c31a0f3d56ae6e6bf3c6f1765",
      "parents": [
        "dcce2fd455b1f407bf4e1347ce5358a6d0096bd2"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 25 13:35:42 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 25 13:35:42 2024 -0500"
      },
      "message": "s/master/main/ in gitlab script\n"
    },
    {
      "commit": "dcce2fd455b1f407bf4e1347ce5358a6d0096bd2",
      "tree": "d4bd4a4fcf440a5b7cffe0d63c14f69de940304d",
      "parents": [
        "b589ab470add6e376a1ed4d72934fb74ee3636cc"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 24 23:37:44 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 24 23:37:44 2024 -0500"
      },
      "message": "Move all DRED encoding/decoding files to dnn/ dir\n"
    },
    {
      "commit": "b589ab470add6e376a1ed4d72934fb74ee3636cc",
      "tree": "c5cc9738415efc9f9ebc5b4a4c06bce83e7f5c36",
      "parents": [
        "522a29057102ab853e5b0bb47602e787cd5ff65a"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 24 23:29:12 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 24 23:29:12 2024 -0500"
      },
      "message": "Silence warning about uninitialized float_api\n"
    },
    {
      "commit": "522a29057102ab853e5b0bb47602e787cd5ff65a",
      "tree": "4a83f66d7605c3277965d75d5bf3326a533bac52",
      "parents": [
        "4c7602972220f9f59b153c800c86e03b771b781f"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 24 03:41:47 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 24 04:05:41 2024 -0500"
      },
      "message": "_mm_loadu_si23() needs immintrin.h on MSVC\n"
    },
    {
      "commit": "4c7602972220f9f59b153c800c86e03b771b781f",
      "tree": "d8567c70dcf3f706a014810594753a25312b3803",
      "parents": [
        "a17c2948a0ea0a310511f65ec0c81d907dfdc15d"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 23 16:15:11 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 23 16:15:11 2024 -0500"
      },
      "message": "Fixing Neon when vmlaq_lane_f32() is a macro\n"
    },
    {
      "commit": "a17c2948a0ea0a310511f65ec0c81d907dfdc15d",
      "tree": "0f5d814457767321dd4721eaba776a486a83952a",
      "parents": [
        "59dc75fa9713d6543bbb85fe83cb56555513a4de"
      ],
      "author": {
        "name": "Michael Klingbeil",
        "email": "klingm@amazon.com",
        "time": "Fri Feb 23 11:56:13 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 23 13:54:53 2024 -0500"
      },
      "message": "add usage string for opus_demo dec_complexity\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "59dc75fa9713d6543bbb85fe83cb56555513a4de",
      "tree": "a8ed68025333a28783881f6bf0edd0f5c0433efe",
      "parents": [
        "1186fb8ea4f977f5d1d0816a7bc8384978966304"
      ],
      "author": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Thu Feb 22 05:48:18 2024 -0800"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 23 02:23:37 2024 -0500"
      },
      "message": "Rework 32-bit SSE loads yet again.\n\nThe existing code in vec_avx.h produced\n  warning: dereferencing type-punned pointer will break\n   strict-aliasing rules\n with gcc 6.4.0.\nWe already had a macro to work around this within the rules of the\n C standard, but trying to use that here does not get optimized\n into a single MOVD like we were hoping.\nReplacing it with memcpy() instead does get optimized correctly,\n but requires switching from a macro to an inline function in order\n to be able to declare a local variable and return a value.\nWe already have such an inline function in NSQ_del_dec_avx2.c, so\n hoist that out and use it everywhere, and then convert vec_avx.h\n to use it also.\n"
    },
    {
      "commit": "1186fb8ea4f977f5d1d0816a7bc8384978966304",
      "tree": "f7dc764ea46ff28888b9b75b2de47b70387357db",
      "parents": [
        "6673e34b6566edcb825976ffc178938bbdcbf2ab"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 23 01:53:48 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 23 01:53:48 2024 -0500"
      },
      "message": "Add Deep PLC/DRED/OSCE to random tests\n\nAlso, remove -march\u003dnative because of AVX512VNNI and valgrind\n"
    },
    {
      "commit": "6673e34b6566edcb825976ffc178938bbdcbf2ab",
      "tree": "b6ee44a90d1d1bd4d62ce8774d4aa7df6114ff0e",
      "parents": [
        "f1fc944b41e9267c021a77a1707528c3ae4b3e3b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 17:56:12 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 17:56:12 2024 -0500"
      },
      "message": "Fix build on ARMv7\n\nFixes regression in 83368e6.\nvcgez_s16() is A64-only, but vcge_s16(..., vdup_n_s16(0)) works\neverywhere.\n"
    },
    {
      "commit": "f1fc944b41e9267c021a77a1707528c3ae4b3e3b",
      "tree": "51ab5fe1e156fa97039830d47af2971ceea336a6",
      "parents": [
        "cf4e3a15a382bae17d59224f57fdc3cdf9ba6d44"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 17:27:46 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 17:27:46 2024 -0500"
      },
      "message": "Fix AVX2 dection\n\nbroken in 9cf12e9\n"
    },
    {
      "commit": "cf4e3a15a382bae17d59224f57fdc3cdf9ba6d44",
      "tree": "b7c71e646b7009951764533ac62cfb1083c075b2",
      "parents": [
        "3e2a6b6253fe7a514c50100e4144c52c065a7fa1"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 16:19:02 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 16:19:27 2024 -0500"
      },
      "message": "Bump DRED experimental version for 3e2a6b6\n"
    },
    {
      "commit": "3e2a6b6253fe7a514c50100e4144c52c065a7fa1",
      "tree": "2a81e78a2d13bb95143c910d9cecf0f9085a71d8",
      "parents": [
        "2fff6437763d5f1ea42ed1ed1bd8bf6e50643291"
      ],
      "author": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Thu Feb 22 06:12:55 2024 -0800"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 14:30:40 2024 -0500"
      },
      "message": "Add signaling for a maximum DRED quantizer.\n\nSince any value of dQ \u003e 0 will cause the initial quantizer to\n degrade to the format-implied maximum (15) with a sufficient\n number of DRED frames, allow signaling a maximum smaller than 15.\nThis allows encoders to improve the minimum quality of long DRED\n sequences (at the expense of bitrate) without requiring a constant\n quantizer for all frames (dQ \u003d\u003d 0).\n"
    },
    {
      "commit": "2fff6437763d5f1ea42ed1ed1bd8bf6e50643291",
      "tree": "cd59d2316c1683a48cc39216bcce1b080d918f1b",
      "parents": [
        "950d8bf15893166fdd99ad0e85a4d1767cbb6b95"
      ],
      "author": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Thu Feb 22 06:12:26 2024 -0800"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 22 14:30:40 2024 -0500"
      },
      "message": "Fix Doxygen warnings.\n"
    },
    {
      "commit": "950d8bf15893166fdd99ad0e85a4d1767cbb6b95",
      "tree": "626d711dee01a9faa90ee905b510c71dfde0b1fe",
      "parents": [
        "9cf12e92bbd25b2416b340b06090efbde9ad3fa6"
      ],
      "author": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Thu Feb 22 04:55:29 2024 -0800"
      },
      "committer": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Thu Feb 22 04:55:29 2024 -0800"
      },
      "message": "Remove some dead code.\n"
    },
    {
      "commit": "9cf12e92bbd25b2416b340b06090efbde9ad3fa6",
      "tree": "6e009a431b47dac9c778e427c7494e5f1f9dd4b5",
      "parents": [
        "833688e65dda31b6cfc319b5dcd0a54f3a2ef616"
      ],
      "author": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Thu Feb 22 04:49:51 2024 -0800"
      },
      "committer": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Thu Feb 22 04:53:04 2024 -0800"
      },
      "message": "Improve AVX2 compiler support detection.\n\nCommit 735c40706f37 added uses of intrinsics that require at least\n gcc 9.0 (cf. \u003chttps://gcc.gnu.org/bugzilla/show_bug.cgi?id\u003d78782\u003e),\n even though AVX2 support may appear to be available in earlier gcc\n versions.\nWe were not testing for this.\nUpdate the compiler test in configure.ac to use these intrinsics\n explicitly, so it will error out and disable AVX2 if they are not\n available.\n"
    },
    {
      "commit": "833688e65dda31b6cfc319b5dcd0a54f3a2ef616",
      "tree": "e074ce38c8eddd18670b6c1f62a5f4ce206cfeeb",
      "parents": [
        "57901a6758c3bdc7481d61669812bde13d2085b8"
      ],
      "author": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Wed Feb 21 17:27:54 2024 +0100"
      },
      "committer": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Wed Feb 21 17:27:54 2024 +0100"
      },
      "message": "bit-exact overflow fixes in silk/arm/NSQ_del_dec_neon_intr.c\n"
    },
    {
      "commit": "57901a6758c3bdc7481d61669812bde13d2085b8",
      "tree": "330c194b04be1683e4d21e3f930caa1c0d157ced",
      "parents": [
        "6ac0c87112804e963d28cd1ff6510e80b210de4c"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 20:54:13 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 20:54:13 2024 -0500"
      },
      "message": "opus_dred_parse() sets dred_end to 0 when no DRED\n\nAlso, fix documentation about return value of zero.\n"
    },
    {
      "commit": "6ac0c87112804e963d28cd1ff6510e80b210de4c",
      "tree": "1bd622a38daf647a8963d9c68d7017b0096baa51",
      "parents": [
        "d9d0e7292f9024b94d88f5d7b29b8bec4441fe0b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 17:49:13 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 17:49:13 2024 -0500"
      },
      "message": "Update weight-shrinking script\n"
    },
    {
      "commit": "d9d0e7292f9024b94d88f5d7b29b8bec4441fe0b",
      "tree": "cded7047c04d633d411b4d8909e9d7c556434a3f",
      "parents": [
        "ecc10d835d4e2c2e7a21c91e980828c30728763a"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 14:23:59 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 14:23:59 2024 -0500"
      },
      "message": "Fixes an aliasing bug in opus_packet_pad()\n\nTrying to add padding in-place breaks when we have extensions,\nwhich causes a memcpy() with overlapping data. Just doing a\ncopy instead.\n"
    },
    {
      "commit": "ecc10d835d4e2c2e7a21c91e980828c30728763a",
      "tree": "cdc9f96ad6d0c24e52c6d1cdbf01d5763279b083",
      "parents": [
        "001820bbdef35783da5afd68ca98fcf524b17706"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 14:18:41 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 14:18:41 2024 -0500"
      },
      "message": "Add missing RESTORE_STACK in tests\n\nSilences NONTHREADSAFE_PSEUDOSTACK warnings\n"
    },
    {
      "commit": "001820bbdef35783da5afd68ca98fcf524b17706",
      "tree": "d69ec33b99635742fa43405037928a66674cf052",
      "parents": [
        "512e6270ea316b5a07656b060419a38c1e5a818f"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 14:13:17 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 14:13:17 2024 -0500"
      },
      "message": "Fix NONTHREADSAFE_PSEUDOSTACK\n"
    },
    {
      "commit": "512e6270ea316b5a07656b060419a38c1e5a818f",
      "tree": "a7ce0be4497adf2866ab0347913fcee91319c3e9",
      "parents": [
        "b75bd48d82281193681c49c00fca9773a45fb0d8"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 14:11:57 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 20 14:11:57 2024 -0500"
      },
      "message": "Silences gcc warning\n\nwarning: expression does not compute the number of elements in this array\nSeems like gcc thinks we\u0027re trying to get the number of elements in our\narray or something like that. It then suggests adding parentheses to\nsilence the warning.\n"
    },
    {
      "commit": "b75bd48d82281193681c49c00fca9773a45fb0d8",
      "tree": "b6546cb532b1a3fa7c5486127a94c4bfef88d8ac",
      "parents": [
        "5eeb5766718c32db20680cfc5ce7cee068df84f3"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 18 16:36:04 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 18 16:36:04 2024 -0500"
      },
      "message": "Remove training whitespace\n"
    },
    {
      "commit": "5eeb5766718c32db20680cfc5ce7cee068df84f3",
      "tree": "4a85a38da002ee907b87d55b5fa3792d4eec007e",
      "parents": [
        "393d463fdd6d17f3fef126a019102694ad89e2f7"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 18 13:57:18 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 18 13:57:18 2024 -0500"
      },
      "message": "Instructions for reusing loss simulator\n"
    },
    {
      "commit": "393d463fdd6d17f3fef126a019102694ad89e2f7",
      "tree": "61d85ebd6749ee8215b8200e76485a4c91711572",
      "parents": [
        "a97151d390978d93b4311ef8794bd3af23703355"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 17 14:20:44 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 17 14:20:44 2024 -0500"
      },
      "message": "Add lossgen_demo\n\nAlso skip the first loss values being generated since they\u0027re\nbiased towards \"not lost\" due to the initialization.\n"
    },
    {
      "commit": "a97151d390978d93b4311ef8794bd3af23703355",
      "tree": "5555b429e96764eaa7d1a19559ee31dcfce83d79",
      "parents": [
        "8894546bed8a58f43f92bffc2c80fd82485b2750"
      ],
      "author": {
        "name": "Xavier Claessens",
        "email": "xavier.claessens@collabora.com",
        "time": "Fri Feb 16 18:18:35 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 18:18:35 2024 -0500"
      },
      "message": "meson: Increase slow tests timeout\n\nThey timeout on GitHub actions because those runners are slower.\n"
    },
    {
      "commit": "8894546bed8a58f43f92bffc2c80fd82485b2750",
      "tree": "de2e6a1ba3b125d7598134bd9a826b7b4e781788",
      "parents": [
        "5e0bb53e096101a2afe7c5f6435825b07d87f45b"
      ],
      "author": {
        "name": "Giovanni Bajo",
        "email": "rasky@develer.com",
        "time": "Fri Dec 29 12:06:40 2023 +0100"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 17:46:06 2024 -0500"
      },
      "message": "dump_modes: add missing file to build\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "5e0bb53e096101a2afe7c5f6435825b07d87f45b",
      "tree": "8eba9664a682c01897b2d54daeb9be4df6bd8e29",
      "parents": [
        "965afac29b33465c53b4b98b07aa350322af16ea"
      ],
      "author": {
        "name": "Chris Hold",
        "email": "Christoph.Hold@aalto.fi",
        "time": "Thu Feb 15 15:06:40 2024 +0200"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 16:16:08 2024 -0500"
      },
      "message": "Map 2 extra channels in 5th order HOA\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "965afac29b33465c53b4b98b07aa350322af16ea",
      "tree": "4dd93abcf5fa4410f9cd3beb1a2acbb4dc2af7b3",
      "parents": [
        "befc25fb766be73e360d4a9482fc13e0360f616c"
      ],
      "author": {
        "name": "Chris Hold",
        "email": "Christoph.Hold@aalto.fi",
        "time": "Thu Feb 15 14:42:53 2024 +0200"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 16:14:54 2024 -0500"
      },
      "message": "Provide 4th order HOA map 3 mixing and demixing\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "befc25fb766be73e360d4a9482fc13e0360f616c",
      "tree": "4fea523e4b2775e0792ef55827d6c2bb4b817d3e",
      "parents": [
        "db78df8c01d386ef1fff9c99d38f9f44f726cb9f"
      ],
      "author": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Fri Feb 16 18:51:29 2024 +0100"
      },
      "committer": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Fri Feb 16 18:51:29 2024 +0100"
      },
      "message": "fixed compiler warning when building without dred\n"
    },
    {
      "commit": "db78df8c01d386ef1fff9c99d38f9f44f726cb9f",
      "tree": "c16ba38fc58bb9e2ec061deaec004b82d716d114",
      "parents": [
        "c5117c5ccd5da2680b29dbdae5d648d750107003"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 22:11:49 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 03:00:45 2024 -0500"
      },
      "message": "Delaying new DRED data when just out of silence\n\nWe don\u0027t need redundancy for the first active frame\nsince we already have the main Opus payload.\n"
    },
    {
      "commit": "c5117c5ccd5da2680b29dbdae5d648d750107003",
      "tree": "afaadfa898566c34e6cda112ebaaa28794949f6a",
      "parents": [
        "1f53f1e0a9b1e055222b28a70b2e327787e50d09"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Feb 05 17:39:38 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 03:00:45 2024 -0500"
      },
      "message": "Add dred_end return value to opus_dred_parse()\n"
    },
    {
      "commit": "1f53f1e0a9b1e055222b28a70b2e327787e50d09",
      "tree": "0b2dcdd926f3dcc2d4fb7ab125ee7bef7c2225ed",
      "parents": [
        "183a820212381f6c447b5a7c9b92b34fa01c629b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Mon Feb 05 14:24:02 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 03:00:45 2024 -0500"
      },
      "message": "Support for extra offset\n\nAllows us to exclude the most recent silence from DRED\n"
    },
    {
      "commit": "183a820212381f6c447b5a7c9b92b34fa01c629b",
      "tree": "e697ed77e4ed79d7ff9a5fabbd9487199b47945f",
      "parents": [
        "9f36bfc9623d0af495913b073a0b5e9e627e3086"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sat Feb 03 02:51:08 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 03:00:29 2024 -0500"
      },
      "message": "Refactoring: store all states\n"
    },
    {
      "commit": "9f36bfc9623d0af495913b073a0b5e9e627e3086",
      "tree": "1eebb9bdb78e9bd8f33dfd2e3b6dc80fb93a33b6",
      "parents": [
        "9b1da1fb1f07265dda3621b30ea989911dd4f0bf"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 02 16:55:21 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 16 03:00:29 2024 -0500"
      },
      "message": "Chopping the oldest silence in a DRED payload\n"
    },
    {
      "commit": "9b1da1fb1f07265dda3621b30ea989911dd4f0bf",
      "tree": "a0ba257e34d6fe03750bdcf0b5e8adcf6908a1eb",
      "parents": [
        "367a487e7cec832ccd4ab2d132e723b23336758b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 15 18:05:07 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Feb 15 18:05:07 2024 -0500"
      },
      "message": "Fix missing dotprod optimization\n\nUse the neon version of silk_noise_shape_quantizer_short_prediction()\n"
    },
    {
      "commit": "367a487e7cec832ccd4ab2d132e723b23336758b",
      "tree": "b935b451fe1322fbeb8bf18480e2e7717e444b4a",
      "parents": [
        "46f9c9c6698f64a9e63a68dcc507042322bd3df9"
      ],
      "author": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Thu Feb 15 15:39:30 2024 +0100"
      },
      "committer": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Thu Feb 15 15:39:30 2024 +0100"
      },
      "message": "hangover fix in osce/utils/pitch.py\n"
    },
    {
      "commit": "46f9c9c6698f64a9e63a68dcc507042322bd3df9",
      "tree": "446c09f18dee018e6506ee2939b26d38ca84a84d",
      "parents": [
        "735117b6d7697312962e99597eb516fbb3cc8360"
      ],
      "author": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Thu Feb 15 15:30:04 2024 +0100"
      },
      "committer": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Thu Feb 15 15:30:04 2024 +0100"
      },
      "message": "re-dumped osce models with sparse\u003dFalse\n"
    },
    {
      "commit": "735117b6d7697312962e99597eb516fbb3cc8360",
      "tree": "27818cfb49115afaeb93b8cadec2c36a9f68749e",
      "parents": [
        "ffd1b0b137e82197f8f995e03763a65b36079eba"
      ],
      "author": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Thu Feb 15 15:25:06 2024 +0100"
      },
      "committer": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Thu Feb 15 15:25:06 2024 +0100"
      },
      "message": "disabled sparse option in osce export script\n"
    },
    {
      "commit": "ffd1b0b137e82197f8f995e03763a65b36079eba",
      "tree": "34fb9b42e8d8b93fd654976c3b82a1de607d1ccf",
      "parents": [
        "6be3673c225795de83849fbeed2c514377efd722"
      ],
      "author": {
        "name": "Chris Hold",
        "email": "Christoph.Hold@aalto.fi",
        "time": "Thu Jan 11 17:10:22 2024 +0200"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 14 22:18:53 2024 -0500"
      },
      "message": "Provide 5th order HOA map 3 mixing and demixing\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "6be3673c225795de83849fbeed2c514377efd722",
      "tree": "210f0693b9bc057be71ccda2fe479bee45b9eb99",
      "parents": [
        "901c8548af2b3606207f8c41bf08946659c06720"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 14 17:35:29 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 14 17:35:29 2024 -0500"
      },
      "message": "More #ifdef around the dnn code\n"
    },
    {
      "commit": "901c8548af2b3606207f8c41bf08946659c06720",
      "tree": "40baf2999c3f44209b085264e0474b40ff891e0c",
      "parents": [
        "dd0e2dc3391ae20a1c05c91a5ee5d4179e27062f"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 14 11:51:44 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Feb 14 11:56:15 2024 -0500"
      },
      "message": "Conditional include\n\nThanks to Igor Palaguta for reporting the issue.\nhttps://github.com/xiph/opus/issues/313\n"
    },
    {
      "commit": "dd0e2dc3391ae20a1c05c91a5ee5d4179e27062f",
      "tree": "5e64bc02d579724755ca458a9576fc9598a6b1c9",
      "parents": [
        "4b9d9b0030d3103b9f19d32935ddd3a90f2305a9"
      ],
      "author": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Wed Feb 14 10:37:15 2024 +0100"
      },
      "committer": {
        "name": "Jan Buethe",
        "email": "jbuethe@amazon.de",
        "time": "Wed Feb 14 10:37:15 2024 +0100"
      },
      "message": "updated model\n"
    },
    {
      "commit": "4b9d9b0030d3103b9f19d32935ddd3a90f2305a9",
      "tree": "6cbbe28006bc7b9d907adf6f2b8e544b5a48e68f",
      "parents": [
        "3e69410e29b0cc4e8a6e9712d7c980d702597d62"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 11 14:04:43 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Feb 11 14:04:43 2024 -0500"
      },
      "message": "Fix check-asm for celt_fir_sse4_1()\n"
    },
    {
      "commit": "3e69410e29b0cc4e8a6e9712d7c980d702597d62",
      "tree": "734aa456ff9eafa4ce0e88f83417f8e7ba2b8d45",
      "parents": [
        "d503125101116d2b399287824d7902b6351b691d"
      ],
      "author": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Fri Feb 09 16:42:15 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 09 20:39:58 2024 -0500"
      },
      "message": "Fix OOB read in fixed-point NEON intrinsics.\n\nxcorr_kernel_neon_fixed() read one more sample from y[] in the\n main loop than it needed to allow use of vector loads, but unlike\n the native asm in celt_pitch_xcorr_arm.s, the loop condition did\n not exit early enough to prevent this from overrunning the end of\n the array.\nAdditionally, the tail loop _always_ read one value beyond what it\n needed.\n\nThis patch fixes the loop condition on the main loop.\nSince this makes the tail section run even for lengths that are a\n multiple of 8 (e.g., on fully half the multiplies for usages like\n celt_fir() or celt_iir() with an order of 16, which is common),\n rather than try to fix the tail loop, we replace it with a\n non-looping adaptation of the native asm, which continues to use\n vector loads as much as possible for the remaining elements (and\n also does not read ahead past the end of the y[] array).\n\nOverall slowdown of test_opus_encode on a Raspberry Pi 5 Model B\n Rev 1.0 is 0.12% vs. 0.13% for fixing the existing tail loop.\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "d503125101116d2b399287824d7902b6351b691d",
      "tree": "2685d5cce9173708a590f700360dc80721375bb4",
      "parents": [
        "65b131ec0984973166973878b14506f782704a3f"
      ],
      "author": {
        "name": "Timothy B. Terriberry",
        "email": "tterribe@xiph.org",
        "time": "Fri Feb 09 17:26:35 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 09 20:39:58 2024 -0500"
      },
      "message": "Add check-asm for fixed-point xcorr_kernel().\n\nCompare the output of xcorr_kernel() against the results of\n xcorr_kernel_c() when configured with --enable-check-asm.\nCurrently this is only checked in fixed point, as a float check\n requires more sophisticated error analysis and may need to be\n customized for each vector implementation.\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "65b131ec0984973166973878b14506f782704a3f",
      "tree": "350167aa2361772086c8fe21bf640c5b07a9083e",
      "parents": [
        "7070dfec4f473f54d588827871fe386cbd06470a"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 20:52:21 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 20:52:21 2024 -0500"
      },
      "message": "Add basic testing for Deep PLC, DRED, and OSCE\n\nStill need more targeted tests, DRED decoding\n"
    },
    {
      "commit": "7070dfec4f473f54d588827871fe386cbd06470a",
      "tree": "402ab7a2cfbfe8585a7e262bcdbf32eca9f44497",
      "parents": [
        "17922c2a28ea97b2e90e1493123facb0d26c46b5"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 19:48:29 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 19:48:29 2024 -0500"
      },
      "message": "Make opus_packet_unpad() discard extensions too\n\nSame for opus_multistream_packet_unpad()\n"
    },
    {
      "commit": "17922c2a28ea97b2e90e1493123facb0d26c46b5",
      "tree": "7d37e95080a8a63e674f5f9e230893ce881f48b1",
      "parents": [
        "562587e91b5ff5534a4b22a1adab7329c6c62670"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 15:48:21 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 15:48:21 2024 -0500"
      },
      "message": "Fix internal error on DRED\n\nForgot to account for padding length bytes when DRED payload is large.\n"
    },
    {
      "commit": "562587e91b5ff5534a4b22a1adab7329c6c62670",
      "tree": "cfac2a8015869e0d2047f489bf2750a2db688d37",
      "parents": [
        "2582ca925988cd53edf0c4d6690dba2c66fde8e8"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 15:38:50 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Feb 06 15:38:50 2024 -0500"
      },
      "message": "Avoid size-zero OPUS_COPY() with NULL pointer\n\nFails ubsan because memcpy declares args as non-null\n"
    },
    {
      "commit": "2582ca925988cd53edf0c4d6690dba2c66fde8e8",
      "tree": "aea95ea0cfb536fb3d39dca4624ca7c91583f194",
      "parents": [
        "e12c7f584a542ec6f2b00be67bf33165e182b24b"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 02 18:32:55 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 02 18:32:55 2024 -0500"
      },
      "message": "Allow wrap-around in silk_LPC_analysis_filter_avx2()\n\nMatches the C version (see 4a7027b)\n"
    },
    {
      "commit": "e12c7f584a542ec6f2b00be67bf33165e182b24b",
      "tree": "53151da5873ef1d458e8314e2daa467f995fa5a8",
      "parents": [
        "0e2d56d6750209a777c1b76cc75dbff37cda1a95"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 02 15:07:01 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 02 15:07:01 2024 -0500"
      },
      "message": "Fix log(0) on silence for fixed-point\n"
    },
    {
      "commit": "0e2d56d6750209a777c1b76cc75dbff37cda1a95",
      "tree": "537f91e09c436f146d89edd0fdf6d54395e6da4d",
      "parents": [
        "009d7412e1b374ccdd542aff5fe9becfde6d941e"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 02 14:46:51 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 02 14:46:51 2024 -0500"
      },
      "message": "Add missing NULL pointer check\n"
    },
    {
      "commit": "009d7412e1b374ccdd542aff5fe9becfde6d941e",
      "tree": "bd347856ba18f9761873d1828c54038d2b7a7672",
      "parents": [
        "f20575dd8632d371a51478ff55996d4ecc35ff1e"
      ],
      "author": {
        "name": "luzpaz",
        "email": "luzpaz@users.noreply.github.com",
        "time": "Fri Jul 21 16:19:29 2023 +0000"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Fri Feb 02 11:03:50 2024 -0500"
      },
      "message": "Fix various typos\n\nFound using `codespell -q 3 -L caf,highe,inlin,nd,ordert,shft`\n\nSigned-off-by: Jean-Marc Valin \u003cjmvalin@jmvalin.ca\u003e\n"
    },
    {
      "commit": "f20575dd8632d371a51478ff55996d4ecc35ff1e",
      "tree": "345eaf78564a3ec8993a041aaf413d3a20fcc303",
      "parents": [
        "53c2313c5876539ae147a5135421cf10f56d6404"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 21:52:08 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 21:52:08 2024 -0500"
      },
      "message": "Fix OSCE using uninitialized range coder for PLC\n"
    },
    {
      "commit": "53c2313c5876539ae147a5135421cf10f56d6404",
      "tree": "2670662ab12b082567ad74e019374cd6c7b77704",
      "parents": [
        "6c8acc21dda42573be4812d2fe97d24adc887c74"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 18:30:28 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 18:30:28 2024 -0500"
      },
      "message": "Fix lossgen shared build\n"
    },
    {
      "commit": "6c8acc21dda42573be4812d2fe97d24adc887c74",
      "tree": "47ae12045a3459c41f26d354d0a34e99a613909d",
      "parents": [
        "648a9f24b425e6851566d2461e1f9187efb72fce"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 13:08:37 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 13:08:37 2024 -0500"
      },
      "message": "Avoid padding multi-frame DTX packets\n"
    },
    {
      "commit": "648a9f24b425e6851566d2461e1f9187efb72fce",
      "tree": "e40fb1399f9fcdc2e40ef91c9dcabd4931bc279a",
      "parents": [
        "4350819785bd16c6fd30100366001f19d5807d03"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 13:07:51 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 13:07:51 2024 -0500"
      },
      "message": "Allow for DRED in DTX refresh packets\n"
    },
    {
      "commit": "4350819785bd16c6fd30100366001f19d5807d03",
      "tree": "fa570c2914cfd071658b243e72bbb4251046b3ee",
      "parents": [
        "f4ee2925f65c0cf73f0f5bb80b915181675f474c"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 12:59:08 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 12:59:08 2024 -0500"
      },
      "message": "Handle the offset from the DRED frame id\n"
    },
    {
      "commit": "f4ee2925f65c0cf73f0f5bb80b915181675f474c",
      "tree": "378b1cbb2336472f71480f4df0b5ad700f5e4500",
      "parents": [
        "0fed741a87ccc061eff382d306fadd71acdfc57d"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 00:02:57 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Wed Jan 31 00:02:57 2024 -0500"
      },
      "message": "Fix frame separator parsing\n"
    },
    {
      "commit": "0fed741a87ccc061eff382d306fadd71acdfc57d",
      "tree": "a4ba413aa7432a134c1de899d5e88fa94b5994f8",
      "parents": [
        "468a693dd44cee8bb883766e5f623c24fbda2735"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Jan 30 21:53:58 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Tue Jan 30 21:53:58 2024 -0500"
      },
      "message": "Fix c90 build\n"
    },
    {
      "commit": "468a693dd44cee8bb883766e5f623c24fbda2735",
      "tree": "3acdce26814da28b723129262eca8c3295d9d94e",
      "parents": [
        "b778271d53928445964cfe801d7461e6db7a67fa"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Sun Jan 21 14:10:27 2024 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jan 25 02:19:37 2024 -0500"
      },
      "message": "Cleanup previous commits\n\nRename, reindent, change arg order\n"
    },
    {
      "commit": "b778271d53928445964cfe801d7461e6db7a67fa",
      "tree": "f6d29ad47e486ec4c78732fad834133cacf4bfd6",
      "parents": [
        "073bec9160f6c39fef22eb0442ab6999ce822ffb"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@amazon.com",
        "time": "Sat Dec 16 13:01:20 2023 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jan 25 02:19:36 2024 -0500"
      },
      "message": "divide max payload too\n"
    },
    {
      "commit": "073bec9160f6c39fef22eb0442ab6999ce822ffb",
      "tree": "e69c020c17260e210f676cf1cfd6572c0374893c",
      "parents": [
        "fe86db66f47ba8d5d1b4f65f604e49852bbac90c"
      ],
      "author": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@amazon.com",
        "time": "Sat Dec 16 03:52:20 2023 -0500"
      },
      "committer": {
        "name": "Jean-Marc Valin",
        "email": "jmvalin@jmvalin.ca",
        "time": "Thu Jan 25 02:19:36 2024 -0500"
      },
      "message": "First shot at multi-frame CBR with DRED\n"
    }
  ],
  "next": "fe86db66f47ba8d5d1b4f65f604e49852bbac90c"
}
