yes... I agree that it is basically as simple as putting some
while (strncmp(((t_wave*)buf)->w_datachunkid, "data", 4))...
loop afer line 252 of d_soundfile.c (need to adjust headersize inside that loop).
Krzysztof
Richard Dobson wrote:
You are basically saying that the WAVE parsing is wrong (as it so often is in unix apps!). It takes about three extra lines of simple code to jump over unknown chunks, and then ~all~ WAVE files (e.g those produced by Csound including the PEAK chunk - which PD could find very useful anyway!) can be read by PD. The WAVE spec requires that the data chunk is after the fmt chunk, so this simple skipping of unknown chunks will always work. In fact, there can be other chunks ~before~ the fmt chunk; it should not be presumed to be immediately after the RIFF<>WAVE<> elements.
...