Skip to content

GH-60729: Add IEEE format wave audio support#145384

Open
mbeijen wants to merge 7 commits intopython:mainfrom
mbeijen:GH-60729-add-ieee-wave-audio-support
Open

GH-60729: Add IEEE format wave audio support#145384
mbeijen wants to merge 7 commits intopython:mainfrom
mbeijen:GH-60729-add-ieee-wave-audio-support

Conversation

@mbeijen
Copy link
Contributor

@mbeijen mbeijen commented Mar 1, 2026

This is an updated version of #102574, the original PR where @lkoenig added support for IEEE Wave Audio.

As requested by @encukou

I've

  • Renamed the new 'getencoding/setencoding' to 'getformat/setformat' - format is the term used in the specifications
  • Added format to getparams
  • Added FACT chunk to written non-PCM wave files, which is required by the spec (and is what Audacity does)
  • Added documentation!

Closes: #102574


📚 Documentation preview 📚: https://cpython-previews--145384.org.readthedocs.build/

lkoenig and others added 5 commits March 1, 2026 09:54
This adds support for floating point wav files and fix python#60729.
'format' is the term used in the wave audio specification
Per the RIFF/WAVE Rev. 3 documentation, non-PCM formats require a fact chunk, while PCM does not.
This is also what libsdnfile/audacity do

Reference: https://mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html (see the 'fact Chunk' section and linked Rev. 3 RIFF docs).
These methods are public but were previously not documented. This caused
the unit tests to fail when I mentioned changes to getparams() in the
whats new ;-)
…CHTe.rst

Co-authored-by: AN Long <aisk@users.noreply.github.com>
@mbeijen mbeijen requested a review from aisk March 1, 2026 15:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants