Soxi warn about missing extended part of the fmt chunk--but it seems to be there
Sylvain Leroux <[email protected]>
| Newsgroups | gmane.comp.audio.sox |
|---|---|
| Message-ID | <[email protected]> |
Hi everyone. First thank you for the great work and support. I'm in the process of writing a sound library for an internal project, and I realize more each day the amount of work the developers may have put in writing SoX. I am working now on a Wave file exporter, and while using `soxi` to verify the my wave files are well formed, I noticed the warning "wave header missing extended part of fmt chunk": > sh$ soxi -V4 test/tmp/float_32_1.wav > soxi INFO formats: detected file format type `wav' > soxi DBUG wav: WAV Chunk fmt > soxi INFO wav: EXTENSIBLE > soxi WARN wav: wave header missing extended part of fmt chunk > soxi DBUG wav: WAV Chunk fact > soxi DBUG wav: WAV Chunk data > soxi DBUG wav: Reading Wave file: IEEE Float format, 1 channel, 48000 > samp/sec > soxi DBUG wav: 192000 byte/sec, 4 block align, 32 bits/samp, > 643200 data bytes > soxi DBUG wav: 160800 Samps/chans > > Input File : 'test/tmp/float_32_1.wav' > Channels : 1 > Sample Rate : 48000 > Precision : 24-bit > Duration : 00:00:03.35 = 160800 samples ~ 251.25 CDDA sectors > File Size : 643k > Bit Rate : 1.54M > Sample Encoding: 32-bit Floating Point PCM However, it seems to me I write the extended 40 bytes fmt chunk in the file: > 00000000 52 49 46 46 cc d0 09 00 57 41 56 45 66 6d 74 20 |RIFF....WAVEfmt | > 00000010 28 00 00 00 fe ff 01 00 80 bb 00 00 00 ee 02 00 |(...............| > 00000020 04 00 20 00[16 00]20 00 00 00 00 00 03 00 00 00 |.. ... .........| > 00000030 00 00 10 00 80 00 00 aa 00 38 9b 71 66 61 63 74 |.........8.qfact| > 00000040 04 00 00 00 80 d0 09 00 64 61 74 61 80 d0 09 00 |........data....| > 00000050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| > * > 0009d0d0 At byte 0x24 we can see 0x0016 which is the size (22 bytes) of the extended fmt header, followed by the extended header content. And after that, the `fact` chunk starts. Why is `soxi` considering the extended header is missing? FWIW, Microsoft docs seem to be relatively ambiguous, so I based my wave exporter implementation on http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/WAVE.html I don't know if I can attach files to this mailing list, but let me know if you want I send you the corresponding Wave file. Best regards, - Sylvain Leroux _______________________________________________ Sox-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/sox-users
signature.asc
(application/pgp-signature, 819 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJd1/pdAAoJEKtYHx0fYcUiGSkP/3jiSFj5QjMtPT7XWpIkXyKh YTKlVPhKXJZ48qLSOpbCZ3YVy+IQJkpTgV9ha4wRHISpEjfiChBIbShXntGq73Q9 YnxA7RGsn74fxPkp67kUvhrBX1lSdUVxfEoMBnHw9BT1eCUS+1WaQxlwYcU73b50 RGwRYZUNxjBiHT+f6SiWrkhPAIwevUnwWiRE9Vy3PmNwDoIPdEeuNcQLdJkjLyV5 R3+cm02OtwMk/dQ/exuA5tdk4GtGzQaitijZ7jdxDbXjcXRZ14evqGrNRYsIhv0B qMJPACGSCBwzLYWn3fjetgMKEioDFg5o+wnio5MBLaaXaXKfQOgQoEH/IweEvDnI fbLND1dhRpj9dJBKpmL6oSPK6UzKrccg1yR5WHhMLsRtmTI90A9qVOuS4rxjHAJO B2z7VDL0rklNe0xPtBJisXzP1Jk2xez6S2LhE628G130Wvhhazgw2abRTDAZ3aHh rFz5fwiQSn02Lupjpc6iXWnpStLJuli7PrLeY/BjkehWrM8ZoGNvRWRTIQWqoKgV qBqNcHya8vXzI/nQ+qnJxgaZ/vd2JmWw5dLc+7cMRQYaHIhgd/XEakb51VVuUI6r sWfvAwNmj2yv7ABXzHSn6XBL7jkCOILf+2mjJbDbYvc8yYCbcLxITEVZhtg7RqMr kJFaKXLq1A/K0GoiLhHE =oIT4 -----END PGP SIGNATURE-----