sox-users@lists.sourceforge.net unofficial mirror
 help / color / Atom feed
From: Sylvain Leroux <sylvain@chicoree.fr>
To: sox-users@lists.sourceforge.net
Subject: Soxi warn about missing extended part of the fmt chunk--but it seems to be there
Date: Fri, 22 Nov 2019 16:10:21 +0100
Message-ID: <82417765-a2d3-3a9c-a445-6093141f12ee@chicoree.fr> (raw)

[-- Attachment #1.1.1: Type: text/plain, Size: 2440 bytes --]

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



[-- Attachment #1.2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

[-- Attachment #2: Type: text/plain, Size: 0 bytes --]



[-- Attachment #3: Type: text/plain, Size: 158 bytes --]

_______________________________________________
Sox-users mailing list
Sox-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sox-users

             reply index

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-22 15:10 Sylvain Leroux [this message]
2019-11-22 18:16 ` Måns Rullgård
2019-11-22 20:49   ` Sylvain Leroux

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://lists.sourceforge.net/lists/listinfo/sox-users

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=82417765-a2d3-3a9c-a445-6093141f12ee@chicoree.fr \
    --to=sox-users@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

sox-users@lists.sourceforge.net unofficial mirror

Archives are clonable: git clone --mirror https://public-inbox.org/sox-users

Example config snippet for mirrors

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.audio.sox
	nntp://ou63pmih66umazou.onion/inbox.comp.audio.sox
	nntp://news.gmane.org/gmane.comp.audio.sox

 note: .onion URLs require Tor: https://www.torproject.org/

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git