Skip to content

feat: add WAV I/O via optional wav feature#11

Merged
wavekat-eason merged 2 commits intomainfrom
feat/wav-io
Apr 6, 2026
Merged

feat: add WAV I/O via optional wav feature#11
wavekat-eason merged 2 commits intomainfrom
feat/wav-io

Conversation

@wavekat-eason
Copy link
Copy Markdown
Contributor

Summary

  • Adds optional wav feature backed by hound for reading and writing WAV files
  • AudioFrame::write_wav — writes mono f32 PCM at the frame's native sample rate
  • AudioFrame::from_wav — reads f32 or i16 WAV files, normalising i16 to [-1.0, 1.0]
  • Adds docs/01-wav-io.md and docs/CLAUDE.md following the NN-slug.md convention

Test plan

  • cargo test --features wav — all 8 tests pass
  • wav_round_trip — f32 write/read round-trip with sample-level precision check
  • wav_read_i16 — reads an i16 WAV written directly via hound, verifies normalization for 0, i16::MAX, i16::MIN, and 16384

🤖 Generated with Claude Code

wavekat-eason and others added 2 commits April 7, 2026 09:54
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@wavekat-eason wavekat-eason merged commit 3a8fbe4 into main Apr 6, 2026
1 check passed
@wavekat-eason wavekat-eason deleted the feat/wav-io branch April 6, 2026 22:02
@github-actions github-actions bot mentioned this pull request Apr 6, 2026
wavekat-eason pushed a commit that referenced this pull request Apr 6, 2026
## 🤖 New release

* `wavekat-core`: 0.0.4 -> 0.0.5 (✓ API compatible changes)

<details><summary><i><b>Changelog</b></i></summary><p>

<blockquote>

##
[0.0.5](v0.0.4...v0.0.5)
- 2026-04-06

### Added

- add WAV I/O via optional wav feature
([#11](#11))

### Other

- add test coverage via cargo-llvm-cov
([#13](#13))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant