)]}'
{
  "commit": "d5512429740a0ec7e91ddf07341952457e303ecf",
  "tree": "4a876d28679b3b8c92e783ad0e2bf4d7b70d918c",
  "parents": [
    "3dfa6f80d7c32ccb1ab3018040abf0a21b0e817e"
  ],
  "author": {
    "name": "Tommi",
    "email": "tommi@webrtc.org",
    "time": "Wed May 28 11:47:27 2025"
  },
  "committer": {
    "name": "WebRTC LUCI CQ",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed May 28 14:39:12 2025"
  },
  "message": "Add AudioMultiVector::ReadInterleavedFromIndex()\n\nThe new method differs from the existing method with the same name in\ntwo respects:\n\n* It reads into an InterleavedView\u003c\u003e instead of pointer.\n* It either reads exactly the requested number of samples or fails\n\nAfter examining the behavior in NetEq, where this method is called from,\nit seems that what we need is a method that reads exactly the required\nnumber of samples, not partially.\n\nA follow-up change to NetEqImpl and SyncBuffer will change\nSyncBuffer::GetNextAudioInterleaved() to read the requested buffer size\nor fail, as well as update NetEqImpl::GetAudioInternal accordingly.\n\nBug: chromium:335805780\nChange-Id: Ia78f888d52c9acb4b53b7042b31b8b0c53199e7b\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/392143\nReviewed-by: Per Åhgren \u003cpeah@webrtc.org\u003e\nReviewed-by: Jakob Ivarsson‎ \u003cjakobi@webrtc.org\u003e\nCommit-Queue: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#44787}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "baad7720eb13b0bc56b6ca99df0cd7e021276b78",
      "old_mode": 33188,
      "old_path": "modules/audio_coding/neteq/audio_multi_vector.cc",
      "new_id": "6ba4bc37f67e4ef8e160d2e9213bce10752a5dd3",
      "new_mode": 33188,
      "new_path": "modules/audio_coding/neteq/audio_multi_vector.cc"
    },
    {
      "type": "modify",
      "old_id": "b98e870f82e941da409a832c1d7e390ed1d8294f",
      "old_mode": 33188,
      "old_path": "modules/audio_coding/neteq/audio_multi_vector.h",
      "new_id": "486c13ab54d2c04808c4352e50cabc38cee32cf7",
      "new_mode": 33188,
      "new_path": "modules/audio_coding/neteq/audio_multi_vector.h"
    },
    {
      "type": "modify",
      "old_id": "61938476ee96d5fe970b3eeb6e5cad19c51e158c",
      "old_mode": 33188,
      "old_path": "modules/audio_coding/neteq/audio_multi_vector_unittest.cc",
      "new_id": "c9fe2308d3cde01aa6131e947245f5d65571c8a1",
      "new_mode": 33188,
      "new_path": "modules/audio_coding/neteq/audio_multi_vector_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "afbd6d4e41aac1b6f80e12866c6ecebd94eafc50",
      "old_mode": 33188,
      "old_path": "modules/audio_coding/neteq/audio_vector.cc",
      "new_id": "096c8c483f7261c9ee532afd938995d69cc6d87f",
      "new_mode": 33188,
      "new_path": "modules/audio_coding/neteq/audio_vector.cc"
    },
    {
      "type": "modify",
      "old_id": "6b37aedf5fb93d01a5294bc972467825ef034b9e",
      "old_mode": 33188,
      "old_path": "modules/audio_coding/neteq/audio_vector.h",
      "new_id": "b8e7d496b309cdecfa780ff8e1afef7e92cf1f13",
      "new_mode": 33188,
      "new_path": "modules/audio_coding/neteq/audio_vector.h"
    },
    {
      "type": "modify",
      "old_id": "97c1b7e10e264fcdf96957847475ef2dcf0cd0aa",
      "old_mode": 33188,
      "old_path": "modules/audio_coding/neteq/audio_vector_unittest.cc",
      "new_id": "b215c4a1ab41644801a9393071943c442bc4645b",
      "new_mode": 33188,
      "new_path": "modules/audio_coding/neteq/audio_vector_unittest.cc"
    }
  ]
}
