NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #2284 most downloaded on crates.io
A wav encoding and decoding library
Last release 3 years ago
no release in 18 months
Ships unpredictably
gaps range from 2 months to 4.4 years
Nearly every release is documented
notes for 16 of 16 stable releases
Nothing withdrawn
no release was ever pulled
12 years old
16 releases · first in 2015
Ensures compatibility with Rust 1.40.0 through 1.72.1. This bumps the minimum supported Rust version from 1.16 to 1.40.
Compatibility:
Changes:
mem::MaybeUninit.Thanks to Cam Lloyd for originally contributing these changes, and
thanks to Maxwell McKinnon for rebasing them on top of 3.5.0.
Released 2023-09-25.
Compatibility:
Changes:
mem::MaybeUninit. The
unsoundness was present in all versions since 0.2.0. There is no evidence
that rustc took advantage of the unsoundness to compile programs in a
problematic way. (#58, #68)Thanks to Cam Lloyd for originally contributing these changes, and thanks to Maxwell McKinnon for rebasing them on top of 3.5.0.
One column per quarter.
This is a maintenance release that includes most of the bugfixes and features that have been contributed since 3.4.0, which could be cherry-picked on
This is a maintenance release that includes most of the bugfixes and
features that have been contributed since 3.4.0, which could be
cherry-picked on top of 3.4.0. Some other contributions with more
far-reaching changes remain unreleased as of yet.
Compatibility:
New features:
S24_LE files, which store 24 bits in 4 bytesWavWriter::new_with_spec_ex (#42)WavSpec::into_header_for_infinite_file (#33, #36)Bugfixes and compatibility improvements:
wValidBitsPerSample field set to zeroMany thanks to Diffuse, Fletcher Woodruff, Matt Wilkinson, Vitaly Vi
Shukela, and Tuckerrrrrrrrrr for contributing to this release.
Released 2022-09-09.
This is a maintenance release that includes most of the bugfixes and features that have been contributed since 3.4.0, which could be cherry-picked on top of 3.4.0. Some other contributions with more far-reaching changes remain unreleased as of yet.
Compatibility:
New features:
S24_LE files, which store 24 bits in 4 bytes (#40,
#41)WavWriter::new_with_spec_ex (#42)WavSpec::into_header_for_infinite_file (#33, #36)Bugfixes and compatibility improvements:
wValidBitsPerSample field set to zero
(#50, #51)Many thanks to Diffuse, Fletcher Woodruff, Matt Wilkinson, Vitaly Vi Shukela, and Tuckerrrrrrrrrr for contributing to this release.
Exposes read_wave_header(), to quickly determine whether a file could be a wav file.
Release highlights:
Hound now reads certain WAVEFORMATEX files that were previously rejected incorrectly.
Release highlights:
Released 2018-02-18.
Breaking changes:
Release highlights:
Hound now supports seeking to a particular time in the file. See WavReader::seek() .
Release highlights:
WavReader::seek().Many thanks to Mitchell Nordine for contributing to this release.
Released 2017-12-02.
Breaking changes:
Release highlights:
WavReader::seek().Many thanks to Mitchell Nordine for contributing to this release.
Hound will now write the older WAVEFORMATEX format whenever possible, rather than the newer WAVEFORMATEXTENSIBLE, to improve compatibility.
Release highlights:
Many thanks to Denis Kolodin for contributing to this release.
Released 2017-10-14.
Breaking changes:
Release highlights:
Many thanks to Denis Kolodin for contributing to this release.
Support for writing IEEE float was added.
Release highlights:
Many thanks to Alex Zywicki for contributing to this release.
Released 2017-04-09.
Breaking changes:
Release highlights:
Many thanks to Alex Zywicki for contributing to this release.
This release fixes a few bugs discovered through fuzzing.
This release fixes a few bugs discovered through fuzzing.
Released 2017-04-01.
This release fixes a few bugs discovered through fuzzing.
Breaking changes:
Release highlights:
The header is now written when a WavWriter is constructed, therefore the constructor now returns a Result . This is a breaking change.
This release focuses on improving write performance. Highlights:
WavWriter is constructed, thereforeResult. This is a breaking change.WavWriter no longer maintains a buffer internally.WavWriter::create() does still wrap the file it opens in a bufferedSampleWriter16 for fast writing of 16-bit samples. DedicatedUpgrading requires dealing with the Result in WavWriter::new()
and WavWriter::create(). In many cases this should be as simple as
wrapping the call in a try!(), or appending a ? on recent versions
of Rust.
Released 2016-11-27.
This release focuses on improving write performance.
Breaking changes:
WavWriter is constructed, the header is now written immediately,
therefore the constructor now returns a Result.Other changes:
WavWriter no longer maintains a buffer internally.
WavWriter::create() does still wrap the file it opens in a buffered writer.SampleWriter16 for fast writing of 16-bit samples. Dedicated
writers for other bit depths might be added in future releases.Upgrading requires dealing with the Result in WavWriter::new()
and WavWriter::create(). In many cases this should be as simple as
wrapping the call in a try!(), or appending a ? on recent versions
of Rust.
Apart from requiring a newer Rust version, this release includes a minor breaking change: the WavSpec struct gained a new sample_format member. To upg…
Release highlights:
Apart from requiring a newer Rust version, this release includes a minor
breaking change: the WavSpec struct gained a new sample_format
member. To upgrade, add sample_format: hound::SampleFormat::Int to
places where a WavSpec is constructed.
Many thanks to Mitchell Nordine for his contributions to this release.
Released 2016-07-31.
Breaking changes:
WavSpec struct gained a new sample_format member. To upgrade,
add sample_format: hound::SampleFormat::Int to places where a WavSpec
is constructed.Release highlights:
Many thanks to Mitchell Nordine for his contributions to this release.
New WavReader::into_inner method for consistency with the standard library.
Released 2015-09-14.
Release highlights:
WavReader::into_inner method for consistency with the standard library.WavReader::into_samples method for ergonomics and consistency.Many thanks to Pierre Krieger for his contributions to this release.
This is the first stable release of Hound. Only small changes have been made with respect to v0.4.0. Release highlights:
Released 2015-07-21.
This is the first stable release of Hound. Only small changes have been made with respect to v0.4.0. Release highlights:
WavWriter::create now wraps the writer in a BufWriter.WavSamples now implements ExactSizeIterator.WavReader::spec now returns the spec by value.Hound can now read and write files with 8, 16, 24, or 32 bits per sample.
Released 2015-05-16.
Release highlights:
Hound can now read WAVEFORMATEXTENSIBLE, so it can read the files it writes.
Released 2015-05-05.
Release highlights:
WavReader and WavWriter.This version adds support for decoding wav files in addition to writing them.
Released 2015-04-09.
This version adds support for decoding wav files in addition to writing them.
Initial release with only write support.
Released 2015-04-01.
Initial release with only write support.
Your coding agent can read these notes before it upgrades. Set up the MCP server →