|
From: Chris B. <ch...@cn...> - 2007-11-03 16:46:07
|
John Magliacane wrote: > I've been using SoX successfully for quite a number of years, but version 14 > brings with it problems never seen before. > > I'm running several different Slackware Linux machines -- some with the default > gcc 3 compiler, while others have gcc 4 that I've compiled and installed > myself. > > > > However, once compiled, SoX cannot read or play .wav files. The program exits > with a "Could not find data chunk" error. > > I tried commenting out the data chunk "if" check on or about line 816 in > src/wav.c. This allowed SoX to read the file and display data size > information, but the program quickly exits after this without reading the file > any further. > > So, the error trap appears to be working properly, but the "len" or the > "dwDataLength" variables might be incorrectly computed. > > Thanks for trying to debug this some... Could you also add a "-V4" to your command line when running SoX? It should print out some extra information like about chunks it finds: /sox -V4 monkey.wav -e /usr/local/bin/sox: SoX v14.0.1 /usr/local/bin/sox auto: Detected file format type: wav /usr/local/bin/sox wav: WAV Chunk fmt /usr/local/bin/sox wav: WAV Chunk fact /usr/local/bin/sox wav: WAV Chunk data That should helps us pinpoint how early in reading the WAV file its failing. The data chunk should be the last thing it starts reading. Also, is this *all* WAV files that fail or just some? Can you try the monkey.wav that comes with SoX? If it works with that one then we will need a sample WAV that doesn't work and can probably debug it pretty fast. Chris |