ref: 045394d9cdb4ebb4536a5eab668e715102c58b86
parent: 567e88a4723f862d9e506820e0b0c0eedc47b23f
author: cbagwell <cbagwell>
date: Fri Nov 21 09:31:10 EST 2008
SSND chunks length includes non-audio data in chunk. Don't include that as part of audio length. Don't submit 4 bytes from length for sowt tracks. It was probably a work around for length issue.
--- a/src/aiff.c
+++ b/src/aiff.c
@@ -367,6 +367,7 @@
if (blocksize != 0)
lsx_warn("AIFF header has invalid blocksize. Ignoring but expect a premature EOF");
+ ssndsize -= offset;
while (offset-- > 0) {
if (lsx_readb(ft, &trash8) == SOX_EOF)
{
@@ -411,10 +412,7 @@
/* Cope with 'sowt' CD tracks as read on Macs */
if (is_sowt)
- {
- aiff->nsamples -= 4;
ft->encoding.reverse_bytes = !ft->encoding.reverse_bytes;
- }
if (foundmark && !foundinstr)
{