Conrad, It looks like oggz_close() will close oggz->file even if it came from oggz_open_stdio(). Is that intentional? I'd expect to be able able to keep using the stdio FILE pointers after closing the oggz handle. Should it set a flag in oggz_open_stdio(), or check against stdin, stdout and stderr before calling fclose()? -r