X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=wav_filter.c;h=b7329c48bce647b113638a5609b39de698ef81fd;hp=3fce556d5d1ecb514b0cffeec869103ff0bec178;hb=eb51951a61a641ef0c403c3c6df560f29b8c5468;hpb=9262809551df9548f65b90490404ff0e2e4bfcc7 diff --git a/wav_filter.c b/wav_filter.c index 3fce556d..b7329c48 100644 --- a/wav_filter.c +++ b/wav_filter.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2008 Andre Noll + * Copyright (C) 2005-2009 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -10,6 +10,7 @@ #include "list.h" #include "sched.h" +#include "ggo.h" #include "filter.h" #include "string.h" #include "portable_io.h" @@ -37,15 +38,15 @@ static void make_wav_header(unsigned int channels, unsigned int samplerate, write_u32(headbuf + 4, size - 8); memcpy(headbuf + 8, "WAVE", 4); memcpy(headbuf + 12, "fmt ", 4); - write_u32(headbuf + 16, 16); - write_u16(headbuf + 20, 1); /* format */ + write_u32(headbuf + 16, 16); /* 16 + extra format bytes (zero) */ + write_u16(headbuf + 20, 1); /* format (1 == PCM/uncompressed) */ write_u16(headbuf + 22, channels); write_u32(headbuf + 24, samplerate); write_u32(headbuf + 28, bytespersec); - write_u16(headbuf + 32, align); - write_u16(headbuf + 34, BITS); - memcpy(headbuf + 36, "data", 4); - write_u32(headbuf + 40, size - 44); + write_u16(headbuf + 32, align); /* number of bytes per sample slice */ + write_u16(headbuf + 34, BITS); /* significant bits per sample */ + memcpy(headbuf + 36, "data", 4); /* chunk ID */ + write_u32(headbuf + 40, size - 44); /* chunk size */ } static ssize_t wav_convert(char *inbuf, size_t len, struct filter_node *fn)