Skip to content

Commit eae2b30

Browse files
committed
Update to audioadapter 5.0 and release 5.0.0
Bump audioadapter to 5.0 and audioadapter-buffers/audioadapter-sample to 5.1, raise the MSRV to 1.87 to match, and replace the commented-out path dependencies with a commented-out [patch.crates-io] block.
1 parent 224fb0d commit eae2b30

2 files changed

Lines changed: 25 additions & 12 deletions

File tree

Cargo.toml

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "rubato"
3-
version = "4.0.0"
4-
rust-version = "1.85"
3+
version = "5.0.0"
4+
rust-version = "1.87"
55
authors = ["HEnquist <henrik.enquist@gmail.com>"]
66
description = "Asynchronous resampling library intended for audio data"
77
license = "MIT OR Apache-2.0"
@@ -25,10 +25,8 @@ realfft = { version = "3.5.0", optional = true }
2525
num-complex = { version = "0.4", optional = true }
2626
num-integer = "0.1.45"
2727
num-traits = "0.2"
28-
#audioadapter = {version = "4.0.0", path = "../audioadapter-rs/audioadapter"}
29-
audioadapter = "4.0"
30-
#audioadapter-buffers = {version = "4.0.0", path = "../audioadapter-rs/audioadapter-buffers"}
31-
audioadapter-buffers = "4.0"
28+
audioadapter = "5.0"
29+
audioadapter-buffers = "5.1"
3230
visibility = "0.1.1"
3331
windowfunctions = "0.1.1"
3432

@@ -41,8 +39,13 @@ log = "0.4.18"
4139
approx = "0.5.1"
4240
test-log = "0.2.16"
4341
test-case = "3"
44-
#audioadapter-sample = {version = "4.0.0", path = "../audioadapter-rs/audioadapter-sample"}
45-
audioadapter-sample = "4.0"
42+
audioadapter-sample = "5.1"
43+
44+
# Uncomment to build against a local audioadapter checkout instead of the published crates.
45+
#[patch.crates-io]
46+
#audioadapter = { path = "../audioadapter-rs/audioadapter" }
47+
#audioadapter-buffers = { path = "../audioadapter-rs/audioadapter-buffers" }
48+
#audioadapter-sample = { path = "../audioadapter-rs/audioadapter-sample" }
4649

4750
[[bench]]
4851
name = "resamplers"

README.md

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ See [Real-time considerations](#real-time-considerations) for more details.
1818
## Input and output data format
1919

2020
Input and output data is handled via
21-
[`Adapter`](https://docs.rs/audioadapter/4.0.0/audioadapter/trait.Adapter.html)
22-
and [`AdapterMut`](https://docs.rs/audioadapter/4.0.0/audioadapter/trait.AdapterMut.html)
21+
[`Adapter`](https://docs.rs/audioadapter/5.0.0/audioadapter/trait.Adapter.html)
22+
and [`AdapterMut`](https://docs.rs/audioadapter/5.0.0/audioadapter/trait.AdapterMut.html)
2323
objects from the [audioadapter](https://crates.io/crates/audioadapter) crate.
2424
By using a suitable adapter, any sample layout and format can be used.
2525

@@ -29,7 +29,7 @@ and the `audioadapter` traits are kept simple in order to make it easy to implem
2929
for new structures if needed.
3030

3131
For projects migrating from a previous version of `rubato`, the
32-
[`SequentialSliceOfVecs`](https://docs.rs/audioadapter-buffers/4.0.0/audioadapter_buffers/direct/struct.SequentialSliceOfVecs.html)
32+
[`SequentialSliceOfVecs`](https://docs.rs/audioadapter-buffers/5.1.0/audioadapter_buffers/direct/struct.SequentialSliceOfVecs.html)
3333
adapter is a good starting point, since it wraps the vector of vectors
3434
commonly used with `rubato` v0.16 and earlier.
3535

@@ -405,7 +405,7 @@ Many audio editors, for example Audacity, are also able to directly import and e
405405

406406
## Compatibility
407407

408-
The `rubato` crate requires rustc version 1.85 or newer.
408+
The `rubato` crate requires rustc version 1.87 or newer.
409409

410410
## Migrating from 3.x to 4.0
411411

@@ -497,6 +497,16 @@ async_resampler.set_resample_ratio_relative(0.95, true)?;
497497
`ResamplerConstructionError`, add a `_ => ...` arm.
498498

499499
## Changelog
500+
- v5.0.0
501+
- Fix an out-of-bounds panic in the asynchronous resamplers when the resampling ratio is
502+
changed by a large factor with `ramp = true`. The input and output size estimates now
503+
average the step sizes rather than the ratios, and correct for the ramp overshoot, so the
504+
estimate is never lower than the number of frames the processing loop actually consumes.
505+
- Speed up the polynomial interpolation in `Async::new_poly` by evaluating the polynomials
506+
in Horner form.
507+
- Update to `audioadapter` 5.0 and `audioadapter-buffers` 5.1. Bump your own `audioadapter`
508+
dependencies to match the versions `rubato` re-exports.
509+
- Raise the minimum supported rustc version to 1.87.
500510
- v4.0.0
501511
- Update to `audioadapter` 4.0, which removes the lifetime parameter from the
502512
`Adapter` and `AdapterMut` traits.

0 commit comments

Comments
 (0)