Chris@40: 2013-04-05 Erik de Castro Lopo Chris@40: Chris@40: * Makefile.am Chris@40: Make sure checkprograms are built as part of 'make test-tarball'. Chris@40: Closes: https://github.com/erikd/libsndfile/issues/37 Chris@40: Chris@40: 2013-03-29 Erik de Castro Lopo Chris@40: Chris@40: * tests/dft_cmp.c Chris@40: Fix a buffer overflow detected using GCC 4.8's -fsantiize=address runtime Chris@40: error checking functionality. This was a buffer overflow in libsndfile's Chris@40: test suite, not in the actual library code. Chris@40: Chris@40: 2013-03-09 Erik de Castro Lopo Chris@40: Chris@40: * M4/gcc_version.m4 Chris@40: Fix to work with OpenBSD's sed. Chris@40: Chris@40: 2013-03-07 Erik de Castro Lopo Chris@40: Chris@40: * src/ALAC/alac_encoder.c Chris@40: Patch from Michael Pruett (author of libaudiofile) to add correct byte Chris@40: swapping for the mChannelLayoutTag field. Chris@40: Chris@40: 2013-03-02 Erik de Castro Lopo Chris@40: Chris@40: * doc/bugs.html Chris@40: Bugs should bt reported on the github issue tracker. Chris@40: Chris@40: 2013-02-22 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Improve sanitization of FLAC_CFLAGS value. Chris@40: Chris@40: 2013-02-21 Erik de Castro Lopo Chris@40: Chris@40: * src/Makefile.am Chris@40: Call python interpreter instead of using '#!' in script. Thanks to Jan Chris@40: Stary for reporting this. Chris@40: Chris@40: * doc/index.html doc/FAQ.html Chris@40: Make internal links relative. Patch from Jan Stary. Chris@40: Chris@40: 2013-02-13 Erik de Castro Lopo Chris@40: Chris@40: * src/test_endswap.def src/test_endswap.tpl Chris@40: Add tests for psf_put_be32() and psf_put_be64(). Chris@40: Chris@40: * src/sfendian.h src/test_endswap.(def|tpl) Chris@40: Add functions psf_get_be(16|32|64) with tests. Chris@40: These are needed for platforms where un-aligned accesses cause bus faults. Chris@40: Chris@40: * src/ALAC/ag_enc.c src/ALAC/alac_decoder.c Chris@40: Replace all un-aligned accesses with safe alternatives. Chris@40: Closes: https://github.com/erikd/libsndfile/issues/19 Chris@40: Chris@40: 2013-02-12 Erik de Castro Lopo Chris@40: Chris@40: * src/sfendian.h Chris@40: Add big endian versions of H2BE_16 and H2BE_32. Chris@40: Chris@40: 2013-02-11 Erik de Castro Lopo Chris@40: Chris@40: * src/ALAC/ Chris@40: Replace Apple endswap routines with ones from libsndfile. Chris@40: Chris@40: * merge from libsndfile-cart repo Chris@40: Add ability to set and get a cart chunk with WAV and RF64. Chris@40: Orignal patch by Chris Roberts required a number of Chris@40: tweaks. Chris@40: Chris@40: 2013-02-10 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Bump SF_HEADER_LEN from 8192 to 12292, the value it was in the 1.0.25 Chris@40: release. Chris@40: Chris@40: 2013-02-09 Erik de Castro Lopo Chris@40: Chris@40: * src/alac.c Chris@40: Fix segfault when encoding 8 channel files. Chris@40: Closes: https://github.com/erikd/libsndfile/issues/30 Chris@40: Chris@40: 2013-02-07 Erik de Castro Lopo Chris@40: Chris@40: * src/ALAC/EndianPortable.c Chris@40: Fall back to compiler's __BYTE_ORDER__ for endian-ness detection. Chris@40: Chris@40: 2013-02-06 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/common.h src/ima_adpcm.c src/ms_adpcm.c src/paf.c Chris@40: Drop tests for and #ifdef hackery for C99 struct flexible array feature. Chris@40: libsndfile assumes the compiler supports most of the ISO C99 standard. Chris@40: Chris@40: * src/alac.c Chris@40: Fix valgrind invalid realloc. Reported by nu774. Chris@40: Closes: https://github.com/erikd/libsndfile/issues/31 Chris@40: Chris@40: 2013-02-05 Erik de Castro Lopo Chris@40: Chris@40: * src/alac.c Chris@40: The 'pakt' chunk header should now be written correctly. Chris@40: Closes: https://github.com/erikd/libsndfile/issues/24 Chris@40: Chris@40: * configure.ac Makefile.am Chris@40: Use PKG_INSTALLDIR when it exists. Suggestion from Christoph Thompson. Chris@40: Closes: https://github.com/erikd/libsndfile/pull/28 Chris@40: Chris@40: 2013-02-03 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/caf.c Chris@40: Read the ALAC 'pakt' header and stash the values. Chris@40: Chris@40: * src/sfendian.h Chris@40: Add functions psf_put_be64() and psf_put_be32(). Chris@40: Chris@40: * src/alac.c Chris@40: Start work on filling on the 'pakt' chunk header. Chris@40: Chris@40: 2013-02-02 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Add missing opening

tag. Chris@40: Chris@40: * src/alac.c Chris@40: Increase ALAC_BYTE_BUFFER_SIZE to 82000. Chris@40: Chris@40: 2013-01-27 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Improve question #8. Chris@40: Chris@40: 2013-01-02 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg_opus.c Chris@40: Add skeleton implementation so someone else can run with it. Chris@40: Chris@40: 2012-12-12 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/dwd.c src/rx2.c src/txw.c Chris@40: Fix for compiling when configured with --enable-experimental. Thanks to Chris@40: Eric Wong for reporting this. Chris@40: Chris@40: 2012-12-01 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac programs/sndfile-play.c Chris@40: OS X 10.8 uses a different audio API to previous versions. Chris@40: Fix compile failure on by disabling sndfile-play on this version. Chris@40: Someone needs to supply code for the new API. Chris@40: Chris@40: 2012-11-30 Erik de Castro Lopo Chris@40: Chris@40: * Octave/Makefile.am Octave/octave_test.sh Chris@40: Fix 'make distcheck'. Chris@40: Chris@40: 2012-10-13 Erik de Castro Lopo Chris@40: Chris@40: * M4/octave.m4 Chris@40: Relax constraints on Octave version. Chris@40: Chris@40: 2012-10-11 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.tpl Chris@40: Improve compare_*_or_die() functions. Chris@40: Chris@40: * src/command.c Chris@40: Fix bug reported by Keiler Florian. When reading short or int data from a Chris@40: file containing float data, and setting SFC_SET_SCALE_FLOAT_INT_READ to Chris@40: SF_TRUE would fail 3, 5, 7 and other channels counts. Problem was that Chris@40: psf_calc_signal_max() was not calculating the signal max correctly. Chris@40: Calculation of the signal max was failing because it was trying to read Chris@40: a sample count that was not an integer multiple of the channel count. Chris@40: Chris@40: * tests/channel_test.c tests/Makefile.am tests/test_wrapper.sh.in Chris@40: Add test for the above. Chris@40: Chris@40: 2012-09-25 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Added a constructor to allow the use of SF_VIRTUAL_IO. Patch from Chris@40: DannyDaemonic : https://github.com/erikd/libsndfile/pull/20 Chris@40: Chris@40: 2012-08-23 Erik de Castro Lopo Chris@40: Chris@40: * doc/octave.html Chris@40: Fix link to octave.sourceforge.net. Thanks to IOhannes m zmoelnig. Chris@40: Chris@40: * src/mat5.c Chris@40: Allow reading of mat5 files without a specified sample rate (default to Chris@40: 44.1kHz). Thanks to IOhannes m zmoelnig. Chris@40: Chris@40: 2012-08-19 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c Chris@40: Error out if channel count is zero. Bug report from William ELla via Chris@40: launchpad: Chris@40: https://bugs.launchpad.net/ubuntu/+source/libsndfile/+bug/1036831 Chris@40: Chris@40: 2012-08-04 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac programs/sndfile-play.c Chris@40: Patch from Ricci Adams to use OSX's AudioQueues on OSX 10.7 and greater. Chris@40: Chris@40: 2012-07-09 Erik de Castro Lopo Chris@40: Chris@40: * programs/common.c Chris@40: Accept "ogg" as a file extention for Ogg/Vorbis files. Chris@40: Chris@40: 2012-06-22 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Make sure any previously allocated FLAC stream encoder and stream decoder Chris@40: objects are deleted before a new one is allocated. Chris@40: Chris@40: 2012-06-20 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.tpl Chris@40: Rename gen_lowpass_noise_float() to gen_lowpass_signal_float() and add a Chris@40: sine wave component so that different FLAC compression levels can be Chris@40: tested. Chris@40: Chris@40: * src/sndfile.h.in doc/command.html Chris@40: Add SFC_SET_COMPRESSION_LEVEL and document it. Chris@40: Chris@40: * src/sndfile.c Chris@40: Catch SFC_SET_VBR_ENCODING_QUALITY command and implement it as the inverse Chris@40: of SFC_SET_COMPRESSION_LEVEL. Chris@40: Chris@40: * src/ogg_vorbis.c src/flac.c Chris@40: Implement SFC_SET_COMPRESSION_LEVEL command. Chris@40: Chris@40: * tests/test_wrapper.sh.in tests/compression_size_test.c Chris@40: Use the compression_size_test on FLAC as well. Chris@40: Chris@40: 2012-06-19 Erik de Castro Lopo Chris@40: Chris@40: * tests/ Chris@40: Rename vorbis_test.c -> compression_size_test.c so it can be extended to Chris@40: test FLAC as well. Chris@40: Chris@40: 2012-06-18 Erik de Castro Lopo Chris@40: Chris@40: * src/broadcast.c Chris@40: Fix a bug where a file with a 'bext' chunk with a zero length coding Chris@40: history field would get corrupted when the file was closed. Chris@40: Reported by Paul Davis of the Ardour project. Chris@40: Chris@40: * src/test_broadcast_var.c Chris@40: Add a test for the above. Chris@40: Chris@40: 2012-05-19 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: sf_format_check: For SF_FORMAT_AIFF, reject endian-ness setttings for Chris@40: non-PCM formats. Chris@40: Chris@40: 2012-04-12 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix regression in handling of odd length SSND chunks. Chris@40: Thanks Olivier Tristan for the example file. Chris@40: Chris@40: * src/aiff.c src/wav.c Chris@40: Exit parser loop when marker == 0. Chris@40: Chris@40: 2012-04-04 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Fix text. Thanks to Richard Collins. Chris@40: Chris@40: 2012-03-24 Erik de Castro Lopo Chris@40: Chris@40: * src/caf.c Chris@40: Exit parse loop if the marker is zero. Pass jump offsets as size_t instead Chris@40: of int. Chris@40: Chris@40: 2012-03-20 Erik de Castro Lopo Chris@40: Chris@40: * src/alac.c Chris@40: Fix segfault when decoding CAF/ALAC file with more than 4 channels. Chris@40: Fixes github issue #8 reported by Charles Van Winkle. Chris@40: Chris@40: 2012-03-20 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Change 'typedef SF_CHUNK_ITERATOR { ... } SF_CHUNK_ITERATOR' into 'struct Chris@40: SF_CHUNK_ITERATOR { ... }' to prevent older compilers from complaining of Chris@40: re-typedef-ing of SF_CHUNK_ITERATOR. Chris@40: Chris@40: * configure.ac Chris@40: Fix if test for empty $prefix. Chris@40: Chris@40: 2012-03-18 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c tests/chunk_test.c Chris@40: Reworking of custom chunk handling code. Chris@40: - Memory for the iterator is now attached to the SF_PRIVATE struct and Chris@40: freed one sf_close(). Chris@40: - Rename sf_create_chunk_iterator() -> sf_get_chunk_iterator(). Chris@40: - Each SNDFILE handle never has more than one SF_CHUNK_ITERATOR handle. Chris@40: Chris@40: * tests/string_test.c Chris@40: Fix un-initialised char buffer. Chris@40: Chris@40: 2012-03-17 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c tests/chunk_test.c Chris@40: Add improved handling of custom chunk getting and settings. Set of patches Chris@40: from IOhannes m zmoelnig submitted via github pull request #6. Chris@40: Chris@40: * src/alac.c Chris@40: Fix calculated frame count for files with zero block length. Chris@40: Chris@40: 2012-03-13 Erik de Castro Lopo Chris@40: Chris@40: * src/avr.c Chris@40: Remove double assignment to psf->endian. Thanks Kao Dome. Chris@40: Chris@40: * src/gsm610.c Chris@40: Fix clearing of buffers. Thanks Kao Dome. Chris@40: Chris@40: * src/paf.c Chris@40: Remove duplicate code. Thanks Kao Dome. Chris@40: Chris@40: * src/test_strncpy_crlf.c Chris@40: Fix minor error in test. Thanks Kao Dome. Chris@40: Chris@40: * src/common.h src/*.c Chris@40: Fix a bunch of valgrind errors. Chris@40: Chris@40: 2012-03-13 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix typo in error string 'Uknown' -> 'Unknown'. Chris@40: Chris@40: * tests/fix_this.c Chris@40: Fix potential int overflow. Chris@40: Chris@40: 2012-03-10 Erik de Castro Lopo Chris@40: Chris@40: * src/alac.c Chris@40: Fix decoding of last block so that the decode length is not a multiple of Chris@40: the block length. Fixes github issue #4 reported by Charles Van Winkle. Chris@40: Chris@40: * src/sfconfig.h src/sfendian.h Chris@40: Fix for MinGW cross compiling. Use '#if (defined __*66__)' instead of Chris@40: '#if __*86__' because the MinGW header use '#ifdef __x86_64__'. Chris@40: Chris@40: 2012-03-10 Erik de Castro Lopo Chris@40: Chris@40: * src/ALAC/ src/alac.c Chris@40: Unify the interface between libsndfile and Apple ALAC codec. Regardless of Chris@40: file bit width samples are now passed between the two as int32_t that are Chris@40: justified towards the most significant bit. Without this modification, 16 Chris@40: conversion functions would have been needed between the libsndfile (short, Chris@40: int, float, double) types and the ALAC types (16, 20, 24 and 32 bit). With Chris@40: this mod, only 4 are needed. Chris@40: Chris@40: * tests/floating_point_test.tpl tests/write_read_test.(def|tpl) Chris@40: Add tests for 20 and 24 bit ALAC/CAF files. Chris@40: Chris@40: * src/command.c Chris@40: Add ALAC/CAF to the SFC_GET_FORMAT_* commands. Fixes github issue #5. Chris@40: Chris@40: * configure.ac Chris@40: Only use automake AM_SLIENT_RULES where supported. Thanks Dave Yeo. Chris@40: Chris@40: * tests/pipe_test.tpl Chris@40: Disable tests on OS/2. Thanks Dave Yeo. Chris@40: Chris@40: 2012-03-09 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/sfconfig.h src/sfendian.h Chris@40: For GCC, use inline assembler for endian swapping. This should work with Chris@40: older versions of GCC like the one currently used in OS/2. Chris@40: Chris@40: 2012-03-06 Erik de Castro Lopo Chris@40: Chris@40: * src/alac.c Chris@40: Make sure temp file gets opened in binary mode. Chris@40: Chris@40: * src/alac.c src/common.c src/common.h Chris@40: Fix function alac_write16_d(). Chris@40: Chris@40: * tests/floating_point_test.tpl Chris@40: Add tests for 16 bit ALAC/CAF. Chris@40: Chris@40: * src/alac.c src/common.c src/common.h Chris@40: Add support for 32 bit ALAC/CAF files. Chris@40: Chris@40: * tests/floating_point_test.tpl tests/write_read_test.tpl Chris@40: Add tests for 32 bit ALAC/CAF files. Chris@40: Chris@40: 2012-03-05 Erik de Castro Lopo Chris@40: Chris@40: * src/ Chris@40: Refactor chunk storage so it work on big as well as little endian CPUs. Chris@40: Chris@40: * tests/chunk_test.c Chris@40: Clean up error messages. Chris@40: Chris@40: * src/sfendian.h src/*.c Chris@40: Rename endian swapping macros and add ENDSWAP_64 and BE2H_64. Chris@40: Chris@40: * configure.ac Chris@40: Detect presence of header file. Chris@40: Chris@40: * src/sfendian.h Chris@40: Use intrinsics (ie for MinGW) when is not Chris@40: present. Chris@40: Make ENDSWAP_64() work with i686-w64-mingw32 compiler. Chris@40: Chris@40: * src/ALAC/EndianPortable.c Chris@40: Add support for __powerpc__. Chris@40: Chris@40: * src/sfconfig.h Chris@40: Make sure HAVE_X86INTRIN_H is either 1 or 0. Chris@40: Chris@40: 2012-03-03 Erik de Castro Lopo Chris@40: Chris@40: * src/ALAC/* Chris@40: Big dump of code for Apple's ALAC file format. The copyyright to this code Chris@40: is owned by Apple who have released it under an Apache style license. A few Chris@40: small modifications were made to allow this to be integrated into libsndfile Chris@40: but unfortunately the history of those changes were lost because they were Chris@40: developed in a Bzr tree and during that time libsndfile moved to Git. Chris@40: Chris@40: * src/alac.c src/caf.c src/common.[ch] src/Makefile.am src/sndfile.h.in Chris@40: src/sndfile.c Chris@40: Hook new ALAC codec in. Chris@40: Chris@40: * programs/sndfile-convert.c Chris@40: Add support for alac codec. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Expand tests to cover ALAC. Chris@40: Chris@40: 2012-03-02 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/wav.c Chris@40: Fix a couple of regressions from version 1.0.25. Chris@40: Chris@40: 2012-03-01 Erik de Castro Lopo Chris@40: Chris@40: * src/strings.c Chris@40: Minor refactoring. Make sure that the memory allocation size if always > 0 Chris@40: to avoid undefined behaviour. Chris@40: Chris@40: 2012-02-29 Erik de Castro Lopo Chris@40: Chris@40: * src/chunk.c Chris@40: Fix buffer overrun introduced in recently added chunk logging. This chunk Chris@40: logging has not yet made it to a libsndfile release version. Thanks to Chris@40: Olivier Tristan for providing an example file. Chris@40: Chris@40: * src/wav.c Chris@40: Fix handling of odd sized chunks which was causing the parser to lose some Chris@40: chunks. Thanks to Olivier Tristan for providing an example file. Chris@40: Chris@40: 2012-02-26 Erik de Castro Lopo Chris@40: Chris@40: * tests/util.tpl Chris@40: Used gnu_printf format checking with mingw-w64 compiler. Chris@40: Chris@40: * tests/header_test.tpl Chris@40: Printf format fixes. Chris@40: Chris@40: 2012-02-25 Erik de Castro Lopo Chris@40: Chris@40: * M4/extra_pkg.m4 Chris@40: Update PKG_CHECK_MOD_VERSION macro to add an AC_TRY_LINK step. This fix Chris@40: allows the configure process to catch attempts to link incompatible Chris@40: libraries. For example, linking 32 bit version of eg libFLAC to a 64 bit Chris@40: version of libsndfile will now fail. Similarly, when cross compiling Chris@40: libsndfile from Linux to Windows linking the Linux versions of a library Chris@40: to the Windows version of libsndfile will now also fail. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/common.h src/create_symbols_file.py Chris@40: Add API function sf_current_byterate(). Chris@40: Chris@40: * src/dwvw.c src/flac.c src/ogg_vorbis.c src/sds.c Chris@40: Add codec specific handlers for current byterate. Chris@40: Chris@40: * tests/floating_point_test.tpl Chris@40: Add initial test for sf_current_byterate(). Chris@40: Chris@40: 2012-02-24 Erik de Castro Lopo Chris@40: Chris@40: * src/common.[ch] Chris@40: Add function psf_decode_frame_count(). Chris@40: Chris@40: * src/dwvw.c Chris@40: Fix a termnation bug that caused the decoder to go into an infinite loop. Chris@40: Chris@40: 2012-02-24 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fix a regression in the WAV header parser. Thanks to Olivier Tristan for Chris@40: bug report and the example file. Chris@40: Chris@40: 2012-02-21 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Return error when SF_BROADCAST_INFO struct has bad coding_history_size. Chris@40: Thanks to Alex Weiss for the report. Chris@40: Chris@40: 2012-02-20 Erik de Castro Lopo Chris@40: Chris@40: * src/au.c src/flac.c src/g72x.c src/ogg_vorbis.c src/wav_w64.c Chris@40: Don't fake psf->bytewidth values. Chris@40: Chris@40: 2012-02-19 Erik de Castro Lopo Chris@40: Chris@40: * tests/string_test.c Chris@40: Fix valgrind warnings. Chris@40: Chris@40: * src/common.h src/sndfile.c src/strings.c Chris@40: Make string storage dynamically allocated. Chris@40: Chris@40: * src/sndfile.c Chris@40: Add extra validation for custom chunk handling. Chris@40: Chris@40: 2012-02-18 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Improve handlling unknown chunk types. Thanks to Olivier Tristan for sending Chris@40: example files. Chris@40: Chris@40: * src/utils.tpl Chris@40: Add GCC specific testing for format string parameters for exit_if_true(). Chris@40: Chris@40: * tests/*.c tests/*.tpl Chris@40: Fix all printf format warnings. Chris@40: Chris@40: * programs/sndfile-play.c Chris@40: Remove un-needed OSX include . Thanks jamesfmilne for github Chris@40: issue #3. Chris@40: Chris@40: * tests/chunk_test.c Chris@40: Extend custom chunk test. Chris@40: Chris@40: 2012-02-12 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Jump over some more chunk types while parsing. Chris@40: Chris@40: 2012-02-04 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/strings.c Chris@40: Change way strings are stored in SF_PRIVATE in preparation for dynamically Chris@40: allocating the storage. Chris@40: Chris@40: 2012-02-02 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src*.c Chris@40: Improve encapsulation of string data in SF_PRIVATE. Chris@40: Chris@40: 2012-02-01 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src*.c Chris@40: Remove the buffer union from SF_PRIVATE. Most uses of this have been Chris@40: replaced with a BUF_UNION that is allocated on the stack. Chris@40: Chris@40: 2012-01-31 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src*.c Chris@40: Rename logbuffer field of SF_PRIVATE to parselog and reduce its size. Chris@40: Put the parselog buffer and the index inside a struct within SF_PRIVATE. Chris@40: Chris@40: 2012-01-26 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fix typo, FLAC_CLFAGS -> FLAC_CFLAGS. Thanks to Jeremy Friesner. Chris@40: Chris@40: 2012-01-21 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/ogg.c Chris@40: Fix misleading error message when trying to create an SF_FORMAT_OGG file Chris@40: with anything other than SF_FORMAT_FILE. Thanks to Charles Van Winkle for Chris@40: the bug report. Github issue #1. Chris@40: Chris@40: 2012-01-20 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/wav.c Chris@40: Allow files opened in RDWR mode with string data in the tailer to be Chris@40: extended. Thanks to Bodo for the patch. Chris@40: Chris@40: * tests/string_test.c Chris@40: Add tests for the above changes (patch from Bodo). Chris@40: Chris@40: 2012-01-09 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Refactor reading of chunk size and use of psf_store_read_chunk(). Chris@40: Chris@40: * src/(caf|wav).c Chris@40: Correct storing of chunk offset. Chris@40: Chris@40: 2012-01-05 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/wav.c src/common.h Chris@40: Refactor common code into src/common.h. Chris@40: Chris@40: * src/caf.c Chris@40: Make custom chunks work for CAF files. Chris@40: Chris@40: * tests/chunk_test.c tests/test_wrapper.sh.in Chris@40: Test CAF files with custom chunks. Chris@40: Chris@40: * src/sndfile.c Chris@40: Prevent psf->codec_close() being called more than once. Chris@40: Chris@40: 2012-01-04 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-cmp.c Chris@40: Catch the case where the second file has more frames than the first. Chris@40: Chris@40: 2012-01-02 Erik de Castro Lopo Chris@40: Chris@40: * src/create_symbols_file.py Chris@40: Add sf_set_chunk/sf_get_chunk_size/sf_get_chunk_data. Chris@40: Chris@40: 2011-12-31 Erik de Castro Lopo Chris@40: Chris@40: * tests/chunk_test.c tests/Makefile.am Chris@40: New test for custom chunks. Chris@40: Chris@40: * src/aiff.c src/chunk.c src/common.h src/sndfile.c Chris@40: Make custom chunks work on AIFF files. Chris@40: Chris@40: * src/wav.c Chris@40: Make custom chunks work on WAV files (includes refactoring). Chris@40: Chris@40: 2011-11-12 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/common.h src/sndfile.c Chris@40: Start working on setting/getting chunks. Chris@40: Chris@40: 2011-11-24 Erik de Castro Lopo Chris@40: Chris@40: * src/binheader_writef_check.py src/create_symbols_file.py Chris@40: Make it work for Python 2 and 3. Thanks Michael. Chris@40: Chris@40: 2011-11-19 Erik de Castro Lopo Chris@40: Chris@40: * libsndfile.spec.in Chris@40: Change field name 'URL' to 'Url'. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Add SF_SEEK_SET/CUR/END. Chris@40: Chris@40: 2011-11-05 Erik de Castro Lopo Chris@40: Chris@40: * src/id3.c Chris@40: Fix a stack overflow that can occur when parsing a file with multiple Chris@40: ID3 headers which would cause libsndfile to go into an infinite recursion Chris@40: until it blew the stack. Thanks to Anders Svensson for supplying an example Chris@40: file. Chris@40: Chris@40: 2011-10-30 Erik de Castro Lopo Chris@40: Chris@40: * src/double64.c src/float32.c src/common.h Chris@40: Make (float32|double_64)_(be|le)_read() functions const correct. Chris@40: Chris@40: 2011-10-28 Erik de Castro Lopo Chris@40: Chris@40: * src/sfendian.h Chris@40: Minor tweaking of types. Cast to ptr to correct final type rather void*. Chris@40: Chris@40: * programs/sndfile-play.c tests/utils.tpl Chris@40: Fix compiler warnings with latest MinGW cross compiler. Chris@40: Chris@40: 2011-10-13 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Use the non-deprecated resource fork name on OSX. Thanks to Olivier Tristan. Chris@40: Chris@40: 2011-10-12 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Jump over the 'olym' chunks when parsing. Chris@40: Chris@40: 2011-10-06 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Remove windows only truncate() implementation. Chris@40: Chris@40: 2011-09-04 Erik de Castro Lopo Chris@40: Chris@40: * src/sd2.c src/sndfile.c Chris@40: Make sure 23 bit PCM SD2 files are readable/writeable. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Add tests for 32 bit PCM SD2 files. Chris@40: Chris@40: 2011-08-23 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Use AC_SYS_LARGEFILE instead of AC_SYS_EXTRA_LARGEFILE as suggested by Chris@40: Jan Willies. Chris@40: Chris@40: 2011-08-07 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Makefile.am Chris@40: Move ACLOCAL_AMFLAGS setup to Makefile.am. Chris@40: Chris@40: 2011-07-15 Erik de Castro Lopo Chris@40: Chris@40: * doc/command.html Chris@40: Merge two separate blocks of SFC_SET_VBR_ENCODING_QUALITY documentation. Chris@40: Chris@40: * src/paf.c Chris@40: Replace ppaf24->samplesperblock with a compile time constant. Chris@40: Chris@40: 2011-07-13 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg_vorbis.c Chris@40: Fix return value of SFC_SET_VBR_ENCODING_QUALITY command. Chris@40: Chris@40: * doc/command.html Chris@40: Document SFC_SET_VBR_ENCODING_QUALITY, SFC_GET/SET_LOOP_INFO and Chris@40: SFC_GET_INSTRUMENT. Chris@40: Chris@40: * NEWS README configure.ac doc/*.html Chris@40: Updates for 1.0.25. Chris@40: Chris@40: 2011-07-07 Erik de Castro Lopo Chris@40: Chris@40: * src/sfconfig.h Chris@40: Add handling for HAVE_SYS_WAIT_H. Chris@40: Chris@40: * Makefile.am src/Makefile.am tests/Makefile.am Chris@40: Add 'checkprograms' target. Chris@40: Chris@40: 2011-07-05 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Purge SF_ASSERT macro. Use standard C assert instead. Chris@40: Chris@40: * src/paf.c src/common.h src/sndfile.c Chris@40: Fix for Secunia Advisory SA45125, heap overflow (heap gets overwritten with Chris@40: byte value of 0) due to integer overflow if PAF file handler. Chris@40: Chris@40: * src/ima_adpcm.c src/ms_adpcm.c src/paf.c Chris@40: Use calloc instead of malloc followed by memset. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Clean up use of memset. Chris@40: Chris@40: 2011-07-05 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg.c Chris@40: Fix log message. Chris@40: Chris@40: * tests/format_check_test.c Chris@40: Fix compiler warnings. Chris@40: Chris@40: 2011-07-04 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix error message for erro code SFE_ZERO_MINOR_FORMAT. Chris@40: Chris@40: * tests/format_check_test.c Chris@40: Add a test to for SF_FINFO format field validation. Chris@40: Chris@40: * src/ogg.c src/ogg_vorbis.c src/ogg.h src/ogg_pcm.c src/ogg_speex.c Chris@40: src/common.h src/Makefile.am Chris@40: Move vorbis specific code to ogg_vorbis.c, add new files for handling PCM Chris@40: and Speex codecs in an Ogg container. The later two are only enabled with Chris@40: ENABLE_EXPERIMENTAL_CODE config variable. Chris@40: Chris@40: 2011-06-28 Erik de Castro Lopo Chris@40: Chris@40: * src/strings.c Chris@40: Clean up and refactor storage of SF_STR_SOFTWARE. Chris@40: Chris@40: 2011-06-23 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in doc/api.html Chris@40: Fix definition of SF_STR_LAST and update SF_STR_* related docs. Thanks to Chris@40: Tim van der Molen for the patch. Chris@40: Chris@40: 2011-06-21 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-interleave.c Chris@40: Fix handling of argc. Thanks to Marius Hennecke. Chris@40: Chris@40: * src/wav_w64.c Chris@40: Accept broken WAV files with blockalign == 0. Thanks to Olivier Tristan for Chris@40: providing example files. Chris@40: Chris@40: * src/wav.c Chris@40: Jump over 'FLLR' chunks. Chris@40: Chris@40: 2011-06-14 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Fix -Wundef warning due to ENABLE_SNDFILE_WINDOWS_PROTOTYPES. Chris@40: Chris@40: * configure.ac Chris@40: Add -Wundef to CFLAGS. Chris@40: Chris@40: * src/ogg.c Chris@40: Fix -Wunder warning. Chris@40: Chris@40: 2011-05-18 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Use int64_t instead of off_t when they are the same size. Chris@40: Chris@40: * src/Makefile.am tests/Makefile.am Chris@40: Use check_PROGRAMS instead of noinst_PROGRAMS where appropriate. Chris@40: Chris@40: 2011-05-08 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Don't allow unknown and/or un-editable chunks to prevent the file from being Chris@40: opened in SFM_RDWR mode. Chris@40: Chris@40: 2011-04-25 Erik de Castro Lopo Chris@40: Chris@40: * tests/format_check_test.c Chris@40: Fix segfault in test program. Chris@40: Chris@40: 2011-04-25 Erik de Castro Lopo Chris@40: Chris@40: * tests/format_check_test.c Chris@40: New test program to check to make sure that sf_open() and sf_check_format() Chris@40: agree as to what is a valid program. Chris@40: Chris@40: * tests/Makefile.am tests/test_wrapper.sh.in Chris@40: Hook into build and test runner. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix some sf_format_check() problems. Thanks to Charles Van Winkle for the Chris@40: notification. Chris@40: Chris@40: 2011-04-06 Erik de Castro Lopo Chris@40: Chris@40: * src/caf.c Chris@40: Add validation to size of 'data' chunk and fix size of written 'data' Chris@40: chunk. Thanks to Michael Pruett for reporting this. Chris@40: Chris@40: 2011-03-28 Erik de Castro Lopo Chris@40: Chris@40: * src/* tests/* programs/* Chris@40: Fix a bunch of compiler warnings with gcc-4.6. Chris@40: Chris@40: 2011-03-25 Erik de Castro Lopo Chris@40: Chris@40: * tests/util.tpl Chris@40: Add NOT macro to util.h. Chris@40: Chris@40: * src/strings.c Chris@40: Fix handling of SF_STR_SOFTWARE that resulted in a segfault due to calling Chris@40: strlen() on an unterminated string. Thanks to Francois Thibaud for reporting Chris@40: this problem. Chris@40: Chris@40: * tests/string_test.c Chris@40: Add test for SF_STR_SOFTWARE segfault bug. Chris@40: Chris@40: * configure.ac Chris@40: Sanitize FLAC_CFLAGS value supplied by pkg-config which returns a value of Chris@40: '-I${includedir}/FLAC'. However FLAC also provides an include file Chris@40: which clashes with the Standard C header of the same name. The Chris@40: solution is strip the 'FLAC' part off the end and include all FLAC headers Chris@40: as . Chris@40: Chris@40: * configure.ac src/Makefile.am Chris@40: Use non-recursive make in src/ directory. Chris@40: Chris@40: 2011-03-23 Erik de Castro Lopo Chris@40: Chris@40: * NEWS README docs/*.html Chris@40: Updates for 1.0.24 release. Chris@40: Chris@40: 2011-03-22 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fix up usage of sed (should not assume GNU sed). Chris@40: Chris@40: * M4/add_(c|cxx)flags.m4 Chris@40: Test flags in isolation. Chris@40: Chris@40: * tests/cpp_test.cc Chris@40: Fix a broken test (test segfaults). Report by Dave Flogeras. Chris@40: Chris@40: 2011-03-21 Erik de Castro Lopo Chris@40: Chris@40: * programs/common.[ch] Chris@40: Add function program_name() which returns the program name minus the path Chris@40: from argv [0]. Chris@40: Chris@40: * programs/*.c programs/Makefile.am Chris@40: Use program_name() where appropriate. Fix build. Chris@40: Chris@40: 2011-03-20 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: For u-law and A-law files, write an 18 byte 'fmt ' chunk instead of a 16 Chris@40: byte one. Win98 accepts files with a 16 but not 18 byte 'fmt' chunk. Later Chris@40: version accept 18 byte but not 16 byte. Chris@40: Chris@40: 2011-03-15 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Add examples for question 12. Chris@40: Chris@40: * doc/libsndfile.css.in Chris@40: Add tweaks for h4 element. Chris@40: Chris@40: * doc/api.html Chris@40: Add documentation for virtual I/O functionality. Thanks to Uli Franke. Chris@40: Chris@40: * tests/util.tpl Chris@40: Add static inline functions sf_info_clear() and sf_info_setup(). Chris@40: Chris@40: * tests/(alaw|dwvw|ulaw)_test.c Chris@40: Use functions sf_info_clear() and sf_info_setup(). Chris@40: Chris@40: 2011-03-08 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fail more gracefully if pkg-config is missing. Suggestion from Brian Chris@40: Willoughby. Chris@40: Chris@40: 2011-02-27 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Use size_t instead of int for size params with varargs. Chris@40: Chris@40: 2011-02-09 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Update supported platforms with more Debian platforms and Android. Chris@40: Chris@40: 2011-01-27 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Add an LPCWSTR version of the SndfileHandle constructor to the SndfileHandle Chris@40: class definition. Thanks to Eric Eizenman for pointing out this was missing. Chris@40: Chris@40: * tests/cpp_test.cc Chris@40: Add test for LPCWSTR version of the SndfileHandle constructor. Chris@40: Chris@40: 2011-01-19 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-play.c Chris@40: Remove cruft. Chris@40: Chris@40: 2010-12-01 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Add methods rawHandle() and takeOwnership(). Thanks to Tim Blechmann for Chris@40: the patch. Chris@40: Chris@40: * tests/cpp_test.cc Chris@40: Add tests for above two methods. Also supplied by Tim Blechmann. Chris@40: Chris@40: 2010-11-11 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Add mention of use of sf_strerror() when sf_open() fails. Chris@40: Chris@40: 2010-11-01 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Make TYPEOF_SF_COUNT_T int64_t where possible. This may fix problems where Chris@40: people are compiling on a 64 bit system with the GCC -m32 flag. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Fix comments on sf_count_t. Chris@40: Chris@40: 2010-10-26 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Handle non-zero offset field in SSND chunk. Thanks to Michael Chinen. Chris@40: Chris@40: 2010-10-20 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Sed fix for FreeBSD. Thanks Tony Theodore. Chris@40: Chris@40: 2010-10-14 Erik de Castro Lopo Chris@40: Chris@40: * shave.in M4/shave.m4 Chris@40: Fix shave invocation of windres compiler. Thanks Damien Lespiau (upstream Chris@40: shave author). Chris@40: Chris@40: * configure.ac M4/shave.m4 shave-libtool.in shave.in Chris@40: Switch from shave to automake-1.11's AM_SILENT_RULES. Chris@40: Chris@40: 2010-10-13 Erik de Castro Lopo Chris@40: Chris@40: * shave-libtool.in shave.in Chris@40: Sync to upstream version. Chris@40: Chris@40: * src/rf64.c Chris@40: More work to make the parser more robust and accepting of mal-formed files. Chris@40: Chris@40: 2010-10-12 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add functions psf_strlcpy() and psf_strlcat(). Chris@40: Chris@40: * src/broadcast.c src/sndfile.c src/strings.c src/test_main.c Chris@40: src/test_main.h src/test_strncpy_crlf.c Chris@40: Use functions psf_strlcpy() and psf_strlcat() as appropriate. Chris@40: Chris@40: * tests/string_test.c Chris@40: Add tests for SF_STR_GENRE and SF_STR_TRACKNUMBER. Chris@40: Chris@40: * src/rf64.c Chris@40: Fix size of 'ds64' chunk when writing RF64. Chris@40: Chris@40: 2010-10-10 Erik de Castro Lopo Chris@40: Chris@40: * programs/*.c Chris@40: Add the libsndfile version to the usage message of all programs. Chris@40: Chris@40: 2010-10-10 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/version-metadata.rc.in src/Makefile.am Chris@40: Add version string resources to the windows DLL. Chris@40: Chris@40: * doc/api.html Chris@40: Update to add missing SF_FORMAT_* values. Closed Debian bug #545257. Chris@40: Chris@40: * NEWS README configure.ac doc/*.html Chris@40: Updates for 1.0.23 release. Chris@40: Chris@40: 2010-10-09 Erik de Castro Lopo Chris@40: Chris@40: * tests/pedantic-header-test.sh.in Chris@40: Handle unusual values of CC environment variable. Chris@40: Chris@40: * src/rf64.c Chris@40: Minor tweaks and additional sanity checking. Chris@40: Chris@40: * src/Makefile.am src/binheader_writef_check.py Chris@40: Use python 2.6. Chris@40: Chris@40: 2010-10-08 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Add a missing 'inline' before a constructor defintion. Chris@40: Chris@40: 2010-10-06 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add macro NOT. Chris@40: Chris@40: * src/rf64.c Chris@40: Minor tweaks. Chris@40: Chris@40: * Makefile.am */Makefile.am Chris@40: Add *~ to CLEANFILES. Chris@40: Chris@40: 2010-10-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix a typo in the error string for SFE_OPEN_PIPE_RDWR. Thanks to Charles Chris@40: Van Winkle for the report. Chris@40: Chris@40: 2010-10-04 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c src/ogg.c src/sndfile.h.in src/strings.c src/wav.c Chris@40: Add ability to read/write tracknumber and genre to flac/ogg/wav files. Chris@40: Thanks to Matti Nykyri for the patch. Chris@40: Chris@40: * src/common.h src/broadcast.c src/strings.c Chris@40: Add function psf_safe_strncpy() and use where appropriate. Chris@40: Chris@40: 2010-10-04 Erik de Castro Lopo Chris@40: Chris@40: * NEWS README configure.ac doc/*.html Chris@40: Updates for 1.0.22 release. Chris@40: Chris@40: 2010-10-03 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/broadcast.c src/rf64.c src/sndfile.c src/wav.c Chris@40: Rewrite of SF_BROADCAST_INFO handling. Chris@40: Chris@40: * src/test_broadcast_var.c tests/command_test.c Chris@40: Tweak SF_BROADCAST_INFO tests. Chris@40: Chris@40: * src/test_broadcast_var.c Chris@40: Fix OSX stack check error. Chris@40: Chris@40: 2010-09-30 Erik de Castro Lopo Chris@40: Chris@40: * src/sds.c Chris@40: Set sustain_loop_end to 0 as suggested by Brian Lewis. Chris@40: Chris@40: 2010-09-29 Erik de Castro Lopo Chris@40: Chris@40: * src/sds.c Chris@40: Make sure the correct frame count gets written into the header. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Don't allow SDS files to have a long frame count. Chris@40: Chris@40: 2010-09-17 Erik de Castro Lopo Chris@40: Chris@40: * src/sds.c Chris@40: Apply a pair of patches from Brian Lewis to fix the packet number location Chris@40: and the checksum. Chris@40: Chris@40: 2010-09-10 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/file_io.c src/ogg.c src/rf64.c src/sndfile.c Chris@40: src/strings.c src/test_audio_detect.c src/test_strncpy_crlf.c Chris@40: src/wav.c tests/pcm_test.tpl Chris@40: Fix a bunch of minor issues found using static analysis. Chris@40: Chris@40: 2010-08-23 Erik de Castro Lopo Chris@40: Chris@40: * src/test_broadcast_var.c Chris@40: New file containing tests for broadcast_set_var(). Chris@40: Chris@40: * src/Makefile.am src/test_main.[ch] Chris@40: Hook test_broadcast_var.c into tests. Chris@40: Chris@40: 2010-08-22 Erik de Castro Lopo Chris@40: Chris@40: * src/broadcast.c src/common.(c|h) Chris@40: Move function strncpy_crlf() to src/common.c so the function can be tested Chris@40: in isolation. Chris@40: Chris@40: * src/test_strncpy_crlf.c Chris@40: New file. Chris@40: Chris@40: * src/Makefile.am src/test_main.[ch] Chris@40: Hook test_strncpy_crlf.c into tests. Chris@40: Chris@40: 2010-08-18 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Move code around to make comments make sense. Chris@40: Chris@40: * src/broadcast.c Chris@40: Add debugging code that is disabled by default. Chris@40: Chris@40: 2010-08-02 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: When the file meta data says the file has zero frames set psf->sf.frames Chris@40: to SF_COUNT_MAX. Fixes Debian bug #590752. Chris@40: Chris@40: * programs/sndfile-info.c Chris@40: Print 'unknown' if frame count == SF_COUNT_MAX. Chris@40: Chris@40: 2010-06-27 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Only support writing mono SVX files. Multichannel SVX files are not Chris@40: interleaved and there is no support infrastructure to cache and write Chris@40: multiple channels to create a non-interleaved file. Chris@40: Chris@40: * src/file_io.c Chris@40: Don't call close() on a file descriptor of -1. Thanks to Jeremy Friesner Chris@40: for the bug report. Chris@40: Chris@40: 2010-06-09 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add macro SF_ASSERT. Chris@40: Chris@40: * src/sndfile.c Chris@40: Use SF_ASSERT to ensure sizeof (sf_count_t) == 8. Chris@40: Chris@40: * src/svx.c Chris@40: Add support for reading and writing stereo SVX files. Chris@40: Chris@40: 2010-05-07 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: When compiling with x86_64-w64-mingw32-gcc link with -static-libgcc flags. Chris@40: Chris@40: * programs/common.c programs/sndfile-metadata-set.c Chris@40: Update metadata after the audio data is copied. Other minor fixes. Patch Chris@40: from Marius Hennecke. Chris@40: Chris@40: 2010-05-04 Erik de Castro Lopo Chris@40: Chris@40: * src/nist.c Chris@40: Fix a regression reported by Hugh Secker-Walker. Chris@40: Chris@40: * src/api.html Chris@40: Add comment about sf_open_fd() not working on Windows if the application Chris@40: and the libsndfile DLL are linked to different versions of the Microsoft Chris@40: C runtime DLL. Chris@40: Chris@40: 2010-04-23 Erik de Castro Lopo Chris@40: Chris@40: * tests/pedantic-header-test.sh.in Chris@40: Fix 'make distcheck'. Chris@40: Chris@40: 2010-04-21 Erik de Castro Lopo Chris@40: Chris@40: * tests/pedantic-header-test.sh.in Chris@40: New file to test whether sndfile.h can be compiled with gcc's -pedantic Chris@40: flag. Chris@40: Chris@40: * configure.ac tests/test_wrapper.sh.in Chris@40: Hook pedantic-header-test into test suite. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Fix -pedantic warning. Chris@40: Chris@40: 2010-04-19 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-salvage.c programs/Makefile.am Chris@40: New program to salvage the audio data from WAV/WAVEX/AIFF files which are Chris@40: greater than 4Gig in size. Chris@40: Chris@40: 2010-04-09 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-convert.c Chris@40: Fix valgrind warning. Chris@40: Chris@40: 2010-04-06 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-cmp.c Chris@40: When files differ in the PCM data, also print the difference offset. Chris@40: Minor cleanup. Chris@40: Chris@40: 2010-03-19 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Don't use the 'twos' marker for 24 and 32 bit PCM, use 'in24' and 'in32' Chris@40: instead. Thanks to Paul Davis (Ardour) for this suggestion. Chris@40: Chris@40: 2010-02-28 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Clean up configure report. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Add functions test_read_raw_or_die and test_write_raw_or_die. Chris@40: Chris@40: * tests/rdwr_test.(def|tpl) tests/Makefile.am Chris@40: Add new test program and hook into build. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix minor issues with sf_read/write_raw(). Bug reported by Milan Křápek. Chris@40: Chris@40: * tests/test_wrapper.sh.in Chris@40: Add rdwr_test to the test wrapper script. Chris@40: Chris@40: 2010-02-22 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Remove -fpascal-strings from OSX's OS_SPECIFIC_CFLAGS. Chris@40: Chris@40: * programs/common.[ch] programs/sndfile-metadata-set.c Chris@40: Apply a patch from Robin Gareus allowing the setting of the time reference Chris@40: field of the BEXT chunk. Chris@40: Chris@40: 2010-02-06 Erik de Castro Lopo Chris@40: Chris@40: * src/ima_adpcm.c Chris@40: Add a fix from Jonatan Liljedahl to handle predictor overflow when decoding Chris@40: IMA4. Chris@40: Chris@40: 2010-01-26 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Add a constructor which takes an existing file descriptor and then calls Chris@40: sf_open_fd(). Patch from Sakari Bergen. Chris@40: Chris@40: 2010-01-10 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-deinterleave.c programs/sndfile-interleave.c Chris@40: Improve usage messages. Chris@40: Chris@40: 2010-01-09 Erik de Castro Lopo Chris@40: Chris@40: * src/id3.c src/Makefile.am Chris@40: Add new file src/id3.c and hook into build. Chris@40: Chris@40: * src/sndfile.c src/common.h Chris@40: Detect and skip and ID3 header at the start of the file. Chris@40: Chris@40: 2010-01-07 Erik de Castro Lopo Chris@40: Chris@40: * programs/common.c Chris@40: Fix update_strings() copyright, comment, album and license are correctly Chris@40: written. Thanks to Todd Allen for reporting this. Chris@40: Chris@40: * man/Makefile.am Chris@40: Change GNU makeism to something more widely supported. Thanks to Christian Chris@40: Weisgerber for reporting this. Chris@40: Chris@40: * configure.ac programs/Makefile.am programs/sndfile-play.c Chris@40: Apply patch from Christian Weisgerber and Jacob Meuserto add support for Chris@40: OpenBSD's sndio. Chris@40: Chris@40: 2010-01-05 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Discourage the use of sf_read/write_raw(). Chris@40: Chris@40: 2009-12-28 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Test for Unix pipe() and waitpid() functions. Chris@40: Chris@40: * src/sfconfig.h tests/pipe_test.tpl Chris@40: Disable pipe_test if pipe() and waitpid() aren't available. Chris@40: Chris@40: 2009-12-16 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/Makefile.am src/create_symbols_file.py Chris@40: src/make-static-lib-hidden-privates.sh Chris@40: Change name of generated file src/Symbols.linux to Symbols.gnu-binutils and Chris@40: and use the same symbols file for other systems which use GNU binutils like Chris@40: Debian's kfreebsd. Chris@40: Chris@40: * M4/shave.m4 shave.in Chris@40: Update shave files from upstream. Chris@40: Chris@40: 2009-12-15 Erik de Castro Lopo Chris@40: Chris@40: * man/sndfile-metadata-get.1 Chris@40: Fix typo. Chris@40: Chris@40: * man/sndfile-interleave.1 man/Makefile.am Chris@40: New man page. Chris@40: Chris@40: 2009-12-13 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg.c Chris@40: When decoding to short or int, clip the decoded signal to [-1.0, 1.0] if Chris@40: its too hot. Thanks to Dmitry Baikov for suggesting this. Chris@40: Chris@40: * NEWS README doc/*.html Chris@40: Updates for 1.0.21. Chris@40: Chris@40: 2009-12-09 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-jackplay.c man/sndfile-jackplay.1 Chris@40: Remove these which will now be in found in the sndfile-tools package. Chris@40: Chris@40: * programs/Makefile.am man/Makefile.am Chris@40: Remove build rules for sndfile-jackplay. Chris@40: Chris@40: * configure.ac Chris@40: Remove detection of JACK Audio Connect Kit. Chris@40: Chris@40: * programs/sndfile-concat.c man/sndfile-concat.1 Chris@40: Add new program with man page. Chris@40: Chris@40: * man/Makefile.am programs/Makefile.am Chris@40: Hook sndfile-concat into build system. Chris@40: Chris@40: 2009-12-08 Erik de Castro Lopo Chris@40: Chris@40: * tests/error_test.c Chris@40: Don't terminate when sf_close() returns zero in error_close_test(). Chris@40: It seems that Windows 7 behaves differently from earlier versions of Chris@40: Windows. Chris@40: Chris@40: 2009-12-03 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac M4/*.m4 Chris@40: Rename all custom macros from AC_* to MN_*. Chris@40: Chris@40: * programs/sndfile-interleave.c Chris@40: Make it actually work. Chris@40: Chris@40: 2009-12-02 Erik de Castro Lopo Chris@40: Chris@40: * doc/*.html configure.ac Chris@40: Corrections and clarifications courtesy of Robin Forder. Chris@40: Chris@40: * programs/sndfile-convert.c programs/common.[ch] Chris@40: Move some code from convert to common for reuse. Chris@40: Chris@40: * programs/sndfile-interleave.c programs/sndfile-interleave.c Chris@40: Add new programs sndfile-interleave and sndfile-deinterleave. Chris@40: Chris@40: * programs/Makefile.am Chris@40: Hook new programs into build. Chris@40: Chris@40: 2009-12-01 Erik de Castro Lopo Chris@40: Chris@40: * src/create_symbols_file.py tests/stdio_test.c tests/win32_test.c Chris@40: Minor OS/2 tweaks as suggested by David Yeo. Chris@40: Chris@40: * tests/multi_file_test.c Chris@40: Fix file creation flags on windows. Thanks to Bruce Sharpe. Chris@40: Chris@40: * src/sf_unistd.h Chris@40: Set all group and other file create permssions to zero. Chris@40: Chris@40: * tests/win32_test.c Chris@40: Add a new test. Chris@40: Chris@40: 2009-11-30 Erik de Castro Lopo Chris@40: Chris@40: * doc/print.css doc/*.html Chris@40: Add a print stylesheet and update all HTML documents to reference it. Chris@40: Thanks to Aditya Bhargava for suggesting this. Chris@40: Chris@40: * doc/index.html Chris@40: Minor corrections. Chris@40: Chris@40: 2009-11-29 Erik de Castro Lopo Chris@40: Chris@40: * sndfile.pc.in Chris@40: Add a Libs.private entry to assist with static linking. Chris@40: Chris@40: 2009-11-28 Erik de Castro Lopo Chris@40: Chris@40: * src/make-static-lib-hidden-privates.sh src/Makefile.am Chris@40: Add a script to hide all non-public symbols in the libsndfile.a static Chris@40: library. Chris@40: Chris@40: 2009-11-22 Erik de Castro Lopo Chris@40: Chris@40: * tests/locale_test.c Chris@40: Correct usage of ENABLE_SNDFILE_WINDOWS_PROTOTYPES. Chris@40: Chris@40: 2009-11-20 Erik de Castro Lopo Chris@40: Chris@40: * src/windows.c Chris@40: Correct usage of ENABLE_SNDFILE_WINDOWS_PROTOTYPES. Chris@40: Chris@40: 2009-11-16 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-convert.c Chris@40: Allow the program to read from stdin by specifying '-' on the command line Chris@40: as the input file. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Hash define ENABLE_SNDFILE_WINDOWS_PROTOTYPES to 1 for greater safety. Chris@40: Chris@40: * tests/virtual_io_test.c Chris@40: Add a PAF/PCM_24 test and verify the file length is not negative Chris@40: immediately after openning the file for write. Chris@40: Chris@40: 2009-10-18 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: When writing loop lengths, adjust the end position by one to make up for Chris@40: Microsoft's screwed up spec. Thanks to Olivier Tristan for the patch. Chris@40: Chris@40: 2009-10-14 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Apply patch from Uli Franke allowing FLAC files to be encoded at any sample Chris@40: rate. Chris@40: Chris@40: 2009-10-09 Erik de Castro Lopo Chris@40: Chris@40: * src/nist.c Chris@40: Fix parsing of odd ulaw encoded file provided by Jan Silovsky. Chris@40: Chris@40: * configure.ac Chris@40: Insist on libvorbis >= 1.2.3. Earlier verions have bugs that cause the Chris@40: libsndfile test suite to fail on MIPS, PowerPC and others. Chris@40: See: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=549899 Chris@40: Chris@40: 2009-10-06 Erik de Castro Lopo Chris@40: Chris@40: * man/sndfile-convert.1 Chris@40: Fix warning from Debian's lintian checks. Chris@40: Chris@40: * man/sndfile-cmp.1 man/sndfile-jackplay.1 man/sndfile-metadata-get.1 Chris@40: man/Makefile.am Chris@40: Add three new minimal manpages and hook into build. Chris@40: Chris@40: 2009-10-05 Erik de Castro Lopo Chris@40: Chris@40: * tests/test_wrapper.sh.in Chris@40: Don't run cpp_test on x86_64-w64-mingw32. Chris@40: Chris@40: 2009-09-28 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.tpl Chris@40: On windows, make sure the open() function doesn't get called with a third Chris@40: parameter of 0 which fails for no good reason. Also make sure this third Chris@40: parameter doesn't get called with S_IRGRP when compiling for windows because Chris@40: Wine complains. Chris@40: Chris@40: * src/sndfile.hh Chris@40: Add a SndfileHandle constructor for windows that takes a 'const wchar_t *' Chris@40: string. Chris@40: Chris@40: * doc/FAQ.html Chris@40: Add Q/A : I'm cross compiling libsndfile for another platform. How can I Chris@40: run the test suite? Chris@40: Chris@40: * src/create_symbols_file.py src/Makefile.am Chris@40: Add Symbols.static target, a list of symbols, one per line. Chris@40: Chris@40: 2009-09-27 Erik de Castro Lopo Chris@40: Chris@40: * tests/test_wrapper.sh.in Chris@40: Update to allow all tests to be gathered up into a testsuite tarball and Chris@40: then be run using this script. Chris@40: Chris@40: * build-test-tarball.mk.in Chris@40: Add a Make script to build a tarball of all the test binaries and the test Chris@40: wrapper script. This is useful for cross compiling; you can build the Chris@40: binaries, build test test tarball and transfer the test tarball to the Chris@40: target machine for testing. Chris@40: Chris@40: 2009-09-26 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/*.c Chris@40: Modify SF_FILE struct to allow it to carry either 8-bit or 16-bit strings Chris@40: for the file path, directory and name. Fixes for this change throughout. Chris@40: Chris@40: * src/windows.c src/Makefile.am Chris@40: New file defining new windows only public function sf_wchar_open() which Chris@40: takes a 'const wchar_t *' string (LPCWSTR) for the file name parameter. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Add SF_CHANNEL_MAP_ABISONIC_* entries. Chris@40: Add windows only defintion for sf_wchar_open(). Chris@40: Chris@40: * src/create_symbols_file.py Chris@40: Add sf_wchar_open() to the list of public symbols (windows only). Chris@40: Chris@40: * tests/locale_test.c Chris@40: Add a wchar_test() to test sf_wchar_open(). Chris@40: Chris@40: 2009-09-25 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/*.c Chris@40: Split file stuff into PSF_FILE struct within the SF_PRIVATE struct. Chris@40: Chris@40: 2009-09-23 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/voc.c Chris@40: When a byte is needed, use unsigned char. Chris@40: Chris@40: * src/ima_oki_adpcm.c src/broadcast.c src/test_ima_oki_adpcm.c Chris@40: Include sfconfig.h to prevent compile errors with MinGW compilers. Chris@40: Chris@40: * configure.ac Chris@40: Remove AM_CONFIG_HEADER due to warnings from autoconf 2.64. Chris@40: Chris@40: * tests/locale_test.c Chris@40: Update to work with xx_XX.UTF-8 style locales. Refactoring. Chris@40: Chris@40: 2009-09-22 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Set __USE_MINGW_ANSI_STDIO to 1 when compiling using MinGW compilers. Chris@40: Remove unneeded AC_SUBST. Chris@40: Report Host CPU/OS/vendor. Chris@40: Chris@40: 2009-09-19 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix error message string. Chris@40: Chris@40: * src/flac.c Chris@40: Add 88200 to the list of supported sample rates. Chris@40: Chris@40: * src/ogg.c Chris@40: Fix compiler warning when using gcc-4.5.0. Chris@40: Chris@40: * programs/sndfile-info.c tests/utils.tpl Chris@40: Remove WIN32 snprintf #define. Chris@40: Chris@40: * src/ima_adpcm.c Chris@40: Fix minor bug in aiff_ima_encode_block. Thanks to Denis Fileev for finding Chris@40: this. Chris@40: Chris@40: 2009-09-16 Erik de Castro Lopo Chris@40: Chris@40: * src/caf.c Chris@40: Use the correct C99 format specifier for int64_t. Chris@40: Chris@40: * M4/endian.m4 Chris@40: Fix detection of CPU endian-ness when cross compiling. Thanks to Pierre Chris@40: Ossman for the bug report. Chris@40: Chris@40: * src/caf.c src/sndfile.c Chris@40: Fix reading and writing of PEAK chunks in CAF files. Chris@40: Chris@40: * tests/peak_chunk_test.c tests/test_wrapper.sh.in Chris@40: Run peak_chunk_test on CAF files. Chris@40: Chris@40: 2009-09-15 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/wav.c Chris@40: Use the correct C99 format specifier for int64_t. Chris@40: Chris@40: 2009-08-30 Erik de Castro Lopo Chris@40: Chris@40: * src/rf64.c src/sndfile.c src/wav.c src/wav_w64.h Chris@40: Apply a patch (massaged slightly) from Uli Franke adding handling of the Chris@40: BEXT chunk in RF64 files. Chris@40: Chris@40: * tests/command_test.c Chris@40: Update channel_map_test() function so WAV test passes. Chris@40: Chris@40: * src/rf64.c Chris@40: Add channel mapping and ambisonic support. Chris@40: Chris@40: * src/sndfile.h Chris@40: Add comments showing correspondance between libsndfile channel map Chris@40: defintiions and those used by Apple and MS. Chris@40: Chris@40: Add handling of reading/writing channel map info. Chris@40: Chris@40: * tests/command_test.c tests/test_wrapper.sh.in Chris@40: Update channel map tests. Chris@40: Chris@40: 2009-07-29 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add function psf_isprint() a replacement for the standard C isprint() Chris@40: function which ignores any locale settings and treats all input as ASCII. Chris@40: Chris@40: * src/(aiff|common|rf64|sd2|strings|svx|wav).c Chris@40: Use psf_isprint() instead of isprint(). Chris@40: Chris@40: 2009-07-13 Erik de Castro Lopo Chris@40: Chris@40: * src/command.c Chris@40: Add string descriptions for SF_FORMAT_RF64 and SF_FORMAT_MPC2K. Chris@40: Chris@40: 2009-06-30 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-play.c Chris@40: Allow use of Open Sound System audio output under FreeBSD. Chris@40: Chris@40: 2009-06-24 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Add patch from Conrad Parker to add --disable-jack. Chris@40: Chris@40: 2009-05-28 Erik de Castro Lopo Chris@40: Chris@40: * src/alaw.c src/float32.c src/htk.c src/pcm.c src/sds.c src/ulaw.c Chris@40: Fix bugs where invalid files can cause a divide by zero error (SIGFPE). Chris@40: Thanks to Sami Liedes for reporting this a Debian bug #530831. Chris@40: Chris@40: 2009-05-26 Erik de Castro Lopo Chris@40: Chris@40: * src/chanmap.[ch] Chris@40: New files for channel map decoding/encoding. Chris@40: Chris@40: 2009-05-25 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/sndfile.h.in Chris@40: Fix MSVC definition of sf_count_t. Chris@40: Chris@40: 2009-05-24 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_w64.[ch] Chris@40: Add wavex_channelmask to WAV_PRIVATE struct and add a function to convert Chris@40: an array of SF_CHANNEL_MASK_* values into a bit mask for use in WAV files. Chris@40: Chris@40: * src/wav.c Chris@40: Add ability to write the channel mask. Chris@40: Chris@40: 2009-05-23 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-info.c Chris@40: Add -c command line option to dump the channel map information. Chris@40: Chris@40: * src/wav_w64.c Chris@40: Don't bail from parser if channel map bitmask is faulty. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Remove error code SFE_W64_BAD_CHANNEL_MAP which is not needed any more. Chris@40: Chris@40: * src/sndfile.c Chris@40: On SFC_SET_CHANNEL_MAP_INFO pass the channel map command down to container's Chris@40: command handler. Chris@40: Chris@40: 2009-05-22 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/common.h src/sndfile.c src/wav_w64.c Chris@40: Apply a patch from Lennart Poettering (PulseAudio) to allow reading of Chris@40: channel data in WAV and W64 files. Chris@40: Add a test for the above. Chris@40: Chris@40: 2009-05-20 Erik de Castro Lopo Chris@40: Chris@40: * src/FAQ.html Chris@40: Update the section about pre-compiled binaries for Win64. Chris@40: Chris@40: 2009-05-14 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/test_conversions.c Chris@40: Be more careful when including so compiling on pre-C99 platforms Chris@40: (hello Slowlaris) might actually work. Chris@40: Chris@40: * NEWS README doc/*.html Chris@40: Updates for 1.0.20. Chris@40: Chris@40: 2009-04-21 Erik de Castro Lopo Chris@40: Chris@40: * src/voc.c Chris@40: Fix a bug whereby opening a specially crafted VOC file could result in a Chris@40: heap overflow. Thanks to Tobias Klein (http://www.trapkit.de) for reporting Chris@40: this issue. Chris@40: Chris@40: * src/aiff.c Chris@40: Fix potential (heap) buffer overflow when parsing 'MARK' chunk. Chris@40: Chris@40: 2009-04-12 Erik de Castro Lopo Chris@40: Chris@40: * tests/stdin_test.c Chris@40: Check psf->error after opening file. Chris@40: Chris@40: * src/file_io.c Chris@40: Fix obscure seeking bug reported by Hugh Secker-Walker. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Add check of sf_error to test_open_file_or_die(). Chris@40: Chris@40: * src/sndfile.c Chris@40: Clear error if opening resource fork fails. Chris@40: Chris@40: 2009-04-11 Erik de Castro Lopo Chris@40: Chris@40: * tests/alaw_test.c tests/locale_test.c tests/ulaw_test.c Chris@40: Cleanup output. Chris@40: Chris@40: 2009-03-25 Erik de Castro Lopo Chris@40: Chris@40: * src/float32.c Chris@40: Fix f2s_clip_array. Chris@40: Chris@40: 2009-03-24 Erik de Castro Lopo Chris@40: Chris@40: * src/float32.c Chris@40: In host_read_f2s call convert instead of f2s_array. Chris@40: Chris@40: * src/ima_adpcm.c Chris@40: Remove dead code. Chris@40: Chris@40: * src/test_ima_oki_adpcm.c examples/generate.c tests/dither_test.c Chris@40: tests/dwvw_test.c tests/fix_this.c tests/generate.c Chris@40: tests/multi_file_test.c Chris@40: Minor fixes. Chris@40: Chris@40: 2009-03-23 Erik de Castro Lopo Chris@40: Chris@40: * M4/shave.m4 shave.in Chris@40: Pulled update from upstream. Chris@40: Chris@40: 2009-03-19 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Add pointers to example programs in source code tarball. Chris@40: Chris@40: 2009-03-17 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Define SF_PLATFORM_S64 for non-gcc compilers with 'long long' type. Chris@40: Chris@40: * configure.ac Chris@40: Add documentation for --disable-external-libs and improve error handling Chris@40: for that option. Chris@40: Chris@40: * src/sndfile.c src/sndfile.h.in src/create_symbols_file.py Chris@40: Add public function sf_version_string. Chris@40: Chris@40: * tests/sfversion.c Chris@40: Test function sf_version_string. Chris@40: Chris@40: * M4/shave.m4 shave-libtool.in shave.in Chris@40: Add new files from 'git clone git://git.lespiau.name/shave'. Chris@40: Chris@40: * configure.ac Chris@40: Enable shave. Chris@40: Chris@40: * src/Makefile.am src/binheader_writef_check.py Octave/* Chris@40: Shave related tweaks. Chris@40: Chris@40: 2009-03-15 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/caf.c src/sndfile.c Chris@40: Add SF_MAX_CHANNELS (set to 256) and use it. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Check for either _MSCVER or _MSC_VER being defined. Chris@40: Chris@40: 2009-03-04 Erik de Castro Lopo Chris@40: Chris@40: * tests/vorbis_test.c Chris@40: Relax test slighly to allow test to pass on more CPUs etc. Chris@40: Chris@40: 2009-03-03 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Detect vorbis_version_string() correctly. Chris@40: Chris@40: 2009-03-02 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Add a 'See Also' section with a link to sndfile-tools. Chris@40: Chris@40: * NEWS README doc/*.html Chris@40: Updates for 1.0.19 release. Chris@40: Chris@40: * configure.ac Chris@40: Fix --enable-external-libs logic. Chris@40: Chris@40: 2009-03-01 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix resource leak and potential read beyond end of buffer. Chris@40: Chris@40: * src/nist.c Chris@40: Fix reading of header value sample_n_bytes. Chris@40: Chris@40: * src/sd2.c src/wav.c Chris@40: Fix potential read beyond end of buffer. Chris@40: Chris@40: * src/sndfile.c src/svx.c Chris@40: Check return values of file_io functions. Chris@40: Chris@40: * tests/win32_test.c Chris@40: Fix resource leak. Chris@40: Chris@40: * configure.ac Chris@40: Detect the presence/absence of vorbis_version_string() in libvorbis. Chris@40: Chris@40: * src/ogg.c Chris@40: Only call vorbis_version_string() from libvorbis if present. Chris@40: Chris@40: 2009-02-24 Erik de Castro Lopo Chris@40: Chris@40: * tests/win32_test.c Chris@40: Don't use sprintf, even on windows. Chris@40: Chris@40: * src/aiff.c src/rf64.c src/wav.c Chris@40: Eliminate dead code, more validation of data read from file. Chris@40: Chris@40: 2009-02-22 Erik de Castro Lopo Chris@40: Chris@40: * src/ima_adpcm.c Chris@40: Clamp values to a valid range before indexing ima_step_size array. Chris@40: Chris@40: * src/GSM610/*.c tests/*c programs/*.c src/audio_detect.c Chris@40: Don't include un-needed headers. Chris@40: Chris@40: * programs/sndfile-info.c Chris@40: Remove dead code. Chris@40: Chris@40: * tests/test_wrapper.sh.in Chris@40: Add 'set -e' so the script exits on error. Chris@40: Chris@40: * src/test_ima_oki_adpcm.c Chris@40: Fix read beyond end of array. Chris@40: Chris@40: * tests/win32_test.c Chris@40: Add missing close on file descriptor. Chris@40: Chris@40: * src/nist.c programs/sndfile-metadata-set.c Chris@40: Fix 'unused variable' warnings. Chris@40: Chris@40: * src/aiff.c Chris@40: Fix potential memory leak in handling of 'MARK' chunk. Chris@40: Remove un-needed test (unsigned > 0). Chris@40: Chris@40: * src/sd2.c Chris@40: Improve handling of heap allocated buffer. Chris@40: Chris@40: * src/sndfile.c Chris@40: Remove un-needed test (always true). Chris@40: Chris@40: * src/wav.c src/rf64.c Chris@40: Ifdef out dead code that will be resurected some time in the future. Chris@40: Chris@40: * src/wav.c src/w64.c src/xi.c Chris@40: Handle error return values from psf_ftell. Chris@40: Chris@40: * src/wav_w64.c Chris@40: Fix handling and error checking of MSADPCM coefficient arrays. Chris@40: Chris@40: * regtest/*.c Chris@40: Bunch of fixes. Chris@40: Chris@40: * src/test_file_io.c Chris@40: Use snprintf instead of strncpy in test program. Chris@40: Chris@40: 2009-02-21 Erik de Castro Lopo Chris@40: Chris@40: * src/sd2.c Chris@40: Validate data before using. Chris@40: Chris@40: * src/caf.c Chris@40: Validate channels per frame value before using, fixing a possible integer Chris@40: overflow bug, leading to a possible heap overflow. Found by Alin Rad Pop of Chris@40: Secunia Research (CVE-2009-0186). Chris@40: Chris@40: 2009-02-20 Erik de Castro Lopo Chris@40: Chris@40: * Octave/octave_test.sh Chris@40: Unset TERM environment variable and export LD_LIBRARY_PATH. Chris@40: Chris@40: 2009-02-16 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: In windows code, cast LPVOID to 'char*' in printf. Chris@40: Chris@40: 2009-02-15 Erik de Castro Lopo Chris@40: Chris@40: * M4/octave.m4 Chris@40: Clear the TERM environment before evaluating anything in Octave. This works Chris@40: around problems that might occur if a users TERM settings are incorrect. Chris@40: Thanks to Rob Til Freedmen for helping to debug this. Chris@40: Chris@40: * src/wav.c Chris@40: Handle four zero bytes as a marker within a LIST or INFO chunk. Chris@40: Thanks to Rogério Brito for supplying an example file. Chris@40: Chris@40: 2009-02-14 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/*.c Chris@40: Use C99 snprintf everywhere. Chris@40: Chris@40: 2009-02-11 Erik de Castro Lopo Chris@40: Chris@40: * tests/test_wrapper.sh.in Chris@40: New file to act as the template for the test wrapper script. Chris@40: Chris@40: * configure.ac Chris@40: Generate tests/test_wrapper.sh from the template. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Replace all tests with a single invocation of the test wrapper script. Chris@40: Chris@40: 2009-02-09 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg.c Chris@40: Record vorbis library version string. Chris@40: Chris@40: * configure.ac Chris@40: Require libvorbis >= 1.2.2. Chris@40: Chris@40: * M4/endian.m4 Chris@40: Fix bracketing of function for autoconf 2.63. Thanks to Richard Ash. Chris@40: Chris@40: * M4/octave.m4 M4/mkoctfile_version.m4 Chris@40: Clean up AC_WITH_ARG usage using AC_HELP_STRING. Chris@40: Chris@40: 2009-02-08 Erik de Castro Lopo Chris@40: Chris@40: * Octave/Makefile.am Chris@40: Use $(top_buildir) instead of $(builddir) which may not be defined. Chris@40: Chris@40: * M4/octave.m4 Chris@40: Improve logic and status reporting. Chris@40: Chris@40: 2009-02-07 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac AUTHORS NEWS README doc/*.html Chris@40: Final tweaks for 1.0.18 release. Chris@40: Chris@40: 2009-02-03 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-convert.c Chris@40: Add 'htk' to the list of convert formats. Chris@40: Chris@40: * programs/sndfile-info.c Chris@40: Simplify get_signal_max using SFC_CALC_SIGNAL_MAX command. Chris@40: Increase size of files for which signal max will be calculated. Chris@40: Chris@40: 2009-01-14 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Fix links for SoX and WavPlay. Thanks to Daniel Griscom. Chris@40: Chris@40: 2009-01-11 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-metadata-get.c Chris@40: Make valgrind clean. Chris@40: Clean up temp string array usage. Chris@40: Error out if trying to update coding history in RDWR mode. Chris@40: Chris@40: 2009-01-10 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Fix links to versions of the LGPL. Chris@40: Chris@40: 2008-12-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/string_test.c Chris@40: Add test for RDWR mode where the file ends up shorter than when it was Chris@40: opened. Chris@40: Chris@40: * src/wav.c Chris@40: Truncate the file on close for RDWR mode where the file ends up shorter Chris@40: than when it was opened. Chris@40: Chris@40: 2008-11-30 Erik de Castro Lopo Chris@40: Chris@40: * M4/add_cflags.m4 Chris@40: Fix problem with quoting of '#include'. Chris@40: Chris@40: * M4/add_cxxflags.m4 configure.ac Chris@40: Add new file M4/add_cxxflags.m4 and use it in configure.ac. Chris@40: Chris@40: 2008-11-19 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-info.c Chris@40: Apply patch from Conrad Parker to calculate and display total duration when Chris@40: more than one file is dumped. Chris@40: Chris@40: 2008-11-10 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/Makefile.am Chris@40: Tweaks to generation of Symbols files. Chris@40: Chris@40: * tests/win32_ordinal_test.c Chris@40: Update tests for above changes. Chris@40: Chris@40: 2008-11-06 Erik de Castro Lopo Chris@40: Chris@40: * programs/common.c Chris@40: When merging broadcast info, make sure to clear the destination field Chris@40: before copying in the new data. Chris@40: Chris@40: * programs/test-sndfile-metadata-set.py Chris@40: Add test for the above. Chris@40: Chris@40: * src/broadcast.c Chris@40: Fix checking of required coding_history_size. Chris@40: Chris@40: 2008-10-28 Erik de Castro Lopo Chris@40: Chris@40: * tests/command_test.c Chris@40: Add test to detect if coding history is truncated. Chris@40: Chris@40: * src/broadcast.c Chris@40: Fix truncation of coding history. Chris@40: Chris@40: 2008-10-27 Erik de Castro Lopo Chris@40: Chris@40: * tests/command_test.c Chris@40: Add broadcast_coding_history_size test. Chris@40: Chris@40: * programs/*.[ch] Chris@40: Use SF_BROADCAST_INFO_VAR to manipulate larger 'bext' chunks. Chris@40: Chris@40: * src/rf64.c Chris@40: Add code to prevent infinite loop on malformed file. Chris@40: Chris@40: * src/common.h src/sndfile.c src/w64.c src/wav_w64.c Chris@40: Rationalize and improve error handling when parsing 'fmt ' chunk. Chris@40: Chris@40: * M4/octave.m4 Chris@40: Simplify and remove cruft. Chris@40: Check for correct Octave version. Chris@40: Chris@40: * Octave/* Chris@40: Reduce 3 C++ files to one, fix build for octave 3.0, fix build. Chris@40: Chris@40: * Octave/sndfile.cc Octave/PKG_ADD Chris@40: Add Octave function sfversion which returns the libsndfile version that the Chris@40: module is linked against. Chris@40: Chris@40: * Octave/Makefile.am Chris@40: Bunch of build and 'make distcheck' fixes. Chris@40: Chris@40: 2008-10-26 Erik de Castro Lopo Chris@40: Chris@40: * programs/common.c Chris@40: Return 1 if SFC_SET_BROADCAST_INFO fails. Chris@40: Chris@40: * programs/test-sndfile-metadata-set.py Chris@40: Update for new programs directory, exit on any error. Chris@40: Chris@40: * tests/error_test.c Chris@40: Fix failure behaviour in error_number_test. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add error number SFE_BAD_BROADCAST_INFO_SIZE. Chris@40: Chris@40: * src/* Chris@40: Reimplement handling of broadcast extentioon chunk in WAV/WAVEX files. Chris@40: Chris@40: * src/broadcast.c Chris@40: Fix generation of added coding history. Chris@40: Chris@40: 2008-10-25 Erik de Castro Lopo Chris@40: Chris@40: * programs/sndfile-metadata-get.c programs/sndfile-info.c Chris@40: Exit with non-zero on errors. Chris@40: Chris@40: 2008-10-21 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-to-text.c examples/Makefile.am Chris@40: Add a new example program and hook it into the build. Chris@40: Chris@40: * examples/ programs/ Chris@40: Add a new directory programs and move sndfile-info, sndfile-play and other Chris@40: real programs to the new directory, leaving example programs where they Chris@40: were. Chris@40: Chris@40: 2008-10-20 Erik de Castro Lopo Chris@40: Chris@40: * tests/Makefile.am Chris@40: Automake 1.10 MinGW cross compiling fixes. Chris@40: Chris@40: 2008-10-19 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Remove call to deprecated function snd_pcm_sw_params_get_xfer_align. Chris@40: Fix gcc-4.3 compiler warnings. Chris@40: Chris@40: * tests/command_test.c Chris@40: Fix a valgrind warning. Chris@40: Chris@40: * tests/error_test.c tests/multi_file_test.c tests/peak_chunk_test.c Chris@40: tests/pipe_test.tpl tests/stdio_test.c tests/win32_test.c Chris@40: Fix gcc-4.3 compiler warnings. Chris@40: Chris@40: 2008-10-17 Erik de Castro Lopo Chris@40: Chris@40: * src/broadcast.c Chris@40: Fix termination of desitination string in strncpy_crlf. Chris@40: When copying BROADCAST_INFO chunk, make sure destination gets correct line Chris@40: endings. Chris@40: Chris@40: * examples/common.c Chris@40: Fix copying of BROADCAST_INFO coding_history field. Chris@40: Chris@40: 2008-10-13 Erik de Castro Lopo Chris@40: Chris@40: * tests/command_test.c Chris@40: Add test function instrument_rw_test, but don't hook it into the testing Chris@40: yet. Chris@40: Chris@40: * src/common.h src/command.c src/sndfile.c src/flac.c Chris@40: Error code rationalization. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Set psf->error to SFE_CMD_HAS_DATA when adding metadata via sf_command() Chris@40: fails due to psf->have_written being true. Chris@40: Chris@40: * doc/command.html Chris@40: Document the SFC_GET/SET_BROADCAST_INFO comamnds. Chris@40: Chris@40: 2008-10-10 Erik de Castro Lopo Chris@40: Chris@40: * tests/command_test.c Chris@40: Improve error reporting when '\0' is found in coding history. Chris@40: Fix false failure. Chris@40: Chris@40: 2008-10-09 Erik de Castro Lopo Chris@40: Chris@40: * src/broadcast.c Chris@40: Convert all coding history line endings to \r\n. Chris@40: Chris@40: * tests/command_test.c Chris@40: Add test to make sure all line endings are converted to \r\n. Chris@40: Chris@40: 2008-10-08 Erik de Castro Lopo Chris@40: Chris@40: * src/broadcast.c Chris@40: Changed the order of coding history fields. Chris@40: Chris@40: * tests/command_test.c Chris@40: Update bextch test to cope with previous change. Chris@40: Chris@40: * examples/common.c Chris@40: Add extra length check when copying broadcast info data. Chris@40: Chris@40: 2008-10-05 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.tpl tests/pcm_test.tpl Chris@40: Update check_file_hash_or_die to use 64 bit hash. Chris@40: Chris@40: * tests/checksum_test.c tests/Makefile.am Chris@40: Add new checksum_test specifically for lossy compression of headerless Chris@40: files. Chris@40: Chris@40: 2008-10-04 Erik de Castro Lopo Chris@40: Chris@40: * src/gsm610.c Chris@40: Seek to psf->dataoffset before decoding first block. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix detection of mpc2k files on big endian systems. Chris@40: Chris@40: 2008-10-03 Erik de Castro Lopo Chris@40: Chris@40: * src/broadcast.c Chris@40: Use '\r\n' newlines in Coding History as required by spec. Chris@40: Chris@40: 2008-10-02 Erik de Castro Lopo Chris@40: Chris@40: * src/test_conversions.c Chris@40: Use int64_t instead of 'long long'. Chris@40: Chris@40: 2008-10-01 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-metadata-set.c Chris@40: Remove --bext-coding-history-append command line option because it didn't Chris@40: really make sense. Chris@40: Chris@40: * examples/sndfile-metadata-(get|set).c Chris@40: Add usage messages. Chris@40: Chris@40: * examples/test-sndfile-metadata-set.py Chris@40: Start work on test coding history. Chris@40: Chris@40: 2008-09-30 Erik de Castro Lopo Chris@40: Chris@40: * README doc/win32.html Chris@40: Bring these up to date. Chris@40: Chris@40: * src/aiff.c Chris@40: Fix parsing of REX files. Chris@40: Chris@40: 2008-09-29 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Use intptr_t instead of long for return value of _get_osfhandle. Chris@40: Chris@40: * src/test_conversions.c src/test_endswap.tpl Chris@40: Fix printing of int64_t values. Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Fix win64 issues. Chris@40: Chris@40: * tests/win32_ordinal_test.c Chris@40: Fix calling of GetProcAddress with ordinal under win64. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Fix win64 issues. Chris@40: Chris@40: 2008-09-25 Erik de Castro Lopo Chris@40: Chris@40: * examples/* Chris@40: Rename copy_data.[ch] to common.[ch]. Fix build. Chris@40: Move code from sndfile-metadata-set.c to common.c. Chris@40: Chris@40: * examples/Makefile.am tests/Makefile.am regtest/Makefile.am Chris@40: Clean paths. Chris@40: Chris@40: 2008-09-19 Erik de Castro Lopo Chris@40: Chris@40: * doc/tutorial.html doc/Makefile.am Chris@40: Add file doc/tutorial.html and hook into build/dist system. Chris@40: Chris@40: 2008-09-14 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-metadata-set.c Chris@40: Clean up handling of bext command line params. Chris@40: Chris@40: 2008-09-13 Erik de Castro Lopo Chris@40: Chris@40: * src/w64.c Chris@40: Add handling/skipping of a couple of new chunk types. Chris@40: Chris@40: 2008-09-09 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Add -funsigned-char to CFLAGS if the compiler supports it. Chris@40: Chris@40: * examples/sndfile-metadata-(get|set).c Chris@40: Add handling for more metadata types. Chris@40: Chris@40: 2008-09-04 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add macros SF_CONTAINER, SF_CODEC and SF_ENDIAN useful for splitting format Chris@40: field of SF_INFO into component parts. Chris@40: Chris@40: * src/*.c Chris@40: Use new macros everywhere it is appropriate. Chris@40: Chris@40: 2008-09-02 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-bwf-set.c Chris@40: Massive reworking. Chris@40: Chris@40: 2008-08-24 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-bwf-set.c Chris@40: Add --info-auto-create-date command line option. Chris@40: Chris@40: * examples/sndfile-metadata-set.c examples/sndfile-metadata-get.c Chris@40: examples/Makefile.am examples/test-sndfile-bwf-set.py Chris@40: Rename sndfile-bwf-(set|get).c to sndfile-metadata-(set|get).c. Chris@40: Change command line args. Chris@40: Chris@40: 2008-08-23 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Allow 'PAD ' chunk to be modified in RDWR mode. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c Chris@40: Add handling (incomplete) for SFC_SET_ADD_HEADER_PAD_CHUNK. Chris@40: Chris@40: * tests/Makefile.am tests/write_read_test.tpl tests/header_test.tpl Chris@40: tests/misc_test.c Chris@40: Add tests for RF64. Chris@40: Chris@40: * src/rf64.c Chris@40: Fixes to make sure all tests pass. Chris@40: Chris@40: * tests/Makefile.am tests/string_test.c Chris@40: Add string tests (not yet passing). Chris@40: Chris@40: 2008-08-22 Erik de Castro Lopo Chris@40: Chris@40: * src/rf64.c Chris@40: First pass at writing RF64 now working. Chris@40: Chris@40: 2008-08-21 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Add SF_FORMAT_RF64 to format_map. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: More RF64 support code. Chris@40: Chris@40: * examples/sndfile-bwf-set.c Chris@40: Fix the month number in autogenerated date string and use hypen in date Chris@40: instead of slash. Chris@40: Chris@40: * examples/test-sndfile-bwf-set.py Chris@40: Update tests. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: When called with -i or -b option, operate on all files on command line, not Chris@40: just the first. Chris@40: Chris@40: 2008-08-19 Erik de Castro Lopo Chris@40: Chris@40: * src/rf64.c Chris@40: New file to handle RF64 (WAV like format supportting > 4Gig files). Chris@40: Chris@40: * src/sndfile.h.in src/common.h src/sndfile.c src/Makefile.am Chris@40: Hook the above into build so hacking can begin. Chris@40: Chris@40: * src/pcm.c Chris@40: Improve log message when pcm_init fails. Chris@40: Chris@40: * src/sndfile-info.c Chris@40: Only calculate and print 'Signal Max' if file is less than 10 megabytes in Chris@40: length. Chris@40: Chris@40: 2008-08-18 Erik de Castro Lopo Chris@40: Chris@40: * tests/string_test.c Chris@40: Polish string_multi_set_test. Chris@40: Chris@40: * src/wav.c Chris@40: In RDWR mode, pad the header if necessary (ie LIST chunk has moved or Chris@40: length has changed). Chris@40: Minor fixes in wav_write_strings. Chris@40: Write PAD chunk with default endian-ness, not a specific endian-ness. Chris@40: Chris@40: * examples/test-sndfile-bwf-set.py Chris@40: Add Python script to test sndfile-bwf-set/get. Chris@40: Chris@40: * examples/sndfile-bwf-set.c Chris@40: Clean up and fixes. Chris@40: Chris@40: * src/wav.c Chris@40: Merge function wavex_write_header into wav_write_header, deleting about 70 Chris@40: lines of code. Chris@40: Chris@40: * src/common.h Chris@40: Double value of SF_MAX_STRINGS. Chris@40: Chris@40: * tests/string_test.c Chris@40: Add string tests for WAVEX and RIFX files. Chris@40: Chris@40: * tests/command_test.c Chris@40: Add broadcast test for WAVEX files. Chris@40: Chris@40: 2008-08-17 Erik de Castro Lopo Chris@40: Chris@40: * tests/string_test.c Chris@40: Add a new string_rdwr_test (currently failing for WAV). Chris@40: Add a new string_multi_set_test (currently failing). Chris@40: Chris@40: * tests/command_test.c Chris@40: Add new broadcast_rdwr_test (currently failing). Chris@40: Chris@40: * src/wav.c Chris@40: Fix to WAV parser to allow 'bext' chunk to be updated in place. Chris@40: In wav_write_tailer, seek to psf->dataend if its greater than zero. Chris@40: Chris@40: * src/sndfile.c Chris@40: Make sure psf->have_written gets set correctly in mode SFM_RDWR. Chris@40: Chris@40: * configure.ac Chris@40: Test for and gettimeofday. Chris@40: Chris@40: * src/common.c Chris@40: Use gettimeofday() to initialize psf_rand_int32. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add unique_id field to SF_PRIVATE struct. Chris@40: Chris@40: * src/common.h src/sndfile.c src/wav.c src/wav_w64.[ch] Chris@40: Move wavex_ambisonic field from SF_PRIVATE struct to WAV_PRIVATE struct. Chris@40: Chris@40: * src/common.h src/strings.c Chris@40: Add function psf_location_string_count. Chris@40: Chris@40: 2008-08-16 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Test for localtime and localtime_r. Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: In function copy_metadata(), copy broadcast info if present. Chris@40: Chris@40: * examples/copy_data.[ch] examples/Makefile.am Chris@40: Break some functionality out of sndfile-convert.c so it can be used in Chris@40: examples/sndfile-bwf-set.c. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Add new function create_short_sndfile(). Chris@40: Chris@40: * examples/sndfile-bwf-set.c examples/sndfile-bwf-get.c Chris@40: examples/Makefile.am Chris@40: Add new files and hook into build. Chris@40: Chris@40: 2008-08-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Fix comments. Patch from Mark Glines. Chris@40: Chris@40: 2008-07-30 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: Use zero_data_test on Ogg/Vorbis files. Chris@40: Chris@40: * src/ogg.c Chris@40: Fix segfault when closing an Ogg/Vorbis file that has been opened for write Chris@40: but had no actual data written to it. Bug reported by Chinoy Gupta. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Make sure to run mist_test on Ogg/Vorbis files. Chris@40: Chris@40: 2008-07-19 Erik de Castro Lopo Chris@40: Chris@40: * regtest/Makefile.am Chris@40: Use SQLITE3_CFLAGS to locate sqlite headers. Chris@40: Chris@40: 2008-07-10 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html doc/FAQ.html Chris@40: Add notes about which versions of windows libsndfile works on. Chris@40: Chris@40: 2008-07-03 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: Add a test for correct handling of Ambisonic files. Thanks to Fons Chris@40: Adriaensen for the test. Chris@40: Chris@40: * src/wav.c src/wav_w64.c Chris@40: Fix handling of Ambisonic files. Thanks to Fons Adriaensen for the patch. Chris@40: Chris@40: 2008-06-29 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fix detection/enabling of external libs. Chris@40: Chris@40: * M4/extra_pkg.m4 M4/Makefile.am Chris@40: Add m4 macro PKG_CHECK_MOD_VERSION which is a hacked version Chris@40: PKG_CHECK_MODULES. The new macro prints the version number of the package Chris@40: it is searching for. Chris@40: Chris@40: 2008-06-14 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Apply a fix from Axel Röbel where if the second loop in the instrument Chris@40: chunk is none, the loop mode is written into the first loop. Chris@40: Chris@40: 2008-05-31 Erik de Castro Lopo Chris@40: Chris@40: * src/test_float.c src/test_main.(c|h) src/Makefile.am Chris@40: Add new file to test functions float32_(le|be)_(read|write) and Chris@40: double64_(le|be)_(read|write). Hook into build and testsuite. Chris@40: Chris@40: * src/double64.c src/float32.c Chris@40: Fix bugs in functions found by test added above. Thanks to Nicolas Castagne Chris@40: for reporting this bug. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Change time_reference_(low|high) entries of SF_BROADCAST_INFO struct to Chris@40: unsigned. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Print out the BEXT time reference in a sensible format. Chris@40: Chris@40: 2008-05-21 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Fuzz fixes. Chris@40: Chris@40: * src/ogg.c Chris@40: Add call to ogg_stream_clear to fix valgrind warning. Chris@40: Chris@40: * src/aiff.c Chris@40: Fix x86_64 compile issue. Chris@40: Chris@40: * configure.ac src/Makefile.am src/flac.c src/ogg.c Chris@40: Link to external versions of FLAC, Ogg and Vorbis. Chris@40: Chris@40: * tests/lossy_comp_test.c tests/ogg_test.c tests/string_test.c Chris@40: tests/vorbis_test.c tests/write_read_test.tpl Chris@40: Fix tests when configured with --disable-external-libs. Chris@40: Chris@40: * tests/external_libs_test.c tests/Makefile.am Chris@40: Add new test and hook into build and test suite. Chris@40: Chris@40: * src/command.c Chris@40: Use HAVE_EXTERNAL_LIBS to ensure that the SFC_GET_FORMAT_* commands return Chris@40: the right data when external libs are disabled. Chris@40: Chris@40: 2008-05-11 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Add a test for extending a file during write by seeking past the current Chris@40: end of file. Chris@40: Chris@40: * src/sndfile.c Chris@40: Allow seeking past end of file during write. Chris@40: Chris@40: 2008-05-10 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html doc/command.html Chris@40: Move all information about the sf_command function to command.html and add Chris@40: a link from documentation of the sf_read/write_raw function to the Chris@40: SFC_RAW_NEEDS_ENDSWAP command. Chris@40: Chris@40: * doc/index.html doc/FAQ.html doc/libsndfile.css Chris@40: Minor documentation tweaks. Chris@40: Chris@40: 2008-05-09 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Add AM_PROG_CC_C_O. Chris@40: Chris@40: 2008-04-27 Erik de Castro Lopo Chris@40: Chris@40: * tests/error_test.c Chris@40: Add a test to make sure if file opened with sf_open_fd, and then the file Chris@40: descriptor is closed, then sf_close will return an error code. Thanks to Chris@40: Dave Flogeras for the bug report. Chris@40: Chris@40: * src/sndfile.c Chris@40: Make sf_close return an error is the file descriptor is already closed. Chris@40: Chris@40: 2008-04-19 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Set object format to aout for OS/2. Thanks to David Yeo. Chris@40: Chris@40: * src/mpc2k.c src/sndfile.c src/sndfile.h.in src/common.h src/Makefile.am Chris@40: Add ability to read MPC 2000 file. Chris@40: Chris@40: * tests/write_read_test.tpl tests/misc_test.c tests/header_test.tpl Chris@40: tests/Makefile.am Chris@40: Add tests for MPC 2000 file format. Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Allow conversion to MPC 2000 file format. Chris@40: Chris@40: 2008-04-17 Erik de Castro Lopo Chris@40: Chris@40: * src/VORBIS/lib/codebook.c Chris@40: Sync from upstream SVN. Chris@40: Chris@40: * autogen.sh configure.ac Chris@40: Minor tweaks. Chris@40: Chris@40: 2008-04-13 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg.c Chris@40: Add a patch that fixes finding the length in samples of an Ogg/Vorbis file. Chris@40: The patch as supplied segfaulted and required many hours of debugging. Chris@40: Chris@40: * src/OGG/bitwise.c Chris@40: Sync from upstream SVN. Chris@40: Chris@40: 2008-04-09 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix up handling of 'APPL' chunk. Thanks to Axel Röbel for bringing up Chris@40: this issue. Chris@40: Chris@40: 2008-04-06 Erik de Castro Lopo Chris@40: Chris@40: * tests/*.c Chris@40: Add calls to sf_close() where needed. Chris@40: Chris@40: * tests/utils.tpl tests/multi_file_test.c Chris@40: Always pass 0 as the third argument to open when OS_IS_WIN32. Chris@40: Chris@40: 2008-04-03 Erik de Castro Lopo Chris@40: Chris@40: * src/test_* Chris@40: Add files test_main.[ch]. Chris@40: Collapse all tests into a single executable. Chris@40: Chris@40: 2008-03-30 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC Chris@40: Sync to upstream CVS. Chris@40: Chris@40: 2008-03-25 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Make SF_MIN and SF_MAX macros MinGW friendly. Chris@40: Chris@40: * examples/sndfile-(info|play).c Chris@40: Use Sleep function from instead of _sleep. Chris@40: Chris@40: * tests/locale_test.c Chris@40: Disable some tests when OS_IS_WIN32. Chris@40: Chris@40: * src/FLAC/src/share/replaygain_anal/replaygain_analysis.c Chris@40: src/FLAC/src/share/utf8/utf8.c Chris@40: MinGW fixes. Chris@40: Chris@40: 2008-03-11 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Tweaks to pcm16 <-> float conversion answer. Chris@40: Chris@40: 2008-02-10 Erik de Castro Lopo Chris@40: Chris@40: * src/OGG Chris@40: Sync to SVN upstream. Chris@40: Chris@40: * Makefile.am Chris@40: Add 'DISTCHECK_CONFIGURE_FLAGS = --enable-gcc-werror'. Chris@40: Chris@40: 2008-02-05 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-jackplay.c Chris@40: Minor tweaks to warning message printed when compiled without libjack. Chris@40: Chris@40: 2008-01-27 Erik de Castro Lopo Chris@40: Chris@40: * tests/peak_chunk_test.c Chris@40: Improve read_write_peak_test to find more errors. Inspired by example Chris@40: provided by Nicolas Castagne. Chris@40: Chris@40: * src/aiff.c Chris@40: Another SFM_RDWR fix shown up by above test. Chris@40: Chris@40: 2008-01-24 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix reading of COMM encoding string. Chris@40: Chris@40: * src/chunk.c src/common.h src/Makefile.am Chris@40: New file for storing and retrieving info about header chunks. Hook into Chris@40: build. Chris@40: Chris@40: * src/aiff.c Chris@40: Use new chunk logging to fix problem with AIFF in RDWR mode. Chris@40: Chris@40: 2008-01-22 Erik de Castro Lopo Chris@40: Chris@40: * src/command.c Chris@40: Add WVE to the list of major formats. Chris@40: Chris@40: * tests/aiff_rw_test.c Chris@40: Fix error reporting. Chris@40: Chris@40: 2008-01-21 Erik de Castro Lopo Chris@40: Chris@40: * src/common.[ch] Chris@40: Add internal functions str_of_major_format, str_of_minor_format, Chris@40: str_of_open_mode and str_of_endianness. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Fix reporting of errors in new_rdwr_XXXX_test. Chris@40: Chris@40: 2008-01-20 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Apply patch from Yair K. to fix compiles with OSS v4. Chris@40: Chris@40: * src/common.h src/float32.c src/double64.c Chris@40: Rename psf->float_enswap to psf->data_endswap. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/pcm.c Chris@40: Add command SFC_RAW_NEEDS_ENDSWAP. Chris@40: Chris@40: * tests/command.c Chris@40: Add test for SFC_RAW_NEEDS_ENDSWAP. Chris@40: Chris@40: * doc/command.html Chris@40: Document SFC_RAW_NEEDS_ENDSWAP. Chris@40: Chris@40: * tests/peak_chunk_test.c Chris@40: Add test function read_write_peak_test. Thanks to Nicolas Castagne for the Chris@40: bug report. Chris@40: Chris@40: 2008-01-09 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-cmp.c Chris@40: Add new example program contributed by Conrad Parker. Chris@40: Chris@40: * examples/Makefile.am Chris@40: Hook into build. Chris@40: Chris@40: * doc/development.html Chris@40: Change use or reconfigure.mk to autogen.sh. Chris@40: Chris@40: 2008-01-08 Erik de Castro Lopo Chris@40: Chris@40: * tests/win32_test.c Chris@40: Add another win32 test. Chris@40: Chris@40: * tests/util.tpl Chris@40: Add function file_length_fd which wraps fstat. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Run the multi_file_test on AU files. Chris@40: Chris@40: * tests/multi_file_test.c Chris@40: Use function file_length_fd() instead of file_length() to overcome stupid Chris@40: win32 bug. Fscking hell Microsoft sucks so much. Chris@40: Chris@40: 2008-01-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sd2.c Chris@40: Fix a rsrc parsing bug. Example file supplied by Uli Franke. Chris@40: Chris@40: 2007-12-28 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Allow use of either LGPL v2.1 or LGPL v3. Chris@40: Chris@40: * tests/header_test.tpl Chris@40: Add header_shrink_test from Axel Röbel. Chris@40: Chris@40: * src/wav.c Chris@40: Add fix from Axel Röbel for writing files with float data but no peak Chris@40: chunk (ie peak chunk gets removed after the file is opened). Chris@40: Chris@40: * src/aiff.c tests/header_test.tpl Chris@40: Apply similar fix to above for AIFF files. Chris@40: Chris@40: * src/wav.c tests/header_test.tpl Chris@40: Apply similar fix to above for WAVEX files. Chris@40: Chris@40: * src/command.c Chris@40: Add Ogg/Vorbis to 'get format' commands. Chris@40: Chris@40: 2007-12-16 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg.c Chris@40: Fix seeking on multichannel Ogg Vorbis files. Reported by Bodo. Chris@40: Set the default encoding quality to 0.4 instead of 4.0 (Bodo again). Chris@40: Chris@40: * tests/ogg_test.c Chris@40: Add stereo seek tests. Chris@40: Chris@40: 2007-12-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/ogg_test.c Chris@40: Add a test (currently failing) for stereo seeking on Ogg Vorbis files. Test Chris@40: case supplied by Bodo. Chris@40: Chris@40: * tests/utils.(def|tpl) Chris@40: Add compare_XXX_or_die functions. Chris@40: Chris@40: 2007-12-05 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix a bug where ignoring ssnd_fmt.offset and ssnd_fmt.blocksize caused Chris@40: misaligned reading of 24 bit data. Thanks to Uli Franke for reporting this. Chris@40: Chris@40: 2007-12-03 Erik de Castro Lopo Chris@40: Chris@40: * src/vox_adpcm.c src/ima_oki_adpcm.[ch] src/Makefile.am Chris@40: Merge in code from the vox-patch branch. Thanks to Robs for the patch Chris@40: which fixes a long standing bug in the VOX codec. Chris@40: Chris@40: 2007-12-01 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Fix handling of -override-sample-rate=X option. Chris@40: Chris@40: 2007-11-25 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg.c src/VORBIS Chris@40: Merge in Ogg Vorbis support from John ffitch of the Csound project. Chris@40: Chris@40: 2007-11-24 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Recognise files with 'vox6' extension as 6kHz OKI VOX ADPCM files. Also Chris@40: recognise 'vox8' as and 'vox' as 8kHz files. Chris@40: Chris@40: * configure.ac Chris@40: Detect libjack (JACK Audio Connect Kit). Chris@40: Chris@40: * examples/sndfile-jackplay.c examples/Makefile.am Chris@40: Add new example program to play sound files using the JACK audio server. Chris@40: Thanks to Jonatan Liljedahl for allowing this to be included. Chris@40: Chris@40: 2007-11-21 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Update support table with SD2 and FLAC. Chris@40: Chris@40: 2007-11-17 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix calculation of internal value psf->read_current when attempting to read Chris@40: past end of audio data. Chris@40: Remove redundant code. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Add read_raw_test to check that raw reads do not go past the end of the Chris@40: audio data section. Chris@40: Clean up error output messages. Chris@40: Chris@40: * src/sndfile.c Chris@40: Add code to prevent sf_read_raw from reading past the end of the audio data. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Add the wav_pcm lossy_comp_test. Chris@40: Chris@40: 2007-11-16 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/Makefile.am src/create_symbols_file.py Chris@40: More OS/2 fixes from David Yeo. Chris@40: Chris@40: 2007-11-12 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c tests/utils.tpl tests/benchmark.tpl Chris@40: Improve handling of requirements for O_BINARY as suggested by Ed Schouten. Chris@40: Chris@40: 2007-11-11 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Fix symbol class when SF_MIN is nested inside SF_MAX or vice versa. Chris@40: Chris@40: * src/create_symbols_file.py Chris@40: Add support for OS/2 contributed by David Yeo. Chris@40: Chris@40: 2007-11-05 Erik de Castro Lopo Chris@40: Chris@40: * M4/gcc_version.m4 Chris@40: Add macro AC_GCC_VERSION to detect GCC_MAJOR_VERSION and GCC_MINOR_VERSION. Chris@40: Chris@40: * configure.ac Chris@40: Use AC_GCC_VERSION to work around gcc-4.2 inline warning stupidity. Chris@40: See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33995 Chris@40: Use -fgnu-inline to prevent stupid warnings. Chris@40: Chris@40: 2007-11-03 Erik de Castro Lopo Chris@40: Chris@40: * tests/util.tpl Chris@40: Increase the printing width for print_test_name(). Chris@40: Chris@40: * tests/command_test.c tests/Makefile.am Chris@40: Add tests for correct updating of broadcast WAV coding history. Chris@40: Chris@40: * examples/sndfilehandle.cc examples/Makefile.am Chris@40: Add example program using the C++ SndfileHandle class. Chris@40: Chris@40: 2007-10-29 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add error codes SFE_ZERO_MAJOR_FORMAT and SFE_ZERO_MINOR_FORMAT. Chris@40: Chris@40: 2007-10-26 Erik de Castro Lopo Chris@40: Chris@40: * src/sd2.c Chris@40: Identify sample-rate/sample-size/channels by resource id. Chris@40: Chris@40: 2007-10-25 Erik de Castro Lopo Chris@40: Chris@40: * src/broadcast.c src/common.h src/sndfile.c Chris@40: Improvements to handling of broadcast info in WAV files. Thanks to Frederic Chris@40: Cornu and other for their input. Chris@40: Chris@40: 2007-10-24 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC/include/share/alloc.h Chris@40: Mingw fix for SIZE_T_MAX from Uli Franke. Chris@40: Chris@40: 2007-10-23 Erik de Castro Lopo Chris@40: Chris@40: * tests/open_fail_test.c tests/error_test.c tests/Makefile.am Chris@40: Move tests from open_fail_test.c to error_test.c and remove the former. Chris@40: Chris@40: 2007-10-22 Erik de Castro Lopo Chris@40: Chris@40: * tests/scale_clip_test.(def|tpl) Chris@40: Add tests for SFC_SET_INT_FLOAT_WRITE command. Chris@40: Chris@40: * doc/command.html Chris@40: Add docs for SFC_SET_INT_FLOAT_WRITE command. Chris@40: Chris@40: * examples/sndfile-play.c tests/dft_cmp.c Chris@40: Fix gcc-4.2 warning messages. Chris@40: Chris@40: 2007-10-21 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c Chris@40: Add command SFC_GET_CURRENT_SF_INFO. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/create_symbols_file.py Chris@40: Remove function sf_get_info (only ever in pre-release code). Chris@40: Chris@40: * tests/command_test.c Chris@40: Add test for SFC_GET_CURRENT_SF_INFO. Chris@40: Chris@40: 2007-10-15 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Add parsing of 'exif' chunks. Originally coded by Trent Apted. Chris@40: Chris@40: * configure.ac Chris@40: Put config stuff in Cfg directory. Chris@40: Remove check for inttypes.h. Chris@40: Chris@40: 2007-10-10 Erik de Castro Lopo Chris@40: Chris@40: * src/w64.c Chris@40: Fix writing of 'riff' chunk length and check for correct value in parser. Chris@40: Chris@40: 2007-09-20 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Link to MP3 FAQ entry. Chris@40: Chris@40: 2007-09-18 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Move the blocksize check to an earlier stage of flac_buffer_copy. Chris@40: Chris@40: 2007-09-12 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC Chris@40: Huge merge from FLAC upstream. Chris@40: Chris@40: 2007-09-10 Erik de Castro Lopo Chris@40: Chris@40: * examples/*.c Chris@40: Change license to all example programs to BSD. Chris@40: Chris@40: 2007-09-08 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC/include/FLAC/metadata.h Chris@40: Include to prevent compile error on OSX. Chris@40: Chris@40: * Octave/octave_test.sh Chris@40: Disable test on OSX. Can't get it to work. Chris@40: Chris@40: * src/flac.c Chris@40: Check the blocksize returned from the FLAC decoder to prevent buffer Chris@40: overruns. Reported by Jeremy Friesner. Thanks. Chris@40: Chris@40: 2007-09-07 Erik de Castro Lopo Chris@40: Chris@40: * Makefile.am M4/octave.m4 Chris@40: Fix build when Octave headers are not present. Chris@40: Chris@40: 2007-08-27 Erik de Castro Lopo Chris@40: Chris@40: * doc/development.html Chris@40: Add note about bzr repository directory looking empty. Chris@40: Chris@40: 2007-08-26 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Octave/* M4/octave_* Chris@40: Bunch of changes to add ability to build GNU Octave modules to read/write Chris@40: sound files using libsndfile from Octave. Chris@40: Chris@40: 2007-08-23 Erik de Castro Lopo Chris@40: Chris@40: * acinclude.m4 configure.ac ... Chris@40: Get rid of acinclude.m4 and replace it with an M4 directory. Chris@40: Chris@40: 2007-08-21 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Remove crufty Metrowerks compiler support. Allow header file to be compiled Chris@40: on windows with both GCC and microsoft compiler. Chris@40: Chris@40: 2007-08-19 Erik de Castro Lopo Chris@40: Chris@40: * tests/dft_cmp.[ch] tests/floating_point_test.tpl Chris@40: Clean up floating point tests. Chris@40: Chris@40: 2007-08-14 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix segfault when COMM chunk length is byte swapped. Chris@40: Chris@40: 2007-08-09 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/mat4.c src/mat5.c src/sndfile.c Chris@40: Add a generic SFE_CHANNEL_COUNT_ZERO error, remove format specific errors. Chris@40: Chris@40: * src/au.c Chris@40: Fix crash on AU files with zero channel count. Reported by Ben Alison. Chris@40: Chris@40: 2007-08-08 Erik de Castro Lopo Chris@40: Chris@40: * src/voc.c Chris@40: Fix bug in handling file supplied by Matt Olenik. Chris@40: Chris@40: 2007-07-31 Erik de Castro Lopo Chris@40: Chris@40: * src/OGG Chris@40: Merge from OGG upstream sources. Chris@40: Chris@40: 2007-07-25 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC Chris@40: Merge from FLAC upstream sources. Chris@40: Chris@40: 2007-07-15 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Fix memory leak; set copy parameter to FALSE in call to Chris@40: FLAC__metadata_object_vorbiscomment_append_comment. Chris@40: Chris@40: * src/common.[ch] Chris@40: Add function psf_rand_int32(). Chris@40: Chris@40: 2007-07-14 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC Chris@40: Merge from FLAC upstream sources. Chris@40: Chris@40: * src/strings.c tests/string_test.c tests/Makefile.am Chris@40: Make sure string tests for SF_STR_LICENSE actually works. Chris@40: Chris@40: 2007-07-13 Erik de Castro Lopo Chris@40: Chris@40: * tests/string_test.c Chris@40: Add ability to test strings stored in metadata secion of FLAC files. Chris@40: Chris@40: * src/string.c Chris@40: Fix logic for testing if audio data has been written and string is added. Chris@40: Make sure SF_STR_ALBUM actually works. Chris@40: Chris@40: * src/flac.c Chris@40: Finalize reading/writing string metadata. Tests pass. Chris@40: Chris@40: * src/sndfile.h.in tests/string_test.c src/flac.c Chris@40: Add string type SF_STR_LICENSE, update test and use for FLAC files. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Add definition for SFC_SET_SCALE_FLOAT_INT_WRITE command. Chris@40: Chris@40: * src/common.h src/double64.c src/float32.c src/sndfile.c Chris@40: Add support for SFC_SET_SCALE_FLOAT_INT_WRITE (still needs testing). Chris@40: Chris@40: 2007-07-12 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Apply patch from Ed Schouten to read artist and title metadata from FLAC Chris@40: files. Chris@40: Improve reporting of FLAC metadata. Chris@40: Chris@40: * src/sndfile.h.in tests/string_test.c src/flac.c Chris@40: Add string type SF_STR_ALBUM, update test and use for FLAC files. Chris@40: Chris@40: 2007-06-28 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC/* Chris@40: Merge from upstream CVS. Chris@40: Chris@40: 2007-06-16 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC/* Chris@40: Update from upstream CVS. Chris@40: Chris@40: 2007-06-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/cpp_test.cc Chris@40: Add extra tests for when the SndfileHandle constructor fails. Chris@40: Chris@40: * src/sndfile.hh Chris@40: Make sure failure to open the file in the constructor does not allow later Chris@40: calls to other methods to fail. Chris@40: Chris@40: 2007-06-10 Erik de Castro Lopo Chris@40: Chris@40: * tests/util.tpl Chris@40: Add function write_mono_file. Chris@40: Chris@40: * tests/generate.[ch] tests/Makefile.am Chris@40: Add files generate.[ch] and hook into build. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Add multi_seek_test. Chris@40: Chris@40: * src/flac.c Chris@40: Fix buffer overflow bug. Test provided by Jeremy Friesner and fix provided Chris@40: by David Viens. Chris@40: Chris@40: 2007-06-07 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Minor update. Chris@40: Chris@40: * configure.ac src/FLAC/src/libFLAC/ia32/Makefile.am src/Makefile.am Chris@40: Apply patch from Trent Apted make it compile on Intel MacOSX. Thanks Trent. Chris@40: Chris@40: 2007-05-28 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fix writing of MSGUID subtypes. Thanks to Bruce Sharpe. Chris@40: Chris@40: 2007-05-22 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fix array indexing bug raised by Bruce Sharpe. Chris@40: Chris@40: 2007-05-12 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC/src/share/getopt/getopt.c Chris@40: Fix Mac OSX / PowerPC compile warnings. Chris@40: Chris@40: * configure.ac Chris@40: Make sure WORDS_BIGENDIAN gets correctly defined for FLAC code. Chris@40: Chris@40: 2007-05-04 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Add Q/A about MP3 support. Chris@40: Chris@40: 2007-05-03 Erik de Castro Lopo Chris@40: Chris@40: * doc/new_file_type.HOWTO Chris@40: Minor updates. Chris@40: Chris@40: 2007-05-02 Erik de Castro Lopo Chris@40: Chris@40: * src/wve.c Chris@40: Fix a couple bad parameters with psf_log_printf. Chris@40: Chris@40: * src/pcm.c Chris@40: Improve error reporting. Chris@40: Chris@40: * src/common.h src/common.c Chris@40: Constify psf_hexdump. Chris@40: Chris@40: 2007-04-30 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC Chris@40: Ditch and re-import required FLAC code. Chris@40: Chris@40: * configure.ac Chris@40: Force FLAC__HAS_OGG variable to 1. Chris@40: Chris@40: * src/FLAC/src/libFLAC/stream_encoder.c Chris@40: Fix compiler warnings. Chris@40: Chris@40: 2007-04-23 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac tests/win32_ordinal_test.c Chris@40: Detect if win32 DLL is beging generated and only run win32_ordinal_test if Chris@40: true. Chris@40: Chris@40: * src/G72x/Makefile.am src/Makefile.am Chris@40: Use $(EXEEXT) where possible. Chris@40: Chris@40: 2007-04-18 Erik de Castro Lopo Chris@40: Chris@40: * src/wve.c src/common.h src/sndfile.c Chris@40: Complete definition of SfE_WVE_NO_WVE error message. Chris@40: Chris@40: * src/wve.c Chris@40: Fix error in files generated on big endian systems. Robustify parsing. Chris@40: Chris@40: 2007-04-16 Erik de Castro Lopo Chris@40: Chris@40: * src/double64.c Chris@40: Fix clipping of double to short conversions on 64 bit systems. Chris@40: Chris@40: * src/flac.c regtest/database.c tests/cpp_test.cc Chris@40: Fix compile warnings for 64 bit systems. Chris@40: Chris@40: 2007-04-15 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/wav_w64.c Chris@40: Use audio detect function when 'fmt ' chunk data is suspicious. Chris@40: Chris@40: * configure.ac Chris@40: Add ugly hack to remove -Werror from some Makefiles. Chris@40: Chris@40: 2007-04-14 Erik de Castro Lopo Chris@40: Chris@40: * src/GSM610/long_term.c src/macbinary3.c tests/cpp_test.cc Chris@40: Add patch from André Pang to clean up compiles on OSX. Chris@40: Chris@40: * src/wve.c src/common.h src/sndfile.c src/sndfile.h.in Chris@40: examples/sndfile-convert.c Chris@40: Merge changes from Reuben Thomas to improve WVE support. Chris@40: Chris@40: * tests/lossy_comp_test.c tests/Makefile.am Chris@40: Add tests for WVE files. Chris@40: Chris@40: 2007-04-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Add a static SndfileHandle::formatCheck method as suggested by Jorge Chris@40: Jiménez. Chris@40: Chris@40: 2007-04-09 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a bug in sf_error() where the function itself was being compared Chris@40: against zero. Add a check for a NULL return from peak_info_calloc. Fix a Chris@40: possible NULL dereference. Chris@40: Chris@40: 2007-04-07 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Turn off seekable flag when writing, return SFE_BAD_RDWR_FORMAT when Chris@40: opening file for RDWR. Chris@40: Chris@40: * src/sndfile.c Chris@40: Improve error message for SFE_BAD_RDWR_FORMAT. Chris@40: Chris@40: * src/mat4.c Chris@40: Fix array indexing issue. Thanks to Ben Allison (Nullsoft) for alerting me. Chris@40: Chris@40: 2007-03-05 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Add Q/A 19 on project files. Chris@40: Chris@40: 2007-03-01 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Guard agains MacOSX universal binary compiles. Chris@40: Chris@40: * doc/FAQ.html Chris@40: Add Q/A 18 and clean up Q3. Chris@40: Chris@40: 2007-02-22 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Add support for 'in24' files. Chris@40: Chris@40: 2007-02-13 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/wav_w64.c src/wav_w64.h Chris@40: Start work towards detecting ausio codec type from the actual audio data. Chris@40: Chris@40: * src/audio_detect.c src/test_audio_detect.c Chris@40: Add new file and its unit test. Chris@40: Chris@40: 2007-02-07 Erik de Castro Lopo Chris@40: Chris@40: * examples/cooledit-fixer.c examples/Makefile.am Chris@40: Remove old broken example program. Chris@40: Chris@40: 2007-02-06 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/sndfile.h.in src/create_symbols_file.py Chris@40: Add function sf_get_info. Chris@40: Chris@40: 2007-01-25 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: For ALSA, use the 'default' device instead of 'plughw:0'. Chris@40: Chris@40: 2007-01-22 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Allow writing of WAV/WAVEX 'BEXT' chunks in SFM_RDWR mode. Chris@40: Chris@40: 2007-01-21 Erik de Castro Lopo Chris@40: Chris@40: * doc/development.html doc/embedded_files.html man/sndfile-play.1 Chris@40: Minor documentation fixes. Thanks Reuben Thomas. Chris@40: Chris@40: 2006-12-16 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Add -override-sample-rate command line option. Chris@40: Chris@40: 2006-11-19 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: Force errno to zero at start of some tests. Chris@40: Chris@40: * src/sndfile.c Chris@40: Minor clean up of error handling. Chris@40: Chris@40: * configure.ac Chris@40: Remove an assembler test which was failing on OSX. Chris@40: Chris@40: 2006-11-15 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Fix the definition of SF_PLATFORM_S64 for MinGW. Chris@40: Chris@40: * src/FLAC/Makefile.am src/FLAC/share/grabbag/Makefile.am Chris@40: Fix path problems for MinGW. Chris@40: Chris@40: 2006-11-13 Erik de Castro Lopo Chris@40: Chris@40: * src/sfendian.h Chris@40: Add include guard. Chris@40: Chris@40: * src/Makefile.am src/flac.c Chris@40: Clean up include paths. Chris@40: Chris@40: * src/test_conversions.c Chris@40: New file to test psf_binheader_readf/writef functions. Chris@40: Chris@40: * src/Makefile.am src/test_file_io.c src/test_log_printf.c src/common.c Chris@40: Clean up unit testing. Chris@40: Chris@40: * src/common.c Chris@40: Fix a bug reading/writing 64 bit header fields. Thanks to Jonathan Woithe Chris@40: for reporting this. Chris@40: Chris@40: * src/test_conversions.c Chris@40: Complete unit test for above fix. Chris@40: Chris@40: 2006-11-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: More refactoring to clean up psf_open_file() and vairous sf_open() Chris@40: functions. Chris@40: Chris@40: 2006-11-09 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Apply a patch from Jonathan Woithe to allow opening of (malformed) WAV Chris@40: files of over 4 gigabytes. Chris@40: Chris@40: 2006-11-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Refactor function psf_open_file() to provide a single return point. Chris@40: Chris@40: * tests/misc_test.c Chris@40: Fix permission_test to ensure that read only file can be created. Chris@40: Chris@40: 2006-11-03 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add SF_PLATFORM_S64 macro as a platform independant way of doing signed 64 Chris@40: bit integers. Chris@40: Chris@40: * src/aiff.c src/svx.c src/wav.c Chris@40: Add warning in log if files are larger than 4 gigabytes in size. Chris@40: Chris@40: 2006-11-01 Erik de Castro Lopo Chris@40: Chris@40: * src/FLAC src/OGG confgure.ac src/Makefile.am Chris@40: Pull in all required FLAC and OGG code so external libraries are not Chris@40: needed. This makes compiling on stupid fscking Windoze easier. Chris@40: Chris@40: 2006-10-27 Erik de Castro Lopo Chris@40: Chris@40: * src/sd2.c Chris@40: Add workaround for switched sample rate and sample size. Chris@40: Chris@40: * src/wav.c Chris@40: Add workaround for excessively long coding history in the 'bext' chunk. Chris@40: Chris@40: 2006-10-23 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/wav.c doc/command.html Chris@40: Use SF_AMBISONIC_* instead of SF_TRUE/SF_FALSE. Chris@40: Chris@40: 2006-10-22 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/wav.c src/wav_w64.c src/common.h doc/command.html Chris@40: Apply a patch from Fons Adriaensen to allow writing on WAVEX Ambisonic Chris@40: files. Still needs a little tweaking before its ready for release. Chris@40: Chris@40: * src/*.c Chris@40: Use the UNUSED macro to prevent compiler warnings. Chris@40: Chris@40: 2006-10-19 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix a bug in parsing AIFF files with a slightly unusual 'basc' chunk. Thanks Chris@40: to David Viens for providing two example files. Chris@40: Chris@40: * src/common.(c|h) src/aiff.c Chris@40: Add a function psf_sanitize_string and use it in aiff.c. Chris@40: Chris@40: 2006-10-18 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_w64.c Chris@40: Apply a patch from Fons Adriaensen which fixes a minor WAVEX GUID issue. Chris@40: Chris@40: 2006-10-17 Erik de Castro Lopo Chris@40: Chris@40: * src/Makefile.am Chris@40: Fix problem related to recent test coverage changes. Chris@40: Chris@40: 2006-10-15 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac tests/Makefile.am Chris@40: Add --enable-test-coverage configure option. Chris@40: Chris@40: 2006-10-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Add an std::string SndfileHandle constructor. Chris@40: Chris@40: * tests/scale_clip_test.tpl Chris@40: Fix the 'make distcheck' target. Chris@40: Chris@40: 2006-10-03 Erik de Castro Lopo Chris@40: Chris@40: * src/double64.c src/float32.c Chris@40: Add optional clipping on float file data to int read data conversions. Chris@40: Chris@40: * tests/tests/scale_clip_test.(def|tpl) Chris@40: Add test for above new code. Chris@40: Chris@40: 2006-09-06 Erik de Castro Lopo Chris@40: Chris@40: * tests/aiff_rw_test.c Chris@40: Add 'MARK' chunks to make sure they are parsed correctly. Chris@40: Chris@40: 2006-09-05 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix parsing of MARK chunks. Many thanks to Sciss for generating files to Chris@40: help debug the problem. Chris@40: Chris@40: 2006-09-02 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Make the SF_MIN and SF_MAX macros at least partially type safe. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Fix overflow problems when ensuring that signalis not zero. Chris@40: Chris@40: 2006-08-31 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac docs/*.html Chris@40: Changes for release 1.0.17. Chris@40: Chris@40: 2006-08-08 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Remove inline from functions called by pointer. Thanks to Sampo Savolainen Chris@40: for notifying me of this. Chris@40: Chris@40: 2006-07-31 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Add writeSync method. Chris@40: Add copy constructor and assignment operator (thanks Daniel Schmitt). Chris@40: Add methods readRaw and writeRaw. Chris@40: Make read/write/readf/writef simple overlaods instead of templates (thanks Chris@40: to Trent Apted for suggesting this). Chris@40: Chris@40: * tests/cpp_test.cc Chris@40: Cleanup. Add tests. Chris@40: Chris@40: 2006-07-30 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Templatize the read/write/readf/writef methods as suggested by Lars Luthman. Chris@40: Prevent the potential leak of SNDFILE* pointers in the openRead/openWrite/ Chris@40: openReadWrite methods. Chris@40: Add const to SF_INFO pointer in Sndfile constructor. Chris@40: Make the destrictor call the close() method. Chris@40: Chris@40: * tests/cpp_test.cc Chris@40: Add more tests. Chris@40: Chris@40: 2006-07-29 Erik de Castro Lopo Chris@40: Chris@40: * tests/cpp_test.cc Chris@40: Remove the generated file so "make distcheck" passes. Chris@40: Chris@40: * src/Makefile.am Chris@40: Add sndfile.hh to distributed header files. Chris@40: Chris@40: * src/sndfile.hh Chris@40: Change the license for the C++ wrapper to modified BSD. Chris@40: Chris@40: 2006-07-28 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.hh Chris@40: Complete it. Chris@40: Chris@40: * tests/cpp_test.cc Chris@40: Add more tests. Chris@40: Chris@40: 2006-07-27 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.tpl Chris@40: Add extern C to generated header file. Chris@40: Chris@40: * src/sndfile.hh Chris@40: Work towards completing this. Chris@40: Chris@40: * tests/cpp_test.cc tests/Makefile.am Chris@40: Add a C++ test and hook into build. Chris@40: Chris@40: * configure.ac Chris@40: Add appropriate CXXFLAGS. Chris@40: Chris@40: 2006-07-26 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Test if compiler supports -Wpointer-arith. Chris@40: Chris@40: * src/common.c Chris@40: Fix a warning resulting from -Wpointer-arith. Chris@40: Chris@40: 2006-07-15 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Explicitly set endian-ness as well as setting 16 bit output. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Make sure to parse info if file fails to open. Chris@40: Chris@40: * src/sndfile.c Chris@40: Handle parse error a little better. Chris@40: Chris@40: * src/wav_w64.[ch] Chris@40: Minor clean up, add detection of IPP ITU G723.1. Chris@40: Chris@40: 2006-06-23 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Make sure psf->dataoffset gets reset to zero when openning headersless Chris@40: files based on the file name extension. Chris@40: Chris@40: 2006-06-21 Erik de Castro Lopo Chris@40: Chris@40: * tests/(command|lossy_comp|pcm|scale_clip)_test.c tests/fix_this.c Chris@40: tests/write_read_test.(tpl|def) Chris@40: Fix gcc-4.1 compiler warnings about "dereferencing type-punned pointer will Chris@40: break strict-aliasing rules". Chris@40: Chris@40: * examples/cooledit-fixer.c Chris@40: More fixes like above. Chris@40: Chris@40: 2006-06-20 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Fix a windows bug where the syserr string of SF_PRIVATE was not being set Chris@40: correctly. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a logic bug in sf_seek(). Thanks to Paul Davis for finding this. Chris@40: Chris@40: 2006-06-04 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fixed detection of S_IRGRP. Chris@40: Chris@40: 2006-05-30 Erik de Castro Lopo Chris@40: Chris@40: * sndfile-convert.c Chris@40: Add conversion SF_INSTRUMENT data when present. Chris@40: Chris@40: 2006-05-22 Erik de Castro Lopo Chris@40: Chris@40: * doc/development.html Chris@40: Removed references to tla on windows. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add separate void pointers for file containter and file codec data to Chris@40: SF_PRIVATE struct. Still need to move all existing fdata pointers. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Change the order of some tests. Chris@40: Chris@40: * src/aiff.c Chris@40: When writing 'AIFC' files, make sure get an 'FVER' gets added. Chris@40: Chris@40: * src/common.h src/(dwvw|flac|g72x|gsm610|ima_adpcm|ms_adpcm|paf|sds).c Chris@40: src/(sndfile|voc|vox_adpcm|xi).c Chris@40: Remove fdata field from SF_PRIVATE struct and replace it with codec_data. Chris@40: Chris@40: 2006-05-10 Erik de Castro Lopo Chris@40: Chris@40: * Win32/testprog.c Win32/Makefile.am Chris@40: Add a minimal win32 test program. Chris@40: Chris@40: * Win32/README-precompiled-dll.txt Mingw-make-dist.sh Chris@40: Update readme and Mingw build script. Chris@40: Chris@40: 2006-05-09 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac acinclude.m4 Chris@40: Minor fixes for Solaris. Chris@40: Chris@40: 2006-05-05 Erik de Castro Lopo Chris@40: Chris@40: * src/test_endswap.(def|tpl) Chris@40: Fix printf formatting for int64_t on 64 bit machines. Chris@40: Chris@40: 2006-05-04 Erik de Castro Lopo Chris@40: Chris@40: * src/binhead_check.py Chris@40: New file to check for bad parameters passed to psf_binheader_writef(). Chris@40: Chris@40: * src/Makefile.am Chris@40: Hook into test suite. Chris@40: Chris@40: * src/voc.c src/caf.c src/wav.c src/mat5.c src/mat4.c Chris@40: Fix bugs found by new test program. Chris@40: Chris@40: * src/double64.c Chris@40: Clean up double64_get_capability(). Chris@40: Chris@40: 2006-05-03 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_w64.c Chris@40: Fix a bug on x86_64 where an int was being passed via stdargs and being Chris@40: read using size_t which is 64 bits. Thenks to John ffitch for giving me a Chris@40: login on his box. Chris@40: Chris@40: 2006-05-02 Erik de Castro Lopo Chris@40: Chris@40: * src/caf.c src/double64.c examples/sndfile-info.c tests/virtual_io_test.c Chris@40: tests/utils.tpl Chris@40: Fix a couple of signed/unsigned problems. Chris@40: Chris@40: 2006-05-01 Erik de Castro Lopo Chris@40: Chris@40: * tests/command_test.c Chris@40: Add channel map tests. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add a pointer to the SF_PRIVATE struct and make sure it gets freed in Chris@40: sf_close(). Chris@40: Chris@40: 2006-04-30 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac doc/(command|index|api).html NEWS README Chris@40: Updates for 1.0.16 release. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Define enums for channel mapping. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Clean up usage of SF_INFO struct. Chris@40: Chris@40: 2006-04-29 Erik de Castro Lopo Chris@40: Chris@40: * tests/util.tpl Chris@40: Add function testing function exit_if_true(). Chris@40: Chris@40: * tests/floating_point_test.tpl Chris@40: Fix a problem where the test program was not exiting when the test failed. Chris@40: Chris@40: 2006-04-15 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/common.h src/command.c Chris@40: Implement new commands SFC_GET_SIGNAL_MAX and SFC_GET_MAX_ALL_CHANNELS. Chris@40: Chris@40: * doc/commands.html Chris@40: Document new commands. Other minor updates. Chris@40: Chris@40: * tests/peak_chunk_test.c Chris@40: Update tests for new commands. Chris@40: Chris@40: 2006-04-02 Erik de Castro Lopo Chris@40: Chris@40: * tests/peak_chunk_test.c Chris@40: Add test for RIFX and WAVEX files. Chris@40: Try and confuse the PEAK chunk writing by enabling and disabling it. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix a bug where enabling and disabling PEAK chunk was screwing up. Chris@40: Chris@40: 2006-03-31 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Add the block of 190 reserved bytes into this struct to allow for Chris@40: future expansion. Chris@40: Chris@40: * src/wav.c src/sndfile.c src/broadcast.c Chris@40: Significant cleanup of broadcast wave stuff. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Fix print message. Chris@40: Chris@40: * tests/command_test.c tests/Makefile.am Chris@40: Complete bext tests, hook test in test suite. Chris@40: Chris@40: 2006-03-30 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Make coding_history field of SF_BROADCAST_INFO struct a char array instead Chris@40: of a char pointer. Chris@40: Chris@40: * src/sndfile.c src/common.h src/wav.c Chris@40: Clean up knock on effects of above chnage. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Add -b command line option to usage message. Chris@40: Clean up output of broadcast wave info. Chris@40: Chris@40: * src/wav.c Chris@40: Ignore and skip the 'levl' chunk. Chris@40: Chris@40: 2006-03-26 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fix handling of --enable and --disable configure args. Thanks to Diego Chris@40: 'Flameeyes' Pettenò who sent the patch. Chris@40: Chris@40: 2006-03-22 Erik de Castro Lopo Chris@40: Chris@40: * doc/win32.html Chris@40: Make it really clear that although the MSVC++ cannot compile libsndfile, Chris@40: the precompiled DLL can be used in C++ programs compiled with MSVC++. Chris@40: Chris@40: 2006-03-18 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix bug in writing of INST chunk in AIFF files. Chris@40: Fix potential bug in writing MARK chunks. Chris@40: Chris@40: * src/sndfile.c Chris@40: Make sure the instrument chunk can only be written at the start of the file. Chris@40: Chris@40: * tests/command_test.c Chris@40: Add check of log buffer. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Add usage of space character to psf_binheader_writef. Chris@40: Chris@40: 2006-03-17 Erik de Castro Lopo Chris@40: Chris@40: * src/Makefile.am tests/Makefile.am Chris@40: Remove --source-time argument from autogen command lines. Chris@40: Chris@40: * src/broadcast.c Chris@40: New file for EBU Broadcast chunk in WAV files. Chris@40: Chris@40: * src/sndfile.c src/sndfile.h.in src/wav.c src/common.h Chris@40: Add patch from Paul Davis implementing read/write of the BEXT chunk. Chris@40: Chris@40: 2006-03-16 Erik de Castro Lopo Chris@40: Chris@40: * Win32/README-precompiled-dll.txt Chris@40: New file descibing how to use the precompiled DLL. Chris@40: Chris@40: * Win32/Makefile.am Chris@40: Add Win32/README-precompiled-dll.txt to EXTRA_DIST files. Chris@40: Chris@40: * configure.ac Chris@40: Bump version to 1.0.15. Chris@40: Chris@40: 2006-03-11 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: On read, only add the endian flag if the file is big endian. Chris@40: Chris@40: * src/ms_adpcm.c Chris@40: Fixed writing of APDCM coeffs in RIFX files. Chris@40: Chris@40: * tests/write_read_test.tpl tests/lossy_comp_test.c Chris@40: Add tests for RIFX files. Chris@40: Chris@40: 2006-03-10 Erik de Castro Lopo Chris@40: Chris@40: * Mingw-make-dist.sh Chris@40: Bunch of improvements. Chris@40: Chris@40: * doc/win32.html Chris@40: Update MinGW program versions. Chris@40: Chris@40: 2006-03-09 Erik de Castro Lopo Chris@40: Chris@40: * src/create_symbols_file.py Chris@40: Fix the library name in created win32 DEF file. Add correct DLL name for Chris@40: Cygwin DLL. Chris@40: Chris@40: * Win32/Makefile.am tests/Makefile.am Chris@40: Remove redundant files, add win32_ordinal_test to test suite. Chris@40: Chris@40: * tests/win32_ordinal_test.c Chris@40: Update to do test in cygsndfile-1.dll as well. Chris@40: Chris@40: * doc/win32.html Chris@40: Fix typo, mention that -mno-cygwin with the Cygwin compiler does not work. Chris@40: Chris@40: * src/wav.c src/wav_w64.c src/sndfile.c src/sndfile.h.in Chris@40: Apply large patch from Jesse Chappell which adds support for RIFX files. Chris@40: Chris@40: 2006-03-08 Erik de Castro Lopo Chris@40: Chris@40: * Makefile.am Chris@40: Add Mingw-make-dist.sh to the extra dist files. Chris@40: Chris@40: * configure.ac Chris@40: Fix setting SHLIB_VERSION_ARG for MinGW. Chris@40: Chris@40: * tests/win32_ordinal_test.c Chris@40: New test program to test that the win32 DLL ordinals agree with the DEF Chris@40: file. Chris@40: Chris@40: 2006-03-04 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add a static inline function to convert an int to a size_t. This will be Chris@40: a compile to nothing on 32 bit CPUs and a sign extension on 64 bit CPUs. Chris@40: Chris@40: * src/aiff.c src/avr.c src/common.c src/xi.c src/gsm610.c Chris@40: Fix an ia64 problem where a varargs function was being passed an int in Chris@40: some places and a size_t in other places. Chris@40: Chris@40: * src/sd2.c Chris@40: Add a workaround for situations where OSX seems to add an extra 0x52 bytes Chris@40: to the start of the resource fork. Chris@40: Chris@40: 2006-02-19 Erik de Castro Lopo Chris@40: Chris@40: * Mingw-make-dist.sh Chris@40: Add a shell script to build the windows binary/source ZIP file. Chris@40: Chris@40: * doc/index.html Chris@40: Add download link for windows binary/source ZIP file. Add links for GPG Chris@40: signatures. Chris@40: Chris@40: * doc/win32.html Chris@40: Remove info about building using microsoft compiler. Chris@40: Chris@40: * configure.ac Chris@40: Bump version to 1.0.14. Chris@40: Chris@40: 2006-02-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sd2.c Chris@40: Improve logging of errors in resource fork parser. Chris@40: Chris@40: 2006-01-31 Erik de Castro Lopo Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Replace au_g72x.* with g72x.*. Thanks to ussell Borogove. Chris@40: Chris@40: 2006-01-29 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Make sure return values are initialised header buffer is full. Chris@40: Chris@40: * src/wav.c Chris@40: Add workarounds for messed up WAV files. Chris@40: Chris@40: 2006-01-21 Erik de Castro Lopo Chris@40: Chris@40: * Win32/config.h Chris@40: Undef HAVE_INTTYPES_H for win32. Chris@40: Chris@40: * tests/command_test.c Chris@40: Don't exit on error in instrument test for XI files. Chris@40: Chris@40: * configure.ac Chris@40: Bump version to 1.0.13. Chris@40: Chris@40: * doc/*.html NEWS README Chris@40: Update version numbers. Chris@40: Chris@40: 2006-01-19 Erik de Castro Lopo Chris@40: Chris@40: * src/xi.c Chris@40: Start work on add read/write of instrument chunks. Chris@40: Chris@40: * src/command_test.c Chris@40: Add tests for XI instrument chunk. Chris@40: Chris@40: * tests/largefile_test.c tests/Makefile.am Chris@40: Add new test and hook it into the build system. This test will not be run Chris@40: automatically because it requires 3 Gig of disk space and takes 3 minutes Chris@40: to run. Chris@40: Chris@40: 2006-01-10 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Fix calculation of samples remaining in win32 code. Thanks Axel Röbel. Chris@40: Chris@40: * src/common.h Chris@40: Make sure length of header buffer can hold header plus strings. Thanks Axel Chris@40: Röbel. Chris@40: Chris@40: 2006-01-09 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/aiff.c src/wav.c Chris@40: Apply a patch from John ffitch (Csound project). Chris@40: Add detune field to SF_INSTRUMENT struct. Chris@40: Add reading/writing instrument chunks to WAV files. Chris@40: Chris@40: * tests/command_test.c Chris@40: Update SF_INSTRUMENT tests. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Hook instrument tests into test suite. Chris@40: Chris@40: 2006-01-05 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Check for because some broken systems (like Solaris) don't have Chris@40: which is the 1999 ISO C standard file containing int64_t. Chris@40: Chris@40: * src/sfendian.h src/common.h Chris@40: Use if is not available. Chris@40: Chris@40: 2005-12-30 Erik de Castro Lopo Chris@40: Chris@40: * tests/peak_chunk_test.c Chris@40: Extend and clean up tests. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix a bug that prevented the turning off of PEAK chunks. Chris@40: Chris@40: 2005-12-29 Erik de Castro Lopo Chris@40: Chris@40: * tests/error_test.c Chris@40: Make the test distclean correct. Chris@40: Chris@40: * src/file_io.c Chris@40: Fix an SD2 MacOSX bug (reported by vince schwarzinger). Chris@40: Chris@40: 2005-12-28 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c tests/command_test.c Chris@40: Apply a big patch from John ffitch (Csound project) to add reading and Chris@40: writing of instrument chunks to AIFF files. Also update the test. Chris@40: Chris@40: 2005-12-10 Erik de Castro Lopo Chris@40: Chris@40: * tests/aiff_rw_test.c tests/virtual_io_test.c tests/utils.tpl Chris@40: Move test function dump_data_to_file() to utils.tpl. Chris@40: Chris@40: * tests/error_test.c tests/Makefile.am Chris@40: Updates, including a new test to test that sf_error() returns a valid error Chris@40: number. Chris@40: Chris@40: 2005-12-07 Erik de Castro Lopo Chris@40: Chris@40: * examples/list_formats.c Chris@40: Make sure the SF_INFO struct is memset to all zero before being used. Chris@40: Thanks to Stephen F. Booth. Chris@40: Chris@40: * src/sndfile.c Chris@40: Make the return value of sf_error() match the API documentation. Chris@40: Chris@40: 2005-11-19 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Allow conversion to raw gsm610. Chris@40: Chris@40: * src/common.h src/sndfile.c src/au.c Chris@40: Remove au_nh_open() and all references to it (wasn't working anyway). Chris@40: Chris@40: * tests/headerless_test.c Chris@40: Add new test for file extension based detection. Chris@40: Chris@40: * src/sndfile.c Chris@40: Rejig file extension based file type detection. Chris@40: Chris@40: 2005-11-16 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Add "gsm" as a recognised file extension when no magic number can be found. Chris@40: Chris@40: * tests/lossy_comp_test.c tests/Makefile.am Chris@40: Test headerless GSM610. Chris@40: Chris@40: 2005-11-13 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Fix a minor typo and a minor error. Thanks Christoph Kobe and John Pavel. Chris@40: Chris@40: 2005-10-30 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_w64.c Chris@40: Add more reporting of 'fmt ' chunk for G721 encoded files. Chris@40: Chris@40: * src/wav.c Chris@40: Gernerate a more correct 20 byte 'fmt ' chunk rather than a 16 byte one. Chris@40: Chris@40: 2005-10-29 Erik de Castro Lopo Chris@40: Chris@40: * src/G72x/g72x.[ch] Chris@40: Minor cleanup of interface. Chris@40: Chris@40: 2005-10-28 Erik de Castro Lopo Chris@40: Chris@40: * src/ogg.c Chris@40: Removed the horribly broken and non-functional OGG implementation when Chris@40: --enable-experimental was enabled. When OGG does finally work it will be Chris@40: merged. Chris@40: Chris@40: * src/caf.c Chris@40: Fix a memory leak. Chris@40: Chris@40: 2005-10-27 Erik de Castro Lopo Chris@40: Chris@40: * src/g72x.c src/G72x/*.(c|h) src/common.h src/sndfile.c src/wav.c src/au.c Chris@40: Add support for G721 encoded WAV files. Chris@40: Chris@40: * doc/index.html Chris@40: Update support matrix. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: For file formats that support it, add string data after the audio data and Chris@40: make sure it isn't treated as audio data on read. Chris@40: Chris@40: * src/gsm610.c Chris@40: Add code to ensure that the container close function (ie for WAV files) gets Chris@40: called after the codec's close function. This allows GSM610 encoded WAV files Chris@40: to have string data following the audio data. Chris@40: Add an AIFF specific check on psf->datalength. Chris@40: Chris@40: * src/wav.c Chris@40: Simplify wav_close function. Chris@40: Chris@40: * src/aiff.c Chris@40: Make sure the tailer data gets written at an even file offset. Pad if Chris@40: necessary. Chris@40: Chris@40: * src/common.h Chris@40: Replace the close function pointer in SF_PRIVATE with separate functions Chris@40: codec_close and container_close. The former is always called first. Chris@40: Chris@40: * src/*.c Chris@40: Fix knock on effects of above. Chris@40: Chris@40: 2005-10-26 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Complete dumping SF_INSTRUMENT data. Chris@40: Chris@40: * src/dwvw.c src/ima_adpcm.c src/gsm610.c src/ms_adpcm.c Chris@40: Add extra checks in *_init function. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Add a string comment to the end of the files to make sure that the decoder Chris@40: doesn't decode beyond the end of the audio data section. Chris@40: Chris@40: 2005-10-25 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Minor code cleanup. Chris@40: Start work on dumping SF_INSTRUMENT data. Chris@40: Chris@40: 2005-10-23 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/common.h src/common.c Chris@40: Update definition of SF_INSTRUMENT struct and create a function to allocate Chris@40: and initialize the struct (input from David Viens). Chris@40: Clean up definition of SF_INSTRUMENT struct. Chris@40: Chris@40: * src/wav.c src/wav_w64.c Chris@40: Add support for Ambisoncs B WAVEX files (David Viens). Chris@40: Chris@40: * src/aiff.c src/wav.c src/wav_w64.c Chris@40: Start work on reading/writing the SF_INSTRUMENT data. Chris@40: Chris@40: * src/sndfile.c Chris@40: Add code to get and set SF_INSTRUMENT data. Chris@40: Chris@40: * tests/command_test.* tests/Makefile.am Chris@40: Add test for set and getof SF_INSTRUMENT data. Chris@40: The file command_test.c is no longer autogen generated. Chris@40: Chris@40: 2005-10-15 Erik de Castro Lopo Chris@40: Chris@40: * src/gsm610.c Chris@40: Minor cleanup. Chris@40: Chris@40: 2005-10-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Minor cleanup. Chris@40: Chris@40: 2005-10-13 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Ensure sfconfig.h is included before any other header file. Chris@40: Chris@40: * src/file_io.c Chris@40: Add comments documenting the three sections of the file. Chris@40: Chris@40: * src/gsm610.c Chris@40: Make sure SF_FORMAT_WAVEX are handled correctly. Chris@40: Chris@40: 2005-10-07 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Add options to allow disabling of FLAC and ALSA. Suggested by Ben Greear. Chris@40: Chris@40: 2005-09-30 Erik de Castro Lopo Chris@40: Chris@40: * tests/locale_test.c Chris@40: Modify the way the unicode strings were encoded so that older compilers Chris@40: do not complain. Thanks Axel Röbel. Chris@40: Chris@40: * configure.ac Chris@40: Bump the version to 1.0.12 for release. Chris@40: Chris@40: * NEWS README Win32/config.h doc/(FAQ|index.html|command|api).html Chris@40: Update version numbers. Chris@40: Chris@40: 2005-09-26 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Fix valgrind error and minor cleanup. Chris@40: Chris@40: 2005-09-25 Erik de Castro Lopo Chris@40: Chris@40: * src/(au|paf|aiff|w64|wav|svx).c Chris@40: Make sure structs are initialised. Chris@40: Chris@40: 2005-09-24 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Make -Wdeclaration-after-statement work with --enable-gcc-werror configure Chris@40: option. Chris@40: Add -std=gnu99 (C99 plus posix style stuff like gmtime_r) to CFLAGS if the Chris@40: compiler supports it. Chris@40: Chris@40: 2005-09-23 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac acinclude.m4 Chris@40: Add -Wdeclaration-after-statement to CFLAGS if the compilers supports it. Chris@40: Chris@40: 2005-09-22 Erik de Castro Lopo Chris@40: Chris@40: * tests/util.(tpl|def) Chris@40: Make the test_write_*_or_die() functions const safe. Chris@40: Chris@40: 2005-09-21 Erik de Castro Lopo Chris@40: Chris@40: * src/nist.c Chris@40: Make sure the data offset is read from the file header. Thanks to Chris@40: David A. van Leeuwen for a patch. Chris@40: Chris@40: 2005-09-20 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/sfconfig.h Chris@40: Check for and the function setlocale(). Chris@40: Set config variables to zero if not found. Chris@40: Chris@40: * tests/locale_test.c tests/Makefile.am Chris@40: Add new test program and hook into build/test system. Chris@40: Chris@40: 2005-09-18 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/file_io.c Chris@40: On windows, use windows specific types for file handles. Chris@40: Add functions psf_init_files() and psf_use_rsrc(). Chris@40: Chris@40: * src/sd2.c Chris@40: Make resource fork handling independant of file desciptor/handles. Chris@40: Chris@40: * src/sndfile.c src/test_file_io.c Chris@40: Fix knock on effects. Chris@40: Chris@40: 2005-09-06 Erik de Castro Lopo Chris@40: Chris@40: * src/float_cast.h Chris@40: The lrint and lrintf implementations in Cygwin are both buggy and slow. Chris@40: Add replacements which were pulled from the Public Domain MinGW math.h Chris@40: header file. Chris@40: Chris@40: 2005-09-05 Erik de Castro Lopo Chris@40: Chris@40: * tests/(lossy_comp_test|virtual_io_test).c Chris@40: More Valgrind fixups. Chris@40: Chris@40: * configure.ac Chris@40: Simplify and correct configuring for Cygwin. Chris@40: Chris@40: * Win32/config.h Win32/sndfile.h Win32/Makefile.msvc Chris@40: Update build for MSVC. Chris@40: Chris@40: 2005-09-04 Erik de Castro Lopo Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Make sure to close SNDFILE when exiting test when file format is not seekable. Chris@40: Chris@40: * tests/(aiff_rw_test|virtual_io_test).c Chris@40: Do a few valgrind fix ups. Chris@40: Chris@40: 2005-09-03 Erik de Castro Lopo Chris@40: Chris@40: * src/float32.c src/double64.c Chris@40: Replace floating point equality comparisons with greater/less comparisons. Chris@40: Found by John Pavel using the Intel compiler. Chris@40: Chris@40: * src/sfconfig.h Chris@40: New file to clean up issues surrounding autoconf generated preprocessor Chris@40: symbols. Chris@40: Chris@40: * src/*.(c|h) tests/*.(c|tpl) examples/*.c Chris@40: Fixed a bunch of other stuff found by John Pavel using the Intel compiler. Chris@40: Chris@40: * src/file_io.c Chris@40: Remove Mac OS9 Metrowerks compiler specific hacks. Chris@40: Chris@40: 2005-08-31 Erik de Castro Lopo Chris@40: Chris@40: * src/w64.c Chris@40: Cast integer literal to sf_count_t in call to psf_binheader_writef() to Chris@40: prevent Valgrind error. Chris@40: Chris@40: 2005-08-30 Erik de Castro Lopo Chris@40: Chris@40: * doc/command.html Chris@40: Improve documentation of SF_GET_FORMAT_SUBTYPE. Chris@40: Chris@40: 2005-08-26 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Allow files to be converted to SD2 format. Chris@40: Chris@40: * src/sd2.c Chris@40: Fix a bug in reading and writing of SD2 files on little endian CPUs. Chris@40: Thanks to Matthew Willis for finding this. Chris@40: Chris@40: 2005-08-25 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Update Note2 to point to SFC_SET_SCALE_FLOAT_INT_READ. Chris@40: Chris@40: 2005-08-16 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Use $host_os instead of $target_os (thanks to Mo De Jong). Chris@40: Chris@40: 2005-08-15 Erik de Castro Lopo Chris@40: Chris@40: * src/Makefile.am Chris@40: Apply a patch from Mo DeJong to allow building outside of the source dir. Chris@40: Chris@40: * src/file_io.c Chris@40: Fix psf_fsync() for win32. Chris@40: Chris@40: * src/wav.c src/wav_w64.(c|h) Chris@40: Move some code from wav.c to wav_w64.c to improve the log output of files of Chris@40: type WAVE_FORMAT_EXTENSIBLE. Chris@40: Chris@40: 2005-08-10 Erik de Castro Lopo Chris@40: Chris@40: * src/create_symbols_file.py Chris@40: Make sure sf_write_fsync is an exported symbol. Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Add support for writing VOX adpcm files. Chris@40: Chris@40: 2005-07-31 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Document the new function sf_write_sync(). Chris@40: Chris@40: * doc/FAQ.html Chris@40: Do you plan to support XYZ codec. Chris@40: Chris@40: 2005-07-28 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c Chris@40: Add function sf_write_sync() to the API. Chris@40: Chris@40: * src/common.h src/file_io.c Chris@40: Low level implementation (win32 not done yet). Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Use the new function in the tests. Chris@40: Chris@40: 2005-07-24 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/double64.c src/float32.c src/sndfile.c Chris@40: Change the way PEAK chunk info is stored. Peaks now stored as an sf_count_t Chris@40: for position and a double as the value. Chris@40: Chris@40: * src/aiff.c src/caf.c src/wav.c Chris@40: Fix knock on effects of above changes. Chris@40: Chris@40: * src/caf.c Chris@40: Implement 'peak' chunk for file wuth data in SF_FORMAT_FLOAT or Chris@40: SF_FORMAT_DOUBLE format. Chris@40: Chris@40: 2005-07-23 Erik de Castro Lopo Chris@40: Chris@40: * src/nist.c Chris@40: Fix a bug where a variable was being used without being initialized. Chris@40: Chris@40: * src/flac.c Chris@40: Add extra debug in sf_flac_meta_callback. Chris@40: Make a bunch of private functions static. Chris@40: Chris@40: * src/aiff.c src/wav.c Chris@40: Fix allocation for PEAK_CHUNK (bug found using valgrind). Chris@40: Chris@40: 2005-07-21 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Move the peak_loc field of SF_PRIVATE to the PEAK_CHUNK struct. Chris@40: Remove had_peak field of SF_PRIVATE, use pchunk != NULL instead. Chris@40: Rename PEAK_CHUNK and PEAK_POS to PEAK_CHUNK_32 and PEAK_POS_32. Chris@40: Chris@40: * src/aiff.c src/caf.c src/wav.c src/float32.c src/double64.c Chris@40: Fix knock on effects from above. Chris@40: Chris@40: 2005-07-19 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Prevent files with unknown chunks from being opened read/write. Chris@40: Chris@40: 2005-07-14 Erik de Castro Lopo Chris@40: Chris@40: * src/flac.c Chris@40: Do not use psf->end_of_file because it never gets set to anything. Chris@40: Chris@40: * src/common.h Chris@40: Remove unused SF_PRIVATE field end_of_file. Chris@40: Chris@40: 2005-07-12 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Change the 'S' format specifier of psf_binheader_writef() to write AIFF Chris@40: style strings (no terminating character). Chris@40: Chris@40: * src/aiff.c Chris@40: Move to new (correct) AIFF string style. Thanks to Axel Röbel for being Chris@40: so persistent on this issue. Chris@40: Chris@40: 2005-07-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Allow SFE_UNSUPPORTED_FORMAT as an error from sf_open(). Chris@40: Chris@40: * doc/api.html doc/command.html Chris@40: Documentation updates (thanks to Kyroz for promoting these updates). Chris@40: Chris@40: * src/mat5.c Chris@40: Modify the way the header is written. Chris@40: Chris@40: 2005-07-10 Erik de Castro Lopo Chris@40: Chris@40: * src/caf.c Chris@40: Add a 'free' chunk to the written file so that the audio data starts at Chris@40: an offset of 0x1000. Chris@40: Chris@40: * src/sndfile.c Chris@40: Allow SFE_UNSUPPORTED_FORMAT as an error from sf_open(). Chris@40: Chris@40: 2005-07-09 Erik de Castro Lopo Chris@40: Chris@40: * src/caf.c src/sndfile.c Chris@40: Add support for signed 8 bit integers. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Add test for signed 8 bit integers in CAF files. Chris@40: Chris@40: * doc/index.html Chris@40: Update matrix for signed 8 bit integers in CAF files. Chris@40: Chris@40: 2005-07-08 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Update sf_check_format() to support CAF. Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Add support for ".caf" file extension. Chris@40: Chris@40: * doc/index.html Chris@40: Add Apple CAF to the support matrix. Chris@40: Chris@40: * src/caf.c Chris@40: Add file write support. Chris@40: Chris@40: * src/common.c Chris@40: Fix printing of Frames. Chris@40: Chris@40: * tests/Makefile.am tests/write_read_test.tpl tests/lossy_comp_test.c Chris@40: tests/header_test.tpl misc_test.c Chris@40: Add tests for CAF files. Chris@40: Chris@40: 2005-07-07 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Fix Q/A about reading/writing memory buffers. Chris@40: Chris@40: * src/caf.c Chris@40: Bunch of work to support reading of CAF files. Chris@40: Chris@40: 2005-07-04 Erik de Castro Lopo Chris@40: Chris@40: * src/(aiff|ima_adpcm|mat4|mat5|ms_adpcm).c examples/sndfile-play.c Chris@40: Fix sign conversion errors reported by gcc-4.0. Chris@40: Chris@40: * src/caf.c Chris@40: New file for Apple's Core Audio File format. Chris@40: Chris@40: * src/sndfile.c src/common.h src/sndfile.h.in src/Makefile.am Chris@40: Hook new file into build system. Chris@40: Chris@40: 2005-06-21 Erik de Castro Lopo Chris@40: Chris@40: * src_wav_w64.c Chris@40: Fix handling of stupidly large 'fmt ' chunks. Thanks to Vadim Berezniker Chris@40: for supplying an example file. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Remove redundant error code SFE_WAV_FMT_TOO_BIG. Chris@40: Chris@40: 2005-06-20 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/common.h src/sndfile.c Chris@40: Add public error value SF_ERR_MALFORMED_FILE. Chris@40: Chris@40: * src/sndfile.c Chris@40: When parsing a file header fails and we don't have a system error, then set Chris@40: the error number to SF_ERR_MALFORMED_FILE (suggested by Kyroz). Chris@40: Chris@40: * configure.ac Chris@40: Allow sqlite support to be disabled in configure script. Chris@40: Chris@40: * regtest/database.c regtest/sndfile-regtest.c Chris@40: Fix compiling when sqlite is missing. Chris@40: Chris@40: 2005-06-11 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Fix psf_is_pipe() and return value of psf_fread() when using virtual i/o. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix VALIDATE_AND_ASSIGN_PSF macro for virtual i/o. Chris@40: Chris@40: * tests/virtual_io_test.c Chris@40: Fill in skeleton test program. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Move virtual i/o tests to end of tests with stdio/pipe tests. Chris@40: Chris@40: * src/(sndfile.h.in|file_io.c|common.h|sndfile.c) tests/virtual_io_test.c Chris@40: Rename some of the virtual i/o functions and data types. Chris@40: Chris@40: 2005-06-10 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix the return values of sf_commands : SFC_SET_NORM_DOUBLE, Chris@40: SFC_SET_NORM_FLOAT, SFC_GET_LIB_VERSION and SFC_GET_LOG_INFO. Thanks to Chris@40: Kyroz for pointing out these errors. Chris@40: Chris@40: * doc/command.html Chris@40: Correct documented return values for SFC_SET_NORM_DOUBLE and Chris@40: SFC_SET_NORM_FLOAT. Thanks to Kyroz again. Chris@40: Chris@40: 2005-05-17 Erik de Castro Lopo Chris@40: Chris@40: * regtest/* Chris@40: Add new files for sndfile-regtest program. Chris@40: Chris@40: * configure.ac Makefile.am Chris@40: Hook regetest into build. Chris@40: Chris@40: * src/wav.c src/common.c Chris@40: Fix a regression where long ICMT chunks were causing the WAV parser Chris@40: to exit. Chris@40: Chris@40: 2005-05-15 Erik de Castro Lopo Chris@40: Chris@40: * libsndfile.spec.in Chris@40: Add html docs to the files section as suggested by Karsten Jeppesen. Chris@40: Chris@40: * src/aiff.c Chris@40: Fix parsing of odd length ANNO chunks. Chris@40: Chris@40: 2005-05-13 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Change the include guard to prevent clashes with other code. Chris@40: Chris@40: 2005-05-12 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Improve error handling in code for playback under Linux/ALSA. Chris@40: Chris@40: 2005-05-10 Erik de Castro Lopo Chris@40: Chris@40: * src/ircam.c Chris@40: Fix writing of IRCAM files on big endian systems (thanks to Axel Röbel). Chris@40: Chris@40: * src/wav.c Chris@40: Add workaround for files created by the Peak audio editor on Mac which can Chris@40: produce files with very short LIST chunks (thanks to Jonathan Segel who Chris@40: supplied the file). Chris@40: Chris@40: 2005-04-30 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Apply a patch From David Viens to make the parsing of basc chunks more Chris@40: robust. Chris@40: Chris@40: * src/wav.c Chris@40: Another patch from David Viens to write correct wavex channel masks for Chris@40: the most common channel configurations. Chris@40: Chris@40: 2005-04-08 Erik de Castro Lopo Chris@40: Chris@40: * src/command.c Chris@40: Only allow FLAC in the format arrays if FLAC is enabled. Thanks to Chris@40: Leigh Smith. Chris@40: Chris@40: 2005-03-09 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add a directory field for storing the file directory to the SF_PRIVATE Chris@40: struct. Chris@40: Chris@40: * src/sndfile.c Chris@40: Grab the directory name when copying the file path. Chris@40: Chris@40: * src/file_io.c Chris@40: Cleanup psf_open_rsrc() and also check for resource fork in Chris@40: .AppleDouble/filename. Chris@40: Chris@40: 2005-03-01 Erik de Castro Lopo Chris@40: Chris@40: * src/svx.c Chris@40: Fix a bug in the printing of the channel count. Bug reported by Michael Chris@40: Schwendt. Thanks. Chris@40: Chris@40: 2005-01-26 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c Chris@40: Fix a seek bug for 24 bit PAF files. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Update write_read_test to trigger the previously hidden PAF seek bug. Chris@40: Chris@40: 2005-01-25 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/w64.c src/wav.c Chris@40: Do not return a header parse error when the log buffer overflows. Chris@40: Continuing parsing works even on files where the log buffer does overflow. Chris@40: This avoids a bug on some weirdo WAV (and other) files. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Remove SFE_LOG_OVERRIN error and its associated error message. Chris@40: Chris@40: * src/file_io.c Chris@40: Fix a rsrc fork problem on MacOSX. Chris@40: Chris@40: 2004-12-31 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile-play.c Chris@40: In the ALSA output code, added call to snd_pcm_drain() just before Chris@40: snd_pcm_close() as suggested by Thomas Kaeding. Chris@40: In the OSS output code, added two ioctls (SNDCTL_DSP_POST and Chris@40: SNDCTL_DSP_SYNC) just before the close of the audio device. Chris@40: Chris@40: * tests/virtual_io_test.c tests/Makefile.am Chris@40: Add a new test program (currently empty) and add it to the build. Chris@40: Chris@40: 2004-12-29 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.h src/common.h src/file_io.c Chris@40: src/create_symbols_file.py Chris@40: Apply patch from Steve Baker which is the beginnings of a virtual Chris@40: I/O interface. Chris@40: Chris@40: 2004-12-23 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c src/sndfile.h.in Chris@40: Const-ify the write path throughout the library. Chris@40: Chris@40: 2004-12-14 Erik de Castro Lopo Chris@40: Chris@40: * doc/development.html Chris@40: Minor improvements. Chris@40: Chris@40: 2004-11-29 Erik de Castro Lopo Chris@40: Chris@40: * doc/bugs.html Chris@40: Minor improvements. Chris@40: Chris@40: 2004-11-18 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Add workaround for Logic Platinum AIFF files with broken COMT chunks. Chris@40: Chris@40: 2004-11-16 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Remove some ambiguities in the SD2 FAQ answer. Chris@40: Chris@40: 2004-11-15 Erik de Castro Lopo Chris@40: Chris@40: * Win32/sndfile.h Win32/config.h MacOS9/sndfile.h MacOS9/config.h Chris@40: Updates from autoconfig versions. Chris@40: Chris@40: 2004-11-13 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fix parsing of COMT chunks. Store SF_STR_COMMENT data in ANNO chunks Chris@40: instead of COMT chunk. Chris@40: Chris@40: 2004-11-07 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c src/common.h Chris@40: Change the ptr argument to psf_write() from "void*" to a "const void*". Chris@40: Thanks to Tobias Gehrig for suggesting this. Chris@40: Chris@40: 2004-10-31 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c src/common.h Chris@40: Add functions psf_close_rsrc() and read length of resourse fork into Chris@40: rsrclength field of SF_PRIVATE. Chris@40: Chris@40: * src/sd2.c Chris@40: Make sure resource fork gets closed. Chris@40: Chris@40: * tests/util.tpl Chris@40: Add functions to check for file descriptor leakage. Chris@40: Chris@40: * src/write_read_test.tpl Chris@40: Use the file descriptor leak checks. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Add SFC_GET_LOOP_INFO and SF_LOOP_INFO struct. Chris@40: Chris@40: * src/common.h Chris@40: Add SF_LOOP_INFO pointer to SF_PRIVATE. Chris@40: Chris@40: * src/wav.c src/aiff.c Chris@40: Improve and add parsing of 'ACID' and 'basc' chunks, filling in Chris@40: SF_LOOP_INFO data in SF_PRIVATE. Chris@40: Chris@40: 2004-10-30 Erik de Castro Lopo Chris@40: Chris@40: * src/sd2.c Chris@40: Further cleanup: remove printfs, change snprintf to LSF_SNPRINTF. Chris@40: Chris@40: * Win32/config.h Win32/sndfile.h Chris@40: Updates. Chris@40: Chris@40: * tests/util.tpl Chris@40: Add win32 macro for snprintf. Chris@40: Chris@40: 2004-10-29 Erik de Castro Lopo Chris@40: Chris@40: * src/sfendian.h Chris@40: Add macros : H2BE_SHORT, H2BE_INT, H2LE_SHORT and H2LE_INT. Chris@40: Chris@40: * src/sd2.c Chris@40: Use macros to make sure writing SD2 files on little endian machines works Chris@40: correctly. Chris@40: Chris@40: * tests/util.tpl Chris@40: Add a delete_file() function which also deletes the resource fork of SD2 Chris@40: files. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Use delete_file() so that "make distcheck" works. Chris@40: Chris@40: 2004-10-28 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/file_io.c Chris@40: Move resource filename construction and testing to psf_open_rsrc(). Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add error SFE_SD2_FD_DISALLOWED. Chris@40: Chris@40: * tests/util.tpl tests/*.(c|tpl) Chris@40: Add and allow_fd parameter to test_open_file_or_die() so that use of Chris@40: sf_open_fd() can be avoided when opening SD2 files. Chris@40: Chris@40: 2004-10-27 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Update ACID chunk parsing. Chris@40: Chris@40: * src/sd2.c Chris@40: More fixes for files with large resource forks. Chris@40: Chris@40: 2004-10-23 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add error numbers and messages for sd2 files. Chris@40: Chris@40: * src/sd2.c Chris@40: Reading of sd2 (resource fork version) now seems to be working. Chris@40: Chris@40: 2004-10-17 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.h Chris@40: Update file_io.c to include win32 psf_rsrc_open(). Chris@40: Chris@40: * tests/floating_point_test.tpl Chris@40: Remove use of __func__ in test programs (MSVC++ doesn't grok this). Chris@40: Chris@40: * Win32/(config|sndfile).h MacOS9/(config|sndfile).h Chris@40: Updates. Chris@40: Chris@40: 2004-10-13 Erik de Castro Lopo Chris@40: Chris@40: * src/sfendian.h Chris@40: Fix endswap_int64_t_(array|copy). Chris@40: Chris@40: * src/test_endswap.(tpl|def) Chris@40: Add tests for above and inprove all tests. Chris@40: Chris@40: 2004-10-12 Erik de Castro Lopo Chris@40: Chris@40: * src/sfendian.h Chris@40: Improve type safety, add endswap_double_array(). Chris@40: Chris@40: * src/double64.c Chris@40: Use endswap_double_array() instead of endswap_long_array(). Chris@40: Chris@40: * src/test_endswap.(tpl|def) src/Makefile.am Chris@40: Add preliminary endswap tests and hook into build system. Chris@40: Chris@40: 2004-10-06 Erik de Castro Lopo Chris@40: Chris@40: * src/configure.ac src/makefile.am Chris@40: Finally fix the bulding of DLLs on Win32/MinGW. Chris@40: Chris@40: * tests/makefile.am Chris@40: Fix running of tests on Win32/MinGW. Chris@40: Chris@40: 2004-10-01 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c tests/floating_point_test.tpl Chris@40: Rename SFC_SET_FLOAT_INT_MULTIPLIER to SFC_SET_SCALE_FLOAT_INT_READ. Chris@40: Chris@40: * doc/command.html Chris@40: Document SFC_SET_SCALE_FLOAT_INT_READ. Chris@40: Chris@40: 2004-09-30 Erik de Castro Lopo Chris@40: Chris@40: * tests/floating_point_test.(tpl|def) Chris@40: Derived from floating_point_test.c. Chris@40: Add (float|double)_(short|int)_test functions. Chris@40: Chris@40: * tests/util.(tpl|def) Chris@40: Make separate float and double versions of gen_windowed_sine(). Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Fix after changes to gen_windowed_sine(). Chris@40: Chris@40: * src/(float32|double64).c Chris@40: Implement SFC_SET_FLOAT_INT_MULTIPPLIER. Chris@40: Chris@40: 2004-09-29 Erik de Castro Lopo Chris@40: Chris@40: * acinclude.m4 Chris@40: Fix warnings from automake 1.8 and later. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Add a "fflush (stdout)" after printing Win32 message. Chris@40: Chris@40: 2004-09-28 Erik de Castro Lopo Chris@40: Chris@40: * Win32/Makefile.mingw.in Chris@40: Add a "make install" target. Chris@40: Chris@40: 2004-09-24 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/common.h src/sndfile.c src/command.c Chris@40: Start work on adding command SFC_SET_FLOAT_INT_MULTIPLIER. Chris@40: Chris@40: 2004-09-22 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Fix a bug converting stereo integer PCM files to float. Chris@40: Chris@40: 2004-09-22 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Appy patch from Conrad Parker to make Mac OSX error messages more Chris@40: consistent and informative. Chris@40: Chris@40: * doc/api.html Chris@40: Fix a HTML HREF which was wrong. Chris@40: Chris@40: * doc/win32.html Chris@40: Add information about when nmake fails. Chris@40: Chris@40: 2004-09-05 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Another patch from Denis Cote to prevent race conditions. Chris@40: Chris@40: 2004-09-02 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/ms_adpcm.c src/ima_adpcm.c Chris@40: Fix alternative to ISO standard flexible struct array feature for broken Chris@40: compilers. Chris@40: Chris@40: 2004-08-31 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/string.c src/sndfile.c Chris@40: Make sf_set_string() return an error if trying to set a string when in Chris@40: read mode. Chris@40: Chris@40: 2004-08-29 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Change the unnamed union into a named union so gcc-2.95 will compile it. Chris@40: Chris@40: * src/*.c Chris@40: Fixes to allow for the above change. Chris@40: Chris@40: 2004-08-20 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Fixes for Win32. Thanks to Denis Cote. Chris@40: Chris@40: * Win32/Win32/Makefile.(msvc|mingw.in) Chris@40: Fix build system after removal of sfendian.h. Chris@40: Build sndfile-convert. Chris@40: Chris@40: * src/Makefile.am Chris@40: Remove sfendian.c from dependancies. Chris@40: Chris@40: 2004-08-10 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Fix typo in comments (thanks Tommi Sakari Uimonen). Chris@40: Chris@40: 2004-07-31 Erik de Castro Lopo Chris@40: Chris@40: * tests/(a|u)law_test.c Chris@40: Minor cleanup. Chris@40: Chris@40: 2004-07-29 Erik de Castro Lopo Chris@40: Chris@40: * src/(pcm|float|double64|ulaw|alaw|xi).c Chris@40: Optimise read/write loops by removing a redundant variable. Chris@40: Chris@40: 2004-07-24 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Remove call to fsync() in psf_close(). Chris@40: Chris@40: 2004-07-19 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c Chris@40: Inline x2y_array() functions where possible. Chris@40: Chris@40: * configure.ac Chris@40: Detect presence of type int64_t. Chris@40: Chris@40: * src/sfendian.c src/sfendian.h Chris@40: Move functions in the first file to the sfendian.h as static inline Chris@40: functions. Chris@40: Improve endswap_long_*() where possible. Chris@40: Chris@40: 2004-07-17 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c Chris@40: When converting from unsigned char to float or double, subtract 128 before Chris@40: converting to float/double rather than after to save a floating point Chris@40: operation as suggested by Stefan Briesenick. Chris@40: Chris@40: * src/(pcm|sfendian|alaw|ulaw|double64|float32).c Chris@40: Optimize inner loops by changing the loop counting slightly as suggested Chris@40: by Stefan Briesenick. Chris@40: Chris@40: * configure.ac Chris@40: Detect presence of . Chris@40: Chris@40: * src/sfendian.h Chris@40: Use if present as suggested by Stefan Briesenick. Chris@40: Chris@40: * src/pcm.c Chris@40: Update bytewapping. Chris@40: Chris@40: 2004-07-02 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/*.c Chris@40: Change the psf->buffer field of SF_PRIVATE into a more type safe union with Chris@40: double, float, int etc elements. Chris@40: Chris@40: 2004-06-28 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Merge slightly modifed patch from Stanko Juzbasic which allows playback of Chris@40: mono files on MacOSX. Chris@40: Chris@40: 2004-06-25 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Move copy_metadata() after the second sf_open(). Chris@40: Chris@40: 2004-06-21 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Fix a bug which caused the program to go into an infinite loop if the source Chris@40: file has no meta-data. Thanks to Ron Parker for reporting this. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Add SF_STR_FIRST and SF_STR_LAST to allow enumeration of string types. Chris@40: Chris@40: * Win32/sndfile.h MacOS9/sndfile.h Chris@40: Update these as per the above file. Chris@40: Chris@40: 2004-06-17 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/common.h src/ogg.c src/sndfile.c src/sndfile.h.in Chris@40: src/Makefile.am Chris@40: Apply large patch from Conrad Parker implementing Ogg Vorbis, Ogg Speex and Chris@40: Annodex support via liboggz and libfishsound. Thanks Conrad. Chris@40: Chris@40: 2004-06-15 Erik de Castro Lopo Chris@40: Chris@40: * src/avr.c src/ircam.c src/nist.c src/paf.c src/xi.c Chris@40: Add cast to size_t for some parameters passed to psf_binheader_writef. This Chris@40: is Debian bug number 253490. Thanks to Anand Kumria and Andreas Jochens. Chris@40: Chris@40: * src/w64.c Chris@40: Found and fixed a bug resulting from use of size_t when writing W64 'fmt ' Chris@40: chunk. Chris@40: Chris@40: 2004-06-14 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Bump version to 1.0.10 ready for release. Chris@40: Chris@40: * Makefile.am Chris@40: Remove redundant files (check_libsndfile.py libsndfile_version_convert.py) Chris@40: from distribution tarball. Chris@40: Chris@40: * tests/header_test.tpl Chris@40: Fix uninitialised variable. Chris@40: Chris@40: * src/GSM610/short_term.c Chris@40: Fix compiler warning on MSVC++. Chris@40: Chris@40: 2004-05-23 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Improve record keeping of chunks seen and return an error if a file with Chris@40: unusual chunks is opened in mode SFM_RDWR. Chris@40: Chris@40: * src/mmreg.h Chris@40: This file not needed so remove it. Chris@40: Chris@40: 2004-05-22 Erik de Castro Lopo Chris@40: Chris@40: * tests/header_test.tpl Chris@40: Add extra_header_test(). Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add SFE_RDWR_BAD_HEADER error number and string. Chris@40: Chris@40: 2004-05-21 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.tpl tests/*.c tests/*.tpl Chris@40: Add a line number argument to check_log_buffer_or_die() and update all Chris@40: files that use that function. Chris@40: Chris@40: * tests/header_test.tpl Chris@40: Modify/update tests for files opened SFM_RDWR and SFC_UPDATE_HEADER_AUTO. Chris@40: Chris@40: * src/aiff.c src/wav.c Chris@40: Fix another bug in AIFF and WAV files opened in SFM_RDWR and using Chris@40: SFC_UPDATE_HEADER_AUTO. Chris@40: Chris@40: * src/test_file_io.c Chris@40: Add a test for psf_ftruncate() function. Chris@40: Chris@40: 2004-05-19 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix another weird corner case bug found by Martin Rumori. Thanks. Chris@40: Chris@40: * tests/header_test.(tpl|def) Chris@40: Two new files to test for the absence of the above bug and include tests Chris@40: moved from tests/misc_test.c. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Hook new tests into build/test system. Chris@40: Chris@40: * tests/misc_test.c Chris@40: Remove update_header_test() which has been moved to the new files above. Chris@40: Chris@40: 2004-05-16 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed a bug reported by Martin Rumori on the LAD list. If a file created Chris@40: with a format of SF_FORMAT_FLOAT and then closed before any data is written Chris@40: to it, the header can get screwed up (PEAK chunk gets overwritten). Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Add a test (empty_file_test) for the above bug. Chris@40: Chris@40: 2004-05-13 Erik de Castro Lopo Chris@40: Chris@40: * Win32/Makefile.mingw.in Chris@40: Added a Makefile for MinGW (needs to be processed by configure). Chris@40: Chris@40: * src/mmsystem.h src/mmreg.h Chris@40: Add files from the Wine project (under the LGPL) to allow build of Chris@40: sndfile-play.exe under MinGW. Chris@40: Chris@40: 2004-05-12 Erik de Castro Lopo Chris@40: Chris@40: * src/GSM610/gsm610_priv.h Chris@40: Replace ugly macros with inline functions. Chris@40: Chris@40: * src/GSM610/*.c Chris@40: Remove temporary variables used by macros and other minor fixes required by Chris@40: above change. Chris@40: Chris@40: 2004-05-10 Erik de Castro Lopo Chris@40: Chris@40: * tests/pipe_test.tpl tests/stdio_test.c Win32/Makefile.msvc Chris@40: Make sure these programs compile (even though they do nothing) on Win32 Chris@40: and add them to the "make check" target. Chris@40: Chris@40: * src/sfendian.h Chris@40: Fix warning on Sparc CPU and code cleanup. Chris@40: Chris@40: 2004-05-09 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Fix warning messages when compiling under MinGW. Chris@40: Chris@40: 2004-05-01 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Set HAVE_FLEXIBLE_ARRAY in src/config.h depending on whether the compiler Chris@40: accepts the flexible array struct member as per 1999 ISO C standard. Chris@40: Chris@40: * src/common.h src/ima_adpcm.c src/paf.c src/ms_adpcm.c Chris@40: Added ugly #if HAVE_FLEXIBLE_ARRAY and provided a non-standards compliant Chris@40: hack for non 1999 ISO C compliant compilers. Chris@40: Chris@40: 2004-04-26 Erik de Castro Lopo Chris@40: Chris@40: * src/strings.c Chris@40: If adding an SF_STR_SOFTWARE string, only append libsndfile-X.Y.Z if the Chris@40: string does not already have libsndfile in the string. Thanks to Conrad Chris@40: Parker. Chris@40: Chris@40: * tests/string_test.c Chris@40: Add test to verify the above. Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Add ability to transcode meta data as well (Conrad Parker). Chris@40: Chris@40: 2004-04-25 Erik de Castro Lopo Chris@40: Chris@40: * doc/command.html Chris@40: Fix minor error. Thanks to Simon Burton. Chris@40: Chris@40: * doc/win32.html Chris@40: Started adding instructions for compiling libsndfile under MinGW. Chris@40: Chris@40: * configure.ac Chris@40: Add --enable-bow-docs to enable black text on a white background HTML docs. Chris@40: Chris@40: * doc/libsndfile.css.in Chris@40: This is now a template file for configure which sets the foreground and Chris@40: background colours. Chris@40: Chris@40: 2004-04-20 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Do some MinGW fixes. Chris@40: Chris@40: * configure.ac doc/Makefile.am Chris@40: Install HTML docs when doing make install. Chris@40: Chris@40: 2004-04-19 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Print out the dB level with the signal max. Chris@40: Chris@40: 2004-04-15 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Define S_ISSOCK in src/file_io.c if required. Chris@40: Chris@40: 2004-04-03 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Improve printout configuration summary (as suggested by Axel Röbel). Chris@40: Chris@40: * doc/index.html Chris@40: Add link to pre-release location. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Remove comma after last element of enum. Chris@40: Chris@40: * src/float32.c src/double64.c Chris@40: Fix read/write of float/double encoded raw files to/from pipes. Chris@40: Chris@40: * tests/pipe_test.c tests/pipe_test.tpl tests/pipe_test.def Chris@40: Turn pipe_test.c into an autogenerated file and add tests for reading/ Chris@40: writing floats and doubles. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Hook tests/pipe_test.* into build system. Chris@40: Chris@40: 2004-04-02 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac acinclude.m4 Chris@40: Rename AC_C_STRUCT_HACK macro to AC_C99_FLEXIBLE_ARRAY. Chris@40: Chris@40: 2004-03-31 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: Perform update_header_test in RDWR mode as well. Chris@40: Chris@40: * src/aiff.c Chris@40: Fix problems when updating header in RDWR mode. Chris@40: Chris@40: 2004-03-30 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/w64.c src/wav_w64.c Chris@40: Integrate code supplied by David Viens for supporting microsoft's Chris@40: WAVEFORMATEXTENSIBLE stuff. Thanks David for supplying this. Chris@40: Chris@40: * configure.ac doc/*.html Chris@40: Bump version to 1.0.9. Chris@40: Chris@40: 2004-03-28 Erik de Castro Lopo Chris@40: Chris@40: * src/command.c src/sndfile.c src/sndfile.h.in src/wav.c Chris@40: Started work on supporting microsoft's WAVEFORMATEXTENSIBLE gunk. Chris@40: Chris@40: 2004-03-26 Erik de Castro Lopo Chris@40: Chris@40: * src/avr.c Chris@40: New file to handle Audio Visual Resaerch files. Chris@40: Chris@40: * src/sndfile.h.in src/common.h src/sndfile.c src/command.c Chris@40: Hook AVR into everything else. Chris@40: Chris@40: * tests/Makefile.am tests/write_read_test.tpl tests/misc_test.c Chris@40: Add testing for AVR files. Chris@40: Chris@40: 2004-03-22 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Fix psf_set_file() for win32. Thanks to Vincent Trussart (Plogue Art et Chris@40: Technologie) for coming up with the solution. Chris@40: Chris@40: 2004-03-21 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Fixed a bug that was causing valgrind to report a memory leak. The bug was Chris@40: in the test code itself, not the library. Chris@40: Chris@40: 2004-03-20 Erik de Castro Lopo Chris@40: Chris@40: * examples/generate.cs Chris@40: An example showing how to use libsndfile from C#. Thanks to James Robson Chris@40: for providing this. Chris@40: Chris@40: 2004-03-19 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Fix problems with WAV files containing large chunks after the 'data' Chris@40: chunk. Thanks to Koen Tanghe for providing a sample file. Chris@40: Chris@40: 2004-03-17 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Detect presense of ALSA (Advanced Linux Sound Architecture). Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Add ALSA output support. Chris@40: Chris@40: * examples/Makefile.am Chris@40: Add ALSA_LIBS to link line of sndfile-play.c. Chris@40: Chris@40: 2004-03-15 Erik de Castro Lopo Chris@40: Chris@40: * acinclude.m4 Chris@40: Add new macro (AC_C_STRUCT_HACK) to detect whether the C compiler allows Chris@40: the use of the what is known as the struct hack introduced by the 1999 ISO Chris@40: C Standard. Chris@40: Chris@40: * configure.ac Chris@40: The last release would not compile with gcc-2.95 due to the use of features Chris@40: (ie struct hack) introduced by the 1999 ISO C Standard. Chris@40: Add check to make sure compiler handles this and bomb out if it doesn't. Chris@40: Chris@40: 2004-03-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Fix compiler warning on Win32. Chris@40: Chris@40: * src/file_io.c Chris@40: Fix use of an un-initialised variable in Win32 stuff. Chris@40: Chris@40: * Win32/config.h examples/sndfile-play.c Chris@40: Win32 fixes. Chris@40: Chris@40: 2004-03-10 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fix bug which occurres when configuring for MinGW. Chris@40: If compiler is gcc and cross compiling use -nostdinc. Chris@40: Chris@40: 2004-03-09 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/aiff.c src/wav.c src/float32.c src/double64.c Chris@40: src/sndfile.c Chris@40: Fix a bug with PEAK chunk handling for files with more than 16 channels. Chris@40: Thanks to Remy Bruno for finding this. Chris@40: Chris@40: 2004-03-08 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Fix a bug which was preventing WAV files being openned correctly if the Chris@40: file had a very large header. Thanks to Eldad Zack for finding this. Chris@40: Chris@40: 2004-03-04 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/file_io.c Chris@40: Fix cross-compiling from Linux to Win32 using the MinGW tools. Chris@40: Chris@40: 2004-03-01 Erik de Castro Lopo Chris@40: Chris@40: * src/create_symbols_file.sh Chris@40: Christian Weisgerber pointed out that the shell script did not run on a Chris@40: real Bourne shell although it did run under Bash in Bourne shell mode. Chris@40: Chris@40: * src/create_symbols_file.py Chris@40: Rewrite of above in Python. Also add support for writing Win32 .def files. Chris@40: The Python script generates Symbols.linux, Symbols.darwin and Chris@40: libsndfile.def (Win32 version). These files get shipped with the tarball Chris@40: so there should not be necessary to run the Python script when building Chris@40: the code from the tarball. Chris@40: Chris@40: * configure.ac src/Makefile.am Win32/Makefile.am Chris@40: Hook new Python script into the build system. Chris@40: Chris@40: 2004-02-25 Erik de Castro Lopo Chris@40: Chris@40: * src/configure.ac Chris@40: Add --enable-gcc-werror option and move GCC specific stuff down. Chris@40: Chris@40: 2004-02-24 Erik de Castro Lopo Chris@40: Chris@40: * acinclude.m4 configure.ac Chris@40: Fix clip mode detection (tested in one of HP's testdrive Itanium II boxes). Chris@40: Chris@40: * src/file_io.c Chris@40: Added check for sizeof (off_t) != sizeof (sf_count_t) to prevent recurrence Chris@40: of missing large file support on Linux and Solaris. Chris@40: Chris@40: 2004-02-19 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Fix a MacOSX specific bug which was caused by a space being inserted in Chris@40: the middle of a file name. Chris@40: Chris@40: * configure.ac src/Makefile.am examples/Makefile.am Chris@40: Fix a couple of MacOSX build issues. Chris@40: Chris@40: 2004-02-17 Erik de Castro Lopo Chris@40: Chris@40: * doc/command.html Chris@40: Document SFC_SET_CLIPPING and SFC_GET_CLIPPING. Chris@40: Chris@40: 2004-02-14 Erik de Castro Lopo Chris@40: Chris@40: * doc/*.html Chris@40: Applied patch from Frank Neumann (author of lakai) which fixes many minor Chris@40: typos in documentation. Thanks Frank. Chris@40: Chris@40: 2004-02-13 Erik de Castro Lopo Chris@40: Chris@40: * ChangeLog Chris@40: Changed my email address throughout source and docs. Chris@40: Chris@40: 2004-02-08 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Make sure config.h is included before stdio.h to make sure large file Chris@40: support is enabled on Linux (and Solaris). Chris@40: Chris@40: * tests/misc_test.c Chris@40: Disable update_header test on Win32. This should work but doesn't and Chris@40: I'm not sure why. Chris@40: Chris@40: * Make.bat Win32/Makefile.msvc Chris@40: Updates. Chris@40: Chris@40: 2004-01-07 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Changed logindex, headindex and headend files of SF_PRIVATE from unsigned Chris@40: int to int to prevent weird arithmetic bugs. Chris@40: Chris@40: * src/common.c src/aiff.c src/wav.c src/w64.c Chris@40: Fixed compiler warnings resulting from above change. Chris@40: Chris@40: 2004-01-06 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Fixed a bug in header reader for some files with data after the sample data. Chris@40: Chris@40: 2003-12-29 Erik de Castro Lopo Chris@40: Chris@40: * tests/lossy_comp_test.c tests/Makefile.am Chris@40: Add tests for AIFF/IMA files. Chris@40: Chris@40: 2003-12-26 Erik de Castro Lopo Chris@40: Chris@40: * src/macbinary3.c src/macos.c Chris@40: Two new files required for handling SD2 files. Chris@40: Chris@40: * src/common.h Chris@40: Add prototypes for functions in above two files. Chris@40: Chris@40: * src/Makefile.am Chris@40: Hook new files into build system. Chris@40: Chris@40: 2003-12-21 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Add checks for mmap() and getpagesize() which might be used at some time Chris@40: for faster file reads. Chris@40: Add detection of MacOSX. Chris@40: Chris@40: 2003-12-13 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Minor mods to pkg-config section. Chris@40: Chris@40: 2003-12-12 Erik de Castro Lopo Chris@40: Chris@40: * src/create_symbols_file.sh Chris@40: Andre Pang (also known as Ozone) pointed out that on MacOSX, all non Chris@40: static symbols are exported causing troubles when trying to link Chris@40: libsndfile with another library which has any of the same symbols. Chris@40: He fixed this by supplying the MacOSX linker with a file containing Chris@40: all the public symbols so that only they would be exported and then Chris@40: supplied a patch for libsndfile. Chris@40: This wasn't quite ideal, because I would have to maintain two (3 if Chris@40: you include Win32) separate files containing the exported symbols. Chris@40: A better solution was to create this script which can generate a Chris@40: Symbols file for Linux, MacoSX and any other OS that supports Chris@40: minimising the number of exported symbols. Chris@40: Chris@40: * configure.ac src/Makefile.am Chris@40: Hook the new script into the build process. Chris@40: Chris@40: 2003-12-10 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Added comments about Steve Dekorte's SoundConverter scam. Chris@40: Chris@40: 2003-12-07 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Axel Röbel pointed out that on Mac OSX a pipe is not considered a fifo Chris@40: (S_ISFIFO (st.st_mode) is false) but a socket (S_ISSOCK (st.st_mode) is Chris@40: true). The test has therefore been changed to is S_ISREG and anything Chris@40: which which does not return true for S_ISREG is considered a pipe. Chris@40: Chris@40: 2003-11-25 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: Fix update_header_test to pass SDS. Chris@40: Chris@40: * src/sds.c Chris@40: More minor fixes. Chris@40: Chris@40: * tests/floating_point_test.c Chris@40: Add test for SDS files. Chris@40: Chris@40: * src/command.c Chris@40: Add SDS to major_formats array. Chris@40: Chris@40: 2003-11-24 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl tests/misc_test.c Chris@40: Add tests for SDS files. Chris@40: Chris@40: * src/sds.c Chris@40: Fix a bug in header update code. Chris@40: Chris@40: 2003-11-23 Erik de Castro Lopo Chris@40: Chris@40: * src/sds.c Chris@40: Get file write working. Chris@40: Chris@40: * src/paf.c Chris@40: Fix a potential bug in paf24_seek(). Chris@40: Chris@40: 2003-11-04 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Add Q/A about u-law encoded WAV files. Chris@40: Chris@40: * Win32/*.h Chris@40: Updated so it compiles on Win32. Chris@40: Chris@40: 2003-11-03 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Add -alaw and -ulaw command line arguments. Chris@40: Chris@40: * configure.ac Chris@40: Add library versioning comments. Chris@40: Add arguments to AC_INIT. Chris@40: Chris@40: 2003-10-28 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Ross Bencina has contributed code to replace all of the (mostly broken) Chris@40: Win32 POSIX emulation calls with calls the native Win32 file I/O API. Chris@40: This code still needs testing but is likely to be a huge improvemnt Chris@40: of support for Win32. Thanks Ross. Chris@40: Chris@40: 2003-10-27 Erik de Castro Lopo Chris@40: Chris@40: * src/dwvw.c Chris@40: Removed filedes field from the DWVW_PRIVATE struct. Chris@40: Chris@40: * src/file_io.c Chris@40: Change psf_fopen() so it returns psf->error instead of the file descriptor. Chris@40: Add new functions psf_set_stdio() and psf_set_file(). Chris@40: Chris@40: * src/sndfile.c Chris@40: Change these to work with changed psf_fopen() return value. Chris@40: Remove all uses of psf->filedes from sndfile, making it easier to slot native Chris@40: Win32 API file handling functions. Chris@40: Chris@40: * src/test_file_io.c Chris@40: Minor changes to make it compile with new file_io.c stuff. Chris@40: Chris@40: 2003-10-26 Erik de Castro Lopo Chris@40: Chris@40: * src/gsm610.h Chris@40: Rename a variable from true to true_flag. As Ross Bencina points out, Chris@40: true is defined in the C99 header . Chris@40: Chris@40: * src/file_io.c Chris@40: If fstat() fails, return SF_TRUE instead of -1 (Ross Bencina). Chris@40: Chris@40: 2003-10-09 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Increase the size of SF_BUFFER_LEN and SF_HEADER_LEN. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix sf_read/write_raw which were dividing by psf->bytwidth and Chris@40: psf->blockwidth which can both be zero. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Increase size of BUFFER_LEN. Chris@40: Chris@40: 2003-09-21 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Add checks for and ssize_t. Chris@40: Other Win32/MinGW checks. Chris@40: Chris@40: * src/aiff.c src/au_g72x.c src/file_io.c src/gsm610.c src/interleave.c Chris@40: src/paf.c src/sds.c src/svx.c src/voc.c src/w64.c src/wav.c src/xi.c Chris@40: Fix compiler warnings. Chris@40: Chris@40: 2003-09-20 Erik de Castro Lopo Chris@40: Chris@40: * tests/scale_clip_test.tpl Chris@40: Add definition of M_PI if needed. Chris@40: Chris@40: 2003-09-19 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Detect if S_IRGRP is declared in . Chris@40: Chris@40: * src/file_io.c tests/*.tpl tests/*.c Chris@40: More fixes for Win32/MSVC++ and MinGW. MinGW does have but that Chris@40: file doesn't declare S_IRGRP. Chris@40: Chris@40: 2003-10-18 Erik de Castro Lopo Chris@40: Chris@40: * src/config.h.in Chris@40: Add comment stating that the sf_count_t typedef is determined when Chris@40: libsndfile is being compiled. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Modified so that utils.c gets one copy of the GPL and not two. Chris@40: Chris@40: Chris@40: 2003-09-17 Erik de Castro Lopo Chris@40: Chris@40: * Win32/unistd.h src/sf_unistd.h Chris@40: Move first file to the second. This will help for Win32/MSVC++ and MinGW. Chris@40: Chris@40: * Win32/Makefile.am src/Makefile.am Chris@40: Changed in line with above. Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Removed "/I Win32" which is no longer required. Chris@40: Chris@40: * src/file_io.c src/test_file_io.c tests/*.tpl tests/*.c Chris@40: If HAVE_UNISTD_H include else include . This should Chris@40: work for Win32, MinGW and other fakes Unix-like OSes. Chris@40: Chris@40: * src/*.c Chris@40: Removed #include from files which didn't need it. Chris@40: Chris@40: 2003-09-16 Erik de Castro Lopo Chris@40: Chris@40: * libsndfile.spec.in Chris@40: Apply fix from Andrew Schultz. Chris@40: Chris@40: 2003-09-07 Erik de Castro Lopo Chris@40: Chris@40: * src/vox_adpcm.c Chris@40: Only set psf->sf.samplerate if the existing value is invalid. Chris@40: Chris@40: 2003-09-06 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Started adding support for ALSA output. Chris@40: Chris@40: 2003-09-04 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Removed from sndfile.h. Chris@40: Chris@40: * src/*.c examples/*.c tests/*.c tests/*.tpl Chris@40: Added where needed. Chris@40: Chris@40: 2003-09-02 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Added ARRAY_LEN, SF_MAX and SF_MIN macros. Chris@40: Chris@40: 2003-08-19 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Remove statements about alternative licensing arrangements. Chris@40: Chris@40: 2003-08-17 Erik de Castro Lopo Chris@40: Chris@40: * MacOS MacOS9 Makefile.am configure.ac Chris@40: Change directory name from MacOS to MacOS9 Chris@40: Chris@40: * MacOS9/MacOS9-readme.txt Chris@40: Change name to make it really obvious, add text to top of file to make it Chris@40: still more obvious again. Chris@40: Chris@40: 2003-08-16 Erik de Castro Lopo Chris@40: Chris@40: * src/test_log_printf.c Chris@40: Add tests for %u conversions. Chris@40: Chris@40: * src/common.c Chris@40: Fix psf_log_printf() %u conversions. Chris@40: Chris@40: 2003-08-15 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed a bug where opening a file with a non-trival header in SFM_RDWR mode Chris@40: would over-write part of the header. Thanks to Axel Röbel for pointing Chris@40: this out. Axel also provided a patch to fix this but I came up with a Chris@40: neater and more general solution. Chris@40: Return error when openning an AIFF file with data after the SSND chunk Chris@40: (Thanks Axel Röbel). Chris@40: Chris@40: * tests/aiff_rw_test.c Chris@40: Improvements to test program which will later allow it to be generalised to Chris@40: test WAV, SVX and others as required. Chris@40: Chris@40: 2003-08-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/pipe_test.c Chris@40: Add useek_pipe_rw_test() submitted by Russell Francis. Chris@40: Chris@40: * src/sndfile.c Chris@40: In sf_open_fd(), check if input file descriptor is a pipe. Chris@40: Chris@40: * src/sndfile.[ch] Chris@40: Fix typo in variable name do_not_close_descriptor. Chris@40: Chris@40: 2003-08-13 Erik de Castro Lopo Chris@40: Chris@40: * src/test_log_printf.c Chris@40: Improve the tests for %d and %s conversions. Chris@40: Chris@40: * src/common.c Chris@40: Fixed a few problems in psf_log_printf() found using new tests. Chris@40: Chris@40: 2003-08-06 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Add -Wwrite-strings warning to CFLAGS if the compiler is GCC. Thanks to Chris@40: Peter Miller (Aegis author) for suggesting this and supplying a patch. Chris@40: Chris@40: * src/*.c examples/*.c tests/*.c Chris@40: Fix all compiler warnings arising from the above. Chris@40: Chris@40: 2003-08-02 Erik de Castro Lopo Chris@40: Chris@40: * tests/aiff_rw_test.c tests/Makefile.am Chris@40: New test program to check for errors re-writing the headers of AIFC files Chris@40: opened in mode SFM_RDWR. Chris@40: Chris@40: 2003-07-21 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Applied a patch from Tero Pelander to allow this program to run on systems Chris@40: using devfs which used /dev/sound/dsp instead of /dev/dsp. Chris@40: Chris@40: 2003-07-11 Erik de Castro Lopo Chris@40: Chris@40: * doc/new_file_type.HOWTO Chris@40: Updated document. Still incomplete. Chris@40: Chris@40: 2003-06-29 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fix VALIDATE_SNDFILE_AND_ASSIGN_PSF which was returning an error rather Chris@40: than saving it and returning zero. Chris@40: Chris@40: 2003-06-25 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Two fixes for Mac OS9. Chris@40: Fix all casts from sf_count_t to ssize_t (not size_t). Chris@40: Chris@40: 2003-06-22 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fix for reading files with RIFF length of 8 and data length of 0. Chris@40: Chris@40: 2003-06-14 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c tests/*.c tests/*.tpl Chris@40: Added comments to mark code for removal when make Lite version of Chris@40: libsndfile. Chris@40: Chris@40: 2003-06-09 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Add extra error checking for unrecognised arguments. Chris@40: Chris@40: 2003-06-08 Erik de Castro Lopo Chris@40: Chris@40: * src/ima_adpcm.c Chris@40: Started adding code to write IMA ADPCM encoded AIFF files. Chris@40: Chris@40: * src/test_log_printf.c src/Makefile.am Chris@40: New file to test psf_log_printf() function and add hooks into build system. Chris@40: Chris@40: * src/common.c Chris@40: Move psf_log_printf() function to top of the file and only compile the rest Chris@40: of the file if if PSF_LOG_PRINTF_ONLY is not defined. Chris@40: Chris@40: 2003-06-03 Erik de Castro Lopo Chris@40: Chris@40: * Win32/config.h Win32/sndfile.h Chris@40: Updated with new config variables. Chris@40: Chris@40: * Win32/unistd.h src/file_io.c Chris@40: Added implementation of S_ISFIFO macro which Win32 seems to lack and is Chris@40: used in src/file_io.c. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Added #include to pull in Win32/unistd.h so it compiles for Chris@40: Win32. Chris@40: Chris@40: * src/Makefile.msvc Chris@40: Added src\test_file_io.exe build target and run this as the very first Chris@40: test. Chris@40: Chris@40: * tests/win32_test.c Chris@40: Add support for testing Cygwin32. Chris@40: Chris@40: * configure.ac Chris@40: Detect POSIX fsync() and fdatasync() functions. Chris@40: Chris@40: * src/file_io.c Chris@40: If compiling for Cygwin, call fsync() before calling fstat() to retrieve Chris@40: file length. Chris@40: Chris@40: * tests/pcm_test.tpl Chris@40: Add a test for lrintf() function. This was required to detect a really Chris@40: broken lrint() and lrintf() on Cygwin. Chris@40: Chris@40: * tests/misc_test.c Chris@40: Don't run permission test when compiling under Cygwin. Chris@40: Chris@40: * src/float_cast.h Chris@40: Fix fallback macro for lrint() and lrintf() to cast to long instead of int Chris@40: to match official function prototypes. Chris@40: Chris@40: 2003-06-02 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Modifications to improve accuracy of conversions; use double data for Chris@40: floating point and int for everything else. Chris@40: Chris@40: * src/ima_apdcm.c Chris@40: Completed work on decoding IMA ADPCM encoded AIFF files. Still need to Chris@40: get encoding working. Chris@40: Chris@40: 2003-05-28 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/ima_adpcm.c Chris@40: Start working on getting IMA ADPCM encoded AIFF files working. Chris@40: Chris@40: 2003-05-27 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fixed the touch command for when the autogen program is not found (Matt Chris@40: Flax). Chris@40: Chris@40: * src/ulaw.c src/alaw.c Chris@40: Made these pipe-able. Chris@40: Chris@40: 2003-05-24 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c src/ircam.c Chris@40: Fixed writing to pipe. Chris@40: Chris@40: * src/wav.c src/aiff.c src/nist.c src/mat*.c src/svx.c src/w64.c Chris@40: Return SFE_NO_PIPE_WRITE if an attempt is made to write to a pipe. Chris@40: Chris@40: 2003-05-23 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Modified to detect unknown file lengths. Chris@40: Chris@40: * src/mat4.c Chris@40: Fix reading from a pipe. Chris@40: Chris@40: 2003-05-22 Erik de Castro Lopo Chris@40: Chris@40: * tests/pipe_test.c Chris@40: Add more file types to tests. Chris@40: Chris@40: * src/mat4.c Chris@40: Removed explicit setting of psf->sf.seekable to SF_TRUE. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Add macro for generating and check data in the stdio and pipe tests. Chris@40: Chris@40: * tests/stdout_test.c tests/stdin_test.c Chris@40: Use the above macro to generate known data on output and check data on Chris@40: input. Chris@40: Chris@40: * src/voc.c src/htk.c common.h sndfile.c Chris@40: Disallow reading/writing VOC and HTK files from/to pipes be returning new Chris@40: error values. Chris@40: Chris@40: * src/w64.c Chris@40: Fixes to allow reading from a pipe. Chris@40: Chris@40: 2003-05-21 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac src/sndfile.h.in Chris@40: When the configure script determines the sizeof (sf_count_t), also set the Chris@40: value of SF_COUNT_MAX in sndfile.h. Chris@40: Chris@40: * configure.ac Chris@40: Remove -pedantic flag from default GCC compiler flags. Chris@40: Chris@40: * tests/pipe_test.c Chris@40: Add a pipe_read_test() before doing pipe_write_test(). Chris@40: Chris@40: * tests/scale_clip_test.c Chris@40: Add test to make sure non-normalized values also clip in the right way. Chris@40: Chris@40: 2003-05-18 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Add test to detect processor clipping capabilities. Chris@40: Chris@40: * tests/stdin_test.c tests/stdout_test.c Chris@40: Fix a pair of compiler warnings. Chris@40: Chris@40: * src/common.h Chris@40: Add new pipeoffset field to SF_PRIVATE. This will contain the current file Chris@40: offset when operating on a pipe. Chris@40: Chris@40: * src/common.c Chris@40: Removed direct calls to psf_fread()/psf_fseek()/psf_fgets() etc from Chris@40: psf_binheader_readf and redirect them to new buffered versions Chris@40: header_read(), header_seek() and header_gets(). Chris@40: Add "G" format specifier to emulate fgets() functionality with buffering. Chris@40: This will allow reading some file types from pipes. Chris@40: Chris@40: * src/file_io.c Chris@40: When the file descriptor is a pipe, manintain psf->pipeoffset. Chris@40: Chris@40: * src/pvf.c Chris@40: Change use of psf_fgets() to psf_binheader_readf() as required but changes to header re Chris@40: Chris@40: * src/au.c Chris@40: Fix reading from a pipe. Chris@40: Chris@40: 2003-05-17 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c Chris@40: Add clipping versions of the f2XXX_array() functions to allow option of Chris@40: clipping data that would otherwise overflow. Chris@40: Chris@40: * tests/scale_clip_test.tpl tests/scale_clip_test.def Chris@40: New files test that clipping option does actually work. Chris@40: Chris@40: 2003-05-14 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Fixed a typo ("OS(" instead of "OS9"). Chris@40: Chris@40: 2003-05-13 Erik de Castro Lopo Chris@40: Chris@40: * tests/open_fail_test.c Chris@40: Include to prevent warning message of missing declaration of Chris@40: memset(). Chris@40: Chris@40: 2003-05-12 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Add new "add_clipping" field to SF_PRIVATE. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c Chris@40: Add command SFC_SET_CLIPPING which sets/resets add_clipping field. Chris@40: Chris@40: 2003-05-11 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Add docs for sf_set_string() and sf_get_string(). Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Add new SFE_STR_BAD_STRING error. Chris@40: Chris@40: * tests/stdin_test.c tests/stdout_test.c Chris@40: Removed all non-error print statements. Chris@40: Chris@40: * tests/stdio_test.c tests/pipe_test.c tests/Makefile.am Chris@40: Add print statements removed from two files above. Chris@40: Chris@40: 2003-05-10 Erik de Castro Lopo Chris@40: Chris@40: * libsndfile.spec.in Chris@40: Fixed a coulpe of minor errors discovered by someone calling themselves Chris@40: Agent Smith. Chris@40: Chris@40: * src/common.c src/common.h src/file_io.h Chris@40: Added is_pipe field to SF_PRIVATE and declaration of psf_is_pipe() Chris@40: function. (Axel Röbel) Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed determination of whether the file is a pipe. (Axel Röbel) Chris@40: Chris@40: * src/paf.c Chris@40: Force paf24 to start with undefined mode. (Axel Röbel) Chris@40: Chris@40: * tests/pipe_test.c Chris@40: Mods to make this test work and actually do the test on RAW files. (Axel Chris@40: Röbel). Chris@40: Chris@40: 2003-05-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a potential bug where psf->sf.seekable was being set to FALSE when Chris@40: operating on stdin or stdout but then the default initialiser was reseting Chris@40: it to TRUE. Thanks to Axel Röbel. Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed a bug in the header parser where it was not handling an odd length Chris@40: COMM chunk correctly. Thanks to Axel Röbel. Chris@40: Chris@40: * src/test_file_io.c Chris@40: Add more tests. Chris@40: Chris@40: * tests/win32_test.c Chris@40: New file for showing the bugs in the Win32 implementation of the POSIX API. Chris@40: It also runs on Linux for sanity checking. Chris@40: Chris@40: * tests/Makefile.am Win32/Makefile.msvc Chris@40: Hook the new test program into the build system. Chris@40: Chris@40: 2003-05-04 Erik de Castro Lopo Chris@40: Chris@40: * src/test_file_io.c Chris@40: New test program to test operation of functions defined in file_io.c. This Chris@40: should make supporting win32 significantly easier. Chris@40: Chris@40: * src/Makefile.am Chris@40: Hook new test program into the build system. Chris@40: Chris@40: * src/file_io.c Chris@40: Add compile/run time check that sizeof statbuf.st_size and sf_count_t are Chris@40: the same. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Added new error code and error message for new check. Chris@40: Chris@40: * tests/benchmark.tpl Chris@40: Fix to use frames instead of samples in SF_INFO. Chris@40: Chris@40: 2003-05-03 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: More stuffing about working around PLAIN OLD-FASHIONED **BUGS** in Win32. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Applied patch from Conrad Parker to add "--help" and "-h" options as Chris@40: well as an improved usage message. Chris@40: Chris@40: 2003-05-02 Erik de Castro Lopo Chris@40: Chris@40: * src/au.c Chris@40: Added embedded file support. Chris@40: Chris@40: * tests/multi_file_test.c Chris@40: Added tests for embedded AU files. Chris@40: Added verbose testing mode. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Added an embedded AU specific error code and message. Chris@40: Chris@40: * src/wav.c Chris@40: Added patch from Conrad Parker which filled in a little more information Chris@40: about ACIDized WAV files. Chris@40: Chris@40: 2003-04-30 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Fixed Win32 version of psf_fseek() which was calling psf_get_filelen() Chris@40: which was in turn calling psf_fseek() which in the end blew the stack. Chris@40: Now of course this would have been easy to find on Linux, but this blow Chris@40: up was happening in kernel32.dll and the fscking MSVC++ debugger couldn't Chris@40: figure out what call caused this (it couldn't even tell me the stack had Chris@40: overflowed) and was absolutley useless for this debugging exercise. Chris@40: On top of that, the reason I got into this mess was that windoze doesn't Chris@40: have a working fstat() function which can return file lengths > 2 Gig. It Chris@40: HAS a fscking _fstati64() but the file length value is only updated AFTER Chris@40: the bloody file is closed. That makes it completely useless. Chris@40: How the hell do people stand working on this crap excuse of an OS? Chris@40: Chris@40: 2003-04-29 Erik de Castro Lopo Chris@40: Chris@40: * Win32/unistd.h src/file_io.c Chris@40: Moved definitions of S_IGRP etc from file_io.c to unistd.h so that these Chris@40: can be used in the test programs. Chris@40: Chris@40: * Win32/libsndfile.def Chris@40: Added sf_open_fd. Chris@40: Chris@40: * Win32/sndfile.h Chris@40: Updated to match src/sndfile.h.in. Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Added dither.c and htk.c to libsndfile.dll target. Chris@40: Chris@40: 2003-04-28 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: First attempt at getting the Win32 versions of the these functions working. Chris@40: They still need to be tested. Chris@40: Chris@40: 2003-04-27 Erik de Castro Lopo Chris@40: Chris@40: * src/strings.c Chris@40: Found and fixed a bug which was causing psf_store_string() to fail on Chris@40: Motorola 68k processors. Many thanks to Joshua Haberman (Debian maintainer Chris@40: of libsndfile) for compiling and running debug code to help me debug the Chris@40: problem. Chris@40: Chris@40: 2003-04-26 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/file_io.c src/wav.c src/aiff.c Chris@40: Much hacking to get reading and writing of embedded files working (ie sound Chris@40: files at a non-zero files offset). Chris@40: Chris@40: * doc/embedded_files.html Chris@40: First pass atempt at documenting reading/writing embedded files. Chris@40: Chris@40: 2003-04-21 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Updated answer to "Why doesn't libsndfile do interleaving/de-interleaving?" Chris@40: Chris@40: 2003-04-19 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/aiff.c Chris@40: Fix retrieving and storing of string data from files. Need to be careful Chris@40: about using psf->buffer for strings. Chris@40: Chris@40: 2003-04-18 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Fix psf_fseek() for seeks withing embedded files. Chris@40: Chris@40: 2003-04-15 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Changed the definition of SNDFILE slightly to produce warnings when it isn't Chris@40: used correctly. This should have zero affect in code which uses the SNDFILE Chris@40: type correctly. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a few compiler warnings cause by the changes to the SNDFILE type. Chris@40: Chris@40: 2003-04-12 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Added question and answer to the question "How about adding the ability Chris@40: to write/read sound files to/from memory buffers?". Chris@40: Chris@40: 2003-04-08 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Removed un-needed enums declaring TRUE and FALSE and replaced usage of Chris@40: these with SF_TRUE and SF_FALSE. Chris@40: Chris@40: * tests/multi_file_test.c Chris@40: New test program to test sf_open_fd() on files containing data other than Chris@40: a single sound file. Chris@40: Chris@40: 2003-04-06 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: When creating files, set the readable by others flag. This still allows Chris@40: further restrictions to be enforced by use of the user's umask. Fix Chris@40: suggested by Eric Lyon. Chris@40: Chris@40: 2003-04-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c Chris@40: Changed sf_open_fd(). Dropped offset parameter and added a close_desc Chris@40: parameter. If close desc is TRUE, the file descritpor passed into the Chris@40: library will be closed when sf_close() is called. Chris@40: Chris@40: * tests/utils.tpl Chris@40: Modified call to sf_open_fd() to set close_desc parameter to SF_TRUE. Chris@40: Chris@40: 2003-04-04 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Add a string (using sf_set_string() function) before and after data section Chris@40: of all files. This will make sure that if string data can be added, it Chris@40: doesn't overwrite real audio data. Chris@40: Chris@40: 2003-04-02 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Started work on supporting a non-zero offset parameter for sf_open_fd (). Chris@40: Chris@40: * src/.c Chris@40: Removed many uses of psf_fseek (SEEK_END) which to allow for future use of Chris@40: sf_open_fd() with non-zero offset. Chris@40: Associated refactoring. Chris@40: Chris@40: * src/aiff.c Chris@40: Implemented functionality required to get sf_get_string() and Chris@40: sf_set_string() working for AIFF files. Chris@40: Chris@40: 2003-04-01 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.tpl Chris@40: Modified test_open_file_or_die() to alternately use sf_open() and Chris@40: sf_open_fd(). Chris@40: Chris@40: * src/svx.c Chris@40: Fixed a bug which occurred when openning an existing file for read/write Chris@40: using sf_open_fd(). In this case, the existing NAME chunk needs to be Chris@40: read into psf->filename. Chris@40: Fixed printing of sf_count_t types to logbuffer. Chris@40: Chris@40: 2003-03-31 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Added prototype for new function sf_open_fd(). Chris@40: Chris@40: * src/sndfile.c Chris@40: Moved most of the code in sf_open() to a new function psf_open_file(). Chris@40: Created new function sf_open_fd() which also uses psf_open_file() but Chris@40: does not currently support the offset parameter. Chris@40: Chris@40: * doc/api.html Chris@40: Document sf_open_fd(). Chris@40: Chris@40: 2003-03-09 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a memory leak reported by Evgeny Karpov. Memory leak only occurred Chris@40: when an attempt was made to read and the open() call fails. Chris@40: Chris@40: 2003-03-08 Erik de Castro Lopo Chris@40: Chris@40: * tests/open_fail_test.c Chris@40: New test program to check for memory leaks when sf_open fails on a valid Chris@40: file. Currently this must be run manually under valgrid. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Hook new test program into build. Chris@40: Chris@40: 2003-03-03 Erik de Castro Lopo Chris@40: Chris@40: * Octave/sndfile_save.m Octave/sndfile_play.m Chris@40: Added a -mat-binary option to the octave save command to force the output Chris@40: to binary mode even if the user has set ascii data as the default. Found Chris@40: by Christopher Moore. Chris@40: Chris@40: 2003-02-27 Erik de Castro Lopo Chris@40: Chris@40: * doc/dither.html Chris@40: New file which will document the interface which allows the addition of Chris@40: audio dither when sample word sizes are being reduced. Chris@40: Chris@40: * src/dither.c Chris@40: More work. Chris@40: Chris@40: 2003-02-26 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: In update_header_test(), make HTK files a special case. Chris@40: Chris@40: * doc/index.html Chris@40: Added HTK to the feature matrix. Chris@40: Chris@40: 2003-02-25 Erik de Castro Lopo Chris@40: Chris@40: * src/htk.c Chris@40: New file for reading/writing HMM Tool Kit files. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/command.c src/Makefile.am Chris@40: Hook in htk.c Chris@40: Chris@40: * tests/write_read_test.tpl tests/misc_test.c tests/Makefile.am Chris@40: Add tests for HTK files. Chris@40: Chris@40: 2003-02-22 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fixed a bug where the LIST chunk length was being written incorrectly. Chris@40: Chris@40: * tests/string_test.c Chris@40: Added call to check_log_buffer(). Chris@40: Minor cleanups. Chris@40: Chris@40: 2003-02-10 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_w64.h Chris@40: Applied patch from Antoine Mathys to add extra WAV format definitions and Chris@40: a G72x_ADPCM_WAV_FMT struct definition. Chris@40: Chris@40: * src/wav_w64.c Chris@40: Applied patch from Antoine Mathys which converts wav_w64_format_str() from Chris@40: one huge inefficient switch statement to a binary search. Chris@40: Chris@40: * tests/string_test.c Chris@40: Dump log buffer if tests fail. Chris@40: Chris@40: 2003-02-07 Erik de Castro Lopo Chris@40: Chris@40: * tests/string_test.c Chris@40: David Viens supplied some modifications to this file which showed up a bug Chris@40: when using sf_set_string() and the sf_writef_float() functions. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed the above bug. Chris@40: Chris@40: 2003-02-06 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Added Q and A on how to detect libsndfile in configure.in (at the suggestion Chris@40: of Davy Durham). Chris@40: Chris@40: 2003-02-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Add enums and typedefs for dither. Chris@40: Deprecate SFC_SET_ADD_DITHER_ON_WRITE and SFC_SET_ADD_DITHER_ON_READ, to be Chris@40: replaced with SFC_SET_DITHER_ON_WRITE and SFC_SET_DITHER_ON_READ which will Chris@40: allow different dither algorithms to be enabled. Chris@40: Added SFC_GET_DITHER_INFO_COUNT and SFC_GET_DITHER_INFO. Chris@40: Chris@40: * src/sndfile.h.in src/Version_script.in Win32/libsndfile.def. Chris@40: Added public sf_dither_*() functions. Chris@40: Chris@40: * src/sndfile.c Chris@40: Implement commands above. Chris@40: Chris@40: * src/dither.c Chris@40: More work. Framework and external hooks into dither algorithms complete. Chris@40: Chris@40: 2003-02-03 Erik de Castro Lopo Chris@40: Chris@40: * doc/version-1.html libsndfile_version_convert.py Chris@40: Remove redundant files. Chris@40: Chris@40: * doc/index.html doc/api.html Chris@40: Remove links to version-1.html. Chris@40: Chris@40: * src/dither.c Chris@40: New file to allow the addition of audio dither on input and output. Chris@40: Chris@40: * src/common.h Chris@40: Add prototype for dither_init() function. Chris@40: Chris@40: * Makefile.am doc/Makefile.am Chris@40: Changes for added and removed files. Chris@40: Chris@40: 2003-02-02 Erik de Castro Lopo Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Changes to force example binaries to be placed in the top level directory Chris@40: instead of the examples/ directory. Chris@40: Add src/strings.c and src/xi.c to the build. Chris@40: Add string_test to build and to tests on WAV files. Chris@40: Chris@40: * doc/index.html Chris@40: Added XI to support matrix. Chris@40: Chris@40: 2003-01-27 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Added prototypes for sf_get_string() and sf_set_string() and SF_STR_* Chris@40: enum values. Chris@40: Chris@40: * src/sndfile.c Chris@40: Added public interface to sf_get_string() and sf_set_string(). Chris@40: Chris@40: * src/wav.c Chris@40: Added code for setting and getting strings in WAV files. Chris@40: Chris@40: * tests/string_test.c Chris@40: New test program for sf_get_string() and sf_set_string() functionality. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Hook new test program into build and test framework. Chris@40: Chris@40: 2003-01-26 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Added fields to SF_PRIVATE for string data needed to implement Chris@40: sf_get_string() and sf_set_string(). Chris@40: Chris@40: * src/strings.c Chris@40: New file for storing and retrieving strings to/from files. Chris@40: Chris@40: * src/Makefile.am Chris@40: Added strings.c to build. Chris@40: Chris@40: 2003-01-25 Erik de Castro Lopo Chris@40: Chris@40: * src/xi.c Chris@40: Read seems to be working so looking at write. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Added SF_FORMAT_XI, SF_FORMAT_DPCM_8 and SF_FORMAT_DPCM_16 enum values. Chris@40: Chris@40: * tests/floating_point_test.c tests/lossy_comp_test.c tests/Makefile.am Chris@40: Added test for 8 and 16 bit XI format files. Chris@40: Chris@40: 2003-01-24 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Added a non-lawyer readable summary of the licensing provisions as Chris@40: suggested by Steve Dekorte. Chris@40: Chris@40: 2003-01-23 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fixed a compiler warning found by Alexander Lerch. Chris@40: Chris@40: 2003-01-18 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Fixed the multiple linking of libm. Chris@40: Chris@40: 2003-01-17 Erik de Castro Lopo Chris@40: Chris@40: * Win32/Makefile.mcvs Chris@40: Added comments on the correct way to set up the MSVCDir environment Chris@40: variable. Chris@40: Chris@40: * doc/win32.html Chris@40: Add on how to set up the MSVCDir environment variable. Chris@40: Chris@40: 2003-01-15 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c examples/sndfile-info.c Chris@40: When run on Win32 without any command line parameters print a message and Chris@40: then sleep for 5 seconds. This means the when somebody double clicks on Chris@40: these programs in explorer the user will actually see the message. Chris@40: Chris@40: 2003-01-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: Bypass permission test if running as root because root is allowed to open Chris@40: a readonly file for write. Chris@40: Chris@40: 2003-01-08 Erik de Castro Lopo Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Added pvf.c and xi.c source files to project. Chris@40: Chris@40: * src/sndfile.h Chris@40: Updated for PVF files. Chris@40: Chris@40: 2003-01-07 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Modified validate_sfinfo() to force samplerate, channels and sections Chris@40: to be >= 1. Chris@40: In format_from_extension() replaced calls to does_extension_match() Chris@40: with strcmp(). Chris@40: Chris@40: * src/xi.c Chris@40: More work. Chris@40: Chris@40: 2003-01-06 Erik de Castro Lopo Chris@40: Chris@40: * doc/Makefile.am Chris@40: Added octave.html which had been left out. Found by Jan Weil. Chris@40: Chris@40: 2003-01-05 Erik de Castro Lopo Chris@40: Chris@40: * src/pvf.c src/common.h src/sndfile.c Chris@40: Fixed error handling for PVF files. Chris@40: Chris@40: * src/xi.c Chris@40: New file for handling Fasttracker 2 Extended Instrument files. Not working Chris@40: yet and included when configured with --enable-experimental. Chris@40: Chris@40: * src/sndfile.c src/common.h Chris@40: Hooked in new file xi.c. Chris@40: Chris@40: 2002-12-30 Erik de Castro Lopo Chris@40: Chris@40: * src/rx2.c Chris@40: Added a patch from Marek Peteraj which sheds a little more light on the Chris@40: slices within an RX2 file. Still need to find out data encoding. Chris@40: Chris@40: 2002-12-20 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Started work on decoding 'acid' and 'strc' chunks. Chris@40: Chris@40: 2002-12-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/peak_check_test.c Chris@40: Minor cleanup. Chris@40: Chris@40: 2002-12-12 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Added check to make sure no error was generated when an attempt was made to Chris@40: read past the end of the file. Chris@40: Chris@40: 2002-12-11 Erik de Castro Lopo Chris@40: Chris@40: * doc/lists.html Chris@40: Added "mailto" links for all three lists. Chris@40: Chris@40: * src/pvf.c Chris@40: New file for Portable Voice Format files. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/common.h src/command.c src/Makefile.am Chris@40: Added hooks for SF_FORMAT_PVF format files. Chris@40: Chris@40: * tests/write_read_test.tpl tests/std*.c Chris@40: Add tests for SF_FORMAT_PVF. Chris@40: Chris@40: * doc/index.html Chris@40: Add PVF to the compatibility matrix. Chris@40: Chris@40: * src/pcm.c src/alaw.c src/ulaw.c src/float32.c src/double64.c Chris@40: Previously, attempts to read beyond the end of a file would set psf->error Chris@40: to SFE_SHORT_ERROR. This behaviour diverged from the behaviour of the POSIX Chris@40: read() call but has now been fixed. Chris@40: Attempts to read beyond the end of the file will return a short read count Chris@40: but will not longer set any error. Chris@40: Chris@40: 2002-12-09 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Add more sanity checking when opening a RAW file for read. When format is Chris@40: not RAW, zero out all members of the SF_INFO struct. Chris@40: Chris@40: * tests/raw_test.c Chris@40: Add bad_raw_test() to check for above problem. Chris@40: Chris@40: * tests/stdin_test.c examples/sndfile-info.c Chris@40: Set the format field of the SF_INFO struct to zero before calling Chris@40: sf_open(). Chris@40: Chris@40: * doc/api.html Chris@40: Add information about the need to set the format field of the SF_INFO struct Chris@40: to zero when opening non-RAW files for read. Chris@40: Chris@40: * configure.ac Chris@40: Removed use of conversion script on Solaris. Not all Solaris versions Chris@40: support it. Chris@40: Chris@40: * doc/lists.html Chris@40: New file containg details of the mailing lists. Chris@40: Chris@40: * doc/index.html Chris@40: Add a link to the above new file. Chris@40: Chris@40: 2002-12-04 Erik de Castro Lopo Chris@40: Chris@40: * tests/dft_cmp.c Chris@40: Fixed a SIGFPE on Alpha caused by a log10 (0.0). Thanks to Joshua Haberman Chris@40: for providing the gdb traceback. Chris@40: Chris@40: 2002-11-28 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Added more capabilities to 'smpl' chunk parser. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed some (not all) possible problems found with Flawfinder. Chris@40: Chris@40: 2002-11-24 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a bug in sf_seek(). This bug could only occur when an attempt was Chris@40: made to read beyond the end and then sf_seek() was called with a whence Chris@40: parameter of SEEK_CUR. Chris@40: Chris@40: * src/file_io.c Chris@40: Win32's _fstati64() does not work, it returns BS. Re-implemented Chris@40: psf_get_filelen() in terms of psf_fseek(). Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Add a test to detect above bug. Chris@40: Chris@40: * src/float_cast.h Chris@40: Modification to prevent compiler warnings on Mac OS X. Chris@40: Chris@40: * src/file_io.c Chris@40: Fixes for windows (what a f**ked OS). Chris@40: Chris@40: 2002-11-08 Erik de Castro Lopo Chris@40: Chris@40: * configure.ac Chris@40: Disable use of native lrint()/lrintf() on Mac OSX. These functions exist on Chris@40: Mac OSX 10.2 but not on 10.1. Forcing the use of the versions in Chris@40: src/float_cast.h means that a library compiled on 10.2 will still work on Chris@40: 10.1. Chris@40: Chris@40: 2002-11-06 Erik de Castro Lopo Chris@40: Chris@40: * configure.in configure.ac Chris@40: Renamed configure.in to configure.ac as expected by later versions of Chris@40: autoconf. Chris@40: Slight hacking of configure.ac to work with version 2.54 of autoconf. Chris@40: Changed to using -dumpversion instead of --version for determining GCC Chris@40: version numer as suggested by Anand Kumria. Chris@40: Chris@40: * src/G72x/Makefile.am Chris@40: Slight hacking required for operation with automake 1.6.3. Chris@40: Chris@40: 2002-11-05 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: In psf_binheader_readf() changed type parameter type "b" type from size_t Chris@40: to int to prevent errors on IA64 CPU where sizeof (size_t) != sizeof (int). Chris@40: Thanks to Enrique Robledo Arnuncio for debugging this. Chris@40: Chris@40: 2002-11-04 Erik de Castro Lopo Chris@40: Chris@40: * test/command_test.tpl Chris@40: Changed test value so test would pass on Solaris. Chris@40: Chris@40: * src/Version_script.in Chris@40: Modified version numbering so that later versions of 1.0.X can replace Chris@40: earlier versions without recompilation. Chris@40: Chris@40: * src/vox_adpcm.c Chris@40: Fixed bug causing short reads. Chris@40: Chris@40: 2002-11-03 Erik de Castro Lopo Chris@40: Chris@40: * test/floating_point_test.c Chris@40: Code cleanup using functions from util.c. Chris@40: Add test for IEEE replacement floats and doubles. Chris@40: Chris@40: 2002-11-01 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fixed a possible divide by zero error when read the 'smpl' chunk. Thanks to Chris@40: Serg Repalov for the example file. Chris@40: Chris@40: * tests/pcm_test.tpl Chris@40: Used sf_command (SFC_TEST_IEEE_FLOAT_REPLACE) to test IEEE replacement code. Chris@40: Clean up pcm_double_test(). Chris@40: Chris@40: * src/float32.c src/double64.c Chris@40: Force use of IEEE replacement code using psf->ieee_replace is TRUE, Chris@40: Print message to log_buffer as well. Chris@40: Rename all broken_read_* and broken_write* functions to replace_read_* and Chris@40: replace_write_*. Chris@40: Chris@40: * tests/util.tpl Chris@40: Added string_in_log_buffer(). Chris@40: Chris@40: * tests/pcm_test.tpl Chris@40: Use string_in_log_buffer() to ensure that IEEE replacement code has been Chris@40: used. Chris@40: Chris@40: * configure.in Chris@40: Removed --enable-force-broken-float option. IEEE replacement code is now Chris@40: always tested. Chris@40: Chris@40: 2002-10-31 Erik de Castro Lopo Chris@40: Chris@40: * src/double64.c Chris@40: Implement code for read/writing IEEE doubles on platforms where the native Chris@40: double format is not IEEE. Chris@40: Chris@40: * src/float32.c src/common.h Chris@40: Remove float32_read() and float32_write(). Replace with float32_le_read(), Chris@40: float32_be_read(), float32_le_write() and float32_be_write() to match stuff Chris@40: in src/double64.c. Chris@40: Chris@40: * src/common.c Chris@40: Fix all usage of float32_write(). Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Added SFC_TEST_IEEE_FLOAT_REPLACE command (testing only). Chris@40: Chris@40: * src/common.h Chris@40: Added SF_PRIVATE field ieee_replace. Chris@40: Chris@40: * src/sndfile.c Chris@40: In sf_command() set/reset psf->ieee_replace. Chris@40: Chris@40: 2002-10-26 Erik de Castro Lopo Chris@40: Chris@40: * tests/pcm_test.tpl Chris@40: Fixed a problem when testing with --enable-force-broken-float. The test was Chris@40: generating a value of negative zero and the broken float code is not able Chris@40: to write negative zero. Removing the negative zero fixed the test. Chris@40: Chris@40: 2002-10-25 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Added fix for Cygwin (suggested by Maros Michalik). Chris@40: Chris@40: 2002-10-23 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Improved error detection and handling. Chris@40: Chris@40: * src/file_io.c src/common.h Chris@40: Removed functions psf_ferror() and psf_clearerr() which were redundant Chris@40: after above improvements. Chris@40: Chris@40: * src/aiff.c src/svx.c src/w64.c src/wav.c Chris@40: Removed all use of psf_ferror() and psf_clearerr(). Chris@40: Chris@40: * src/sndfile.c Chris@40: Removed #include of , , and which Chris@40: are no longer needed. Chris@40: Chris@40: * tests/misc_test.c Chris@40: Added test to make sure the correct error message is returned with an Chris@40: existing read-only file is openned for write. Chris@40: Chris@40: 2002-10-21 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html doc/api.html Chris@40: Updated for OKI Dialogic ADPCM files. Chris@40: Chris@40: * src/command.c Chris@40: Added VOX ADPCM to sub_fomats. Chris@40: Chris@40: 2002-10-20 Erik de Castro Lopo Chris@40: Chris@40: * src/vox_adpcm.c src/Makefile.am Chris@40: New file for handling OKI Dialogic ADPCM files. Chris@40: Chris@40: * src/sndfile.h Chris@40: Add new subtype SF_FORMAT_VOX_ADPCM. Chris@40: Chris@40: * src/sndfile.c Chris@40: Renamed function is_au_snd_file () to format_from_extenstion () and expanded Chris@40: its functionality to detect headerless VOX files. Chris@40: Chris@40: * src/raw.c Chris@40: Added hooks for SF_FORMAT_VOX_ADPCM. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Print out file duration (suggested by Conrad Parker). Chris@40: Chris@40: * libsndfile.spec.in Chris@40: Force installation of sndfile.pc file (found by John Thompson). Chris@40: Chris@40: * tests/Makefile.am tests/lossy_comp_test.c tests/floating_point_test.c Chris@40: Add tests for SF_FORMAT_VOX_ADPCM. Chris@40: Chris@40: 2002-10-18 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: Add test which attempts to write to /dev/full (on Linux anyway) to check Chris@40: for correct handling of writing to a full filesystem. Chris@40: Chris@40: * src/sndfile.c Chris@40: Return correct error message if the header cannot be written because the Chris@40: filesystem is full. Chris@40: Chris@40: * tests/util.tpl Chris@40: Corrected printing of file mode in error reporting. Chris@40: Chris@40: * src/mat5.c Chris@40: Fixed a bug where a MAT5 file written by libsndfile could not be opened by Chris@40: Octave 2.1.36. Chris@40: Chris@40: 2002-10-13 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/file_io.c Chris@40: All low level file I/O have been modified to be better able to report Chris@40: system errors resulting from calling system level open/read/write etc. Chris@40: Chris@40: * src/*.c Chris@40: Updated for compatibility with above changes. Chris@40: Chris@40: * examples/cooledit-fixer.c Chris@40: New example program which fixes badly broken file created by Syntrillium's Chris@40: Cooledit which are marked as containing PCM samples but actually contain Chris@40: floating point data. Chris@40: Chris@40: * examples/Makefile.am Chris@40: Hooked cooledit-fixer into the build system. Chris@40: Chris@40: 2002-10-10 Erik de Castro Lopo Chris@40: Chris@40: * doc/command.html Chris@40: Document SFC_GET_FORMAT_INFO. Chris@40: Chris@40: 2002-10-09 Erik de Castro Lopo Chris@40: Chris@40: * examples/wav32_aiff24.c examples/sndfile2oct.c examples/sfhexdump.c Chris@40: examples/sfdump.c Chris@40: Removed these files because they weren't interesting. Chris@40: Chris@40: * examples/sfconvert.c examples/sndfile-convert.c Chris@40: Renamed the first to the latter. Chris@40: Chris@40: * examples/Makefile.am Chris@40: Added sndfile-convert to the bin_PROGRAMS, so it is installed when the lib Chris@40: is installed. Chris@40: Removed old programs wav32_aiff24 and sndfile2oct. Chris@40: Chris@40: * man/sndfile-convert.1 Chris@40: New man page. Chris@40: Chris@40: * examples/sndfile-convert.c Chris@40: Added some gloss now that sndfile-convert.c is an installed program. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/common.h src/command.h Chris@40: Added command SFC_GET_FORMAT_INFO. Chris@40: Chris@40: * tests/command_test.c Chris@40: Added tests form SFC_GET_FORMAT_INFO. Chris@40: Chris@40: 2002-10-08 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: In sf_format_check() return error if samplerate < 0. Chris@40: Chris@40: 2002-10-07 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed bug in handling of COMM chunks with a 4 byte encoding byte but no Chris@40: encoding string. Chris@40: Chris@40: 2002-10-06 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed repeated word in an error message. Chris@40: Chris@40: 2002-10-05 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Improved advertising in Features section. Chris@40: Chris@40: 2002-10-04 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Added decoding of 'labl' chunks within 'LIST' chunks. Chris@40: Chris@40: * src/common.h Chris@40: Added (experimental only) SF_FORMAT_OGG and SF_FORMAT_VORBIS and definition Chris@40: of ogg_open(). This is nowhere near working yet. Chris@40: Chris@40: * src/sndfile.c Chris@40: Added detection of 'OggS' file marker and added call to ogg_open() to Chris@40: switch statement. Chris@40: Chris@40: * src/ogg.c Chris@40: New file. Very early start of Ogg Vorbis support. Chris@40: Chris@40: * src/wav.c Chris@40: Added handling of brain-damaged and broken Cooledit "32 bit 24.0 float Chris@40: type 1" files. These files are marked as being 24 bit WAVE_FORMAT_PCM with Chris@40: a block alignment of 4 times the numbers of channels but are in fact 32 bit Chris@40: floating point. Chris@40: Chris@40: 2002-10-02 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Modified option --enable-experimental to set ENABLE_EXPERIMENTAL_CODE in Chris@40: config.h to either 0 or 1. Chris@40: Chris@40: * src/sndfile.c Chris@40: Modify sf_command (SFC_GET_LIB_VERSION) to append "-exp" to the version Chris@40: string if experimental code has been enabled. Chris@40: Chris@40: 2002-10-01 Erik de Castro Lopo Chris@40: Chris@40: * src/Makefile.am Chris@40: Added -lm to libsndfile_la_LIBADD. This means that -lm is not longer needed Chris@40: in the link line when linking something to libsndfile. Chris@40: Chris@40: * tests/Makefile.am examples/Makefile.am Chris@40: Removed -lm from all link lines. Chris@40: Chris@40: * sndfile.pc.in Chris@40: Removed -lm from Libs line. Chris@40: Chris@40: 2002-09-24 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Removed all perror() calls. Chris@40: Chris@40: * src/nist.c Chris@40: Removed calls to exit() function. Chris@40: Added check to detect NIST files dammaged from Unix CR -> Win32 CRLF Chris@40: conversion process. Chris@40: Chris@40: 2002-09-24 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c Chris@40: New function sf_strerror() which will eventually replace functions Chris@40: sf_perror() and sf_error_str(). Chris@40: Function sf_error_number() has also been changed, but this was documented Chris@40: as being for testing only. Chris@40: Chris@40: * doc/api.html Chris@40: Documented above changes. Chris@40: Chris@40: * tests/*.c examples/*.c Chris@40: Changed to new error functions. Chris@40: Chris@40: 2002-09-22 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Detect GCC version, and print a warning message about writeable strings Chris@40: it GCC major version number is less than 3. Chris@40: Chris@40: 2002-09-21 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in doc/api.html Chris@40: Documentation fixes. Chris@40: Chris@40: 2002-09-19 Erik de Castro Lopo Chris@40: Chris@40: * src/Version_script.in src/Makefile.am configure.in Chris@40: Use the version script to prevent the exporting of all non public symbols. Chris@40: This currently only works with Linux. Will test on Solaris as well. Chris@40: Chris@40: * src/float_cast.h Chris@40: Added #ifndef to prevent the #warning directives killing the SGI MIPSpro Chris@40: compiler. Chris@40: Chris@40: * src/au_g72x.c src/double64.c src/float32.c src/gsm610.c src/ima_adpcm.c Chris@40: src/ms_adpcm.c Chris@40: Fix benign compiler warnings arising from previously added compiler Chris@40: flags. Chris@40: Chris@40: 2002-09-18 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a bug in sf_error_str() where errnum was used as the index instead Chris@40: of k. Found by Tim Hockin. Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Fixed a compiler warning resulting from a variable shadowing a previously Chris@40: defined local. Chris@40: Chris@40: 2002-09-17 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c Chris@40: Added command SFC_SET_RAW_START_OFFSET. Chris@40: Chris@40: * doc/command.html Chris@40: Document SFC_SET_RAW_START_OFFSET. Chris@40: Chris@40: * tests/raw_test.c tests/Makefile.am Chris@40: Add new file for testing SF_FORMAT_RAW specific functionality. Chris@40: Chris@40: * tests/dwvw_test.c Chris@40: Updates. Chris@40: Chris@40: 2002-09-16 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Modified reading of 'smpl' chunk to take account of the sampler data field. Chris@40: Chris@40: * tests/utils.tpl tests/utils.h Chris@40: Added function print_test_name(). Chris@40: Chris@40: * tests/misc_test.c tests/write_read_test.tpl tests/lossy_comp_test.c Chris@40: tests/pcm_test.tpl tests/command_test.tpl tests/floating_point_test.c Chris@40: Convert to use function print_test_name(). Chris@40: Chris@40: 2002-09-15 Erik de Castro Lopo Chris@40: Chris@40: * doc/octave.html Chris@40: Added a link to some other Octave scripts for reading and writing sound Chris@40: files. Chris@40: Chris@40: * src/paf.c Chris@40: Change type of dummy data field to int. This should fix a benign compiler Chris@40: warning on some CPUs. Chris@40: Removed superfluous casts resulting from the above change. Chris@40: Chris@40: * src/rx2.c Chris@40: More hacking. Chris@40: Chris@40: 2002-09-14 Erik de Castro Lopo Chris@40: Chris@40: * src/mat5.c src/common.c Chris@40: Changed usage of snprintf() to LSF_SNPRINTF(). Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Updated to include new files and add new tests. Chris@40: Chris@40: * Win32/config.h Win32/sndfile.h Chris@40: Updated. Chris@40: Chris@40: * doc/api.html Chris@40: Added note about the possibility of "missing" features actually being Chris@40: implemented as an sf_command(). Chris@40: Chris@40: 2002-09-13 Erik de Castro Lopo Chris@40: Chris@40: * tests/misc_test.c Chris@40: Added previously missing update_header_test and zero_data_tests for PAF, Chris@40: MAT4 and MAT5 formats. Chris@40: Chris@40: * src/paf.c src/mat4.c src/mat5.c Chris@40: Fixed bugs uncovered by new tests above. Chris@40: Chris@40: * src/mat5.c Chris@40: Generalised parsing of name fields of MAT5 files. Chris@40: Chris@40: * src/mat5.c src/sndfile.c Chris@40: Added support for unsigned 8 bit PCM MAT5 files. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Added test for unsigned 8 bit PCM MAT5 files. Chris@40: Chris@40: * doc/index.html Chris@40: Added unsigned 8 bit PCM MAT5 to capabilities matrix. Chris@40: Chris@40: 2002-09-12 Erik de Castro Lopo Chris@40: Chris@40: * test/update_header_test.c tests/misc_test.c Chris@40: Renamed update_header_test.c to misc_test.c. Chris@40: Added zero_data_test() to check for case where file is opened for write and Chris@40: closed immediately. The resulting file can be left in a state where Chris@40: libsndfile cannot open it. Problem reported by Werner Schweer, the author Chris@40: of Muse. Chris@40: Chris@40: * src/aiff.c Chris@40: Removed superfluous cast. Chris@40: Chris@40: * src/wav.c src/svx.c Chris@40: Fixed case of file generated with no data. Chris@40: Removed superfluous cast. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed error on IA64 platform caused by incorrect termination of Chris@40: SndfileErrors struct array. This problem was found in the Debian buildd Chris@40: logs (http://buildd.debian.org/). Chris@40: Chris@40: * configure.in Chris@40: Added Octave directory. Chris@40: Chris@40: * Octave/Makefile.ma Chris@40: New Makfile.am for Octave directory. Chris@40: Chris@40: * Octave/sndfile_load.m Octave/sndfile_save.m Octave/sndfile_play.m Chris@40: New files for working with Octave. Chris@40: Chris@40: * doc/octave.html Chris@40: Document explaining the use of the above three Octave scripts. Chris@40: Chris@40: 2002-09-10 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed bug in RDWR mode. Chris@40: Chris@40: 2002-09-09 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Fixed psf_get_date_str() for systems which don't have gmtime_r() or Chris@40: gmtime(). Chris@40: Chris@40: * src/file_io.c Chris@40: Added #include for Win32. Reported by Koen Tanghe. Chris@40: Chris@40: 2002-09-08 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Added 'S' format specifier for psf_binheader_writef() which writes a C Chris@40: string, including single null terminator to the header. Chris@40: Added 'j' format specifier to allow jumping forwards or backwards in the Chris@40: header. Chris@40: Added function psf_get_date_str(). Chris@40: Chris@40: * src/mat5.c Chris@40: Complete read and write support. Chris@40: Chris@40: * doc/index.html Chris@40: Added entries for MAT4 and MAT5 in capabilities matrix. Chris@40: Chris@40: 2002-09-06 Erik de Castro Lopo Chris@40: Chris@40: * src/mat4.c Chris@40: Completed read and write support. Chris@40: Chris@40: * src/common.h src/sndfile.c Chris@40: Added MAT4 and MAT5 specific error messages. Chris@40: Chris@40: * tests/write_read_test.tpl tests/Makefile.am Chris@40: Added tests for MAT4 and MAT5 files. Chris@40: Chris@40: * tests/stdio_test.c tests/stdout_test.c tests/stdin_test.c Chris@40: Added tests for MAT4 and MAT5 files. Chris@40: Chris@40: 2002-09-05 Erik de Castro Lopo Chris@40: Chris@40: * src/command.c Chris@40: Added elements for SF_FORMAT_MAT4 and SF_FORMAT_MAT5 to major_formats Chris@40: array. Chris@40: Chris@40: * examples/sfconvert.c Chris@40: Added mat4 and mat5 output targets. Chris@40: Chris@40: 2002-09-04 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Added check to prevent errors openning read only formats for read/write. Chris@40: Chris@40: * src/interleave.c Chris@40: New file for interleaving non-interleaved data. Non-interleaved data is Chris@40: only supported on read. Chris@40: Chris@40: * src/Makefile.am Chris@40: Added src/interleave.c to build. Chris@40: Chris@40: 2002-09-03 Erik de Castro Lopo Chris@40: Chris@40: * src/double64.c src/common.h Chris@40: Added double64_be_read(), double64_le_read(), double64_be_write() and Chris@40: double64_le_write() which replace double64_read() and double64_write(). Chris@40: Chris@40: * src/common.c Chris@40: Cleanup of psf_binheader_readf() and add ability to read big and little Chris@40: endian doubles (required by mat4.c and mat5.c). Chris@40: Add ability for psf_binheader_writef() to write doubles to sound file Chris@40: headers. Chris@40: Chris@40: 2002-09-01 Erik de Castro Lopo Chris@40: Chris@40: * src/mat5.c Chris@40: New file for reading Matlab (tm) version 5 data files. This is also the Chris@40: native binary file format for version 2.1.X of GNU Octave which will be Chris@40: used for testing. Chris@40: Not complete yet. Chris@40: Chris@40: * src/mat4.c Chris@40: New file for reading Matlab (tm) version 4.2 data files. This is also the Chris@40: native binary file format for version 2.0.X of GNU Octave which will be Chris@40: used for testing. Chris@40: Not complete yet. Chris@40: Chris@40: * src/sndfile.h.in src/sndfile.c src/common.h src/command.c src/Makefile.am Chris@40: Mods to add Matlab files. Chris@40: Chris@40: * src/common.[ch] Chris@40: Added readf_endian field to SF_PRIVATE struct allowing endianness to Chris@40: remembered across calls to sf_binheader_readf(). Chris@40: Fixed bug in width_specifier behaviour for printing hex values. Chris@40: Chris@40: 2002-08-31 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Check return value of close() call in psf_fclose(). Chris@40: Chris@40: 2002-08-24 Erik de Castro Lopo Chris@40: Chris@40: * src/ms_adpcm.c Chris@40: Commented out some code where 0x10000 was being subtracted from a short Chris@40: and the result assigned to a short again. Andrew Zaja found this. Chris@40: Chris@40: 2002-08-23 Erik de Castro Lopo Chris@40: Chris@40: * doc/command.html Chris@40: Fixed typo found by Tommi Ilmonen. Chris@40: Chris@40: * src/ima_adpcm.c Chris@40: Changed type of diff from short to int to prevent errors which can occur Chris@40: during very rare circumstances. Thanks to FUWAFUWA. Chris@40: Chris@40: 2002-08-16 Erik de Castro Lopo Chris@40: Chris@40: * tests/floating_point_test.c Chris@40: Disable testing on machines without lrintf(). Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Added dwd.c and wve.c to build. Chris@40: Chris@40: * configure.in Chris@40: Bumped version to 1.0.0. Chris@40: Chris@40: 2002-08-15 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Add a #include for Mac OS 9. Thanks to Stephane Letz. Chris@40: Chris@40: * src/wav.c Chris@40: Changed an snprintf to LSF_SNPRINTF. Chris@40: Chris@40: * doc/Makefile.am Chris@40: Added version-1.html. Chris@40: Chris@40: 2002-08-14 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Bumped version to 1.0.rc6. Chris@40: Chris@40: * src/*.c Chris@40: Modified scaling of normalised floats and doubles to integers. Until now Chris@40: this has been done by multiplying by 0x8000 for short output, 0x80000000 Chris@40: for 32 bit ints and so on. Unfortunately this can cause an overflow and Chris@40: wrap around in the target value. All thes values have therefore been Chris@40: reduced to 0x7FFF, 0x7FFFFFFF and so on. The conversion from ints to Chris@40: normalised floats and doubles remains unchanged. This does mean that for Chris@40: repeated conversions normalised float -> pcm16 -> normalised float would Chris@40: result in a decrease in amplitude of 0x7FFF/0x8000 on every round trip. Chris@40: This is undesirable but less undesireable than the wrap around I am trying Chris@40: to avoid. Chris@40: Chris@40: * tests/floating_point_test.c Chris@40: Removed file hash checking because new float scaling procedure introduced Chris@40: above prevented the ability to crate a has on both x86 and PowerPC systems. Chris@40: Chris@40: 2002-08-13 Erik de Castro Lopo Chris@40: Chris@40: * src/txw.c Chris@40: Completed reading of TXW files. Seek doesn't work yet. Chris@40: Chris@40: * src/file_io.c Chris@40: Added a MacOS 9 replacement for ftruncate(). Chris@40: Chris@40: * MacOS/sndfile.h Chris@40: Added MacOS 9 header file. This should be copied into src/ to compile Chris@40: libsndfile for MacOS9. Chris@40: Chris@40: 2002-08-12 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed commands SF_SET_NORM_DOUBLE and SFC_SET_NORM_FLOAT to return their Chris@40: values after being set. Reported by Jussi Laako. Chris@40: Chris@40: * configure.in Chris@40: If autogen is not found, touch all .c and .h files in tests/. Chris@40: Chris@40: * src/common.c Chris@40: Added format width specifier to psf_log_printf() for %u, %d, %D and %X. Chris@40: Chris@40: * src/dwd.c Chris@40: Completed implementation of read only access to these files. Chris@40: Chris@40: * src/common.h src/*.c src/pcm.c Chris@40: Removed redundant field chars from SF_PRIVATE struct and modified Chris@40: pcm_init() to do without it. Chris@40: Chris@40: 2002-08-11 Erik de Castro Lopo Chris@40: Chris@40: * src/wve.c Chris@40: New file implementing read of Psion Alaw files. This will be a read only Chris@40: format. Implementation complete. Chris@40: Chris@40: * src/dwd/c Chris@40: Started implementation of DiamondWare Digitized files. Also read only, not Chris@40: complete. Chris@40: Chris@40: * src/wav.c Chris@40: Add parsing of 'smpl' chunk. Chris@40: Chris@40: * src/paf.c Chris@40: Fixed reading on un-normalized doubles and floats from 24 bit PAF files. Chris@40: This brings it into line with the reading of 8 bit files into Chris@40: un-normalized doubles which returns values in the range [-128, 127]. Chris@40: Chris@40: * src/common.c Chris@40: Modified psf_log_printf() to accept the %% conversion specifier to allow Chris@40: printing of a single '%'. Chris@40: Chris@40: * src/sds.c Chris@40: Read only of 16 bit samples is working. Need to build a test harness for Chris@40: this and other read only formats. Chris@40: Chris@40: 2002-08-10 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Added --enable-experimental configure option. Chris@40: Removed pkg-config message at the end of the configure process. Chris@40: Chris@40: * src/sds.c src/txw.c src/rx2.c src/sd2.c Chris@40: Moved all the code in these files inside #if ENABLE_EXPERIMENTAL_CODE Chris@40: blocks and added new *_open() function for the case where experimental is Chris@40: not enabled. These new functions just return SFE_UNIMPLMENTED. Chris@40: Chris@40: * Win32/sndfile.h src/sndfile.h.in src/common.h Chris@40: Removed un-necessary #pragma pack commands. Chris@40: Chris@40: * src/file_io.c Chris@40: Implemented psf_ftruncate() and much other hacking for Win32. Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Updated. Chris@40: Chris@40: * doc/win32.html Chris@40: Updated to include the copying of the sndfile.h file from the Win32/ Chris@40: directory to the src/ directory. Chris@40: Chris@40: * Make.bat Chris@40: Batch file to make compiling on Wi32 a little easier. Implements "make" and Chris@40: "make check". Chris@40: Chris@40: 2002-08-09 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: Add place holder for ftruncate() on Win32 which doesn't have ftruncate(). Chris@40: This will need to be fixed later. Chris@40: Chris@40: * src/sndfile.h.in Chris@40: New file (copy of sndfile.h) with sets up @TYPEOF_SF_COUNT_T@ which will be Chris@40: replaced by the correct type during configure. Chris@40: Chris@40: * configure.in Chris@40: Modified to find a good type for TYPEOF_SF_COUNT_T. Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed a bug when reading malformed headers. Chris@40: Chris@40: * src/common.c Chris@40: Set read values to zero before performing read. Chris@40: Chris@40: 2002-08-08 Erik de Castro Lopo Chris@40: Chris@40: * doc/command.html Chris@40: Fixed some HTML tags which were not allowing jumps to links within the Chris@40: page. Chris@40: Chris@40: * src/sds.c Chris@40: Massive hacking on this. Chris@40: Chris@40: * src/wav.c Chris@40: Added recognition of 'clm ' tag. Chris@40: Chris@40: 2002-08-07 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Added beginning of a capabilities list beyond simple file formats which Chris@40: can be read/written. Chris@40: Chris@40: * src/aiff.c Chris@40: Added parsing of INST and MARK chunks of AIFF files. At the moment this Chris@40: data is simply recorded in the log buffer. Later it will be possible to Chris@40: read this data from an application using sf_command(). Chris@40: Chris@40: * src/wav.c Chris@40: Added parsing of 'cue ' chunk which contains loop information in WAV files. Chris@40: Chris@40: * exampes/sndfile-info.c Chris@40: Changed reporting of Samples to Frames. Chris@40: Chris@40: * src/wav.c src/w64.c src/aiff.c src/wav_w64.h Chris@40: Moved from a samples to a frames nomenclature to avoid confusion. Chris@40: Chris@40: * doc/FAQ.html Chris@40: What's the best format for storing temporary files? Chris@40: Chris@40: * src/sds.c Chris@40: New file for reading/writing Midi Sample Dump Standard files. Chris@40: Chris@40: * src/Makefile.am src/sndfile.c src/common.[ch] Chris@40: Added hooks for sds.c. Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Changed from using sf_perror() to using sf_error_str(). Chris@40: Chris@40: 2002-08-06 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Added explanation of mode parameter for sf_open(). Chris@40: Added explanation of usage of SFM_* values in sf_seek(). Chris@40: Chris@40: * src/sndfile.[ch] src/command.c src/file_io.c src/common.h Chris@40: Implemented SFC_FILE_TRUNCATE to allow a file to be truncated. File Chris@40: truncation was suggested by James McCartney. Chris@40: Chris@40: * src/command.html Chris@40: Documented SFC_FILE_TRUNCATE. Chris@40: Chris@40: * tests/command_test.c Chris@40: Add tests for SFC_FILE_TRUNCATE. Chris@40: Chris@40: * src/sndfile.c Chris@40: Added a thrid parameter to the VALIDATE_SNDFILE_AND_ASSIGN_PSF macro to Chris@40: make resetting the error number optional. All uses of the macro other than Chris@40: in error reporting functions were changed to reset the error number. Chris@40: Chris@40: * src/pcm.c Chris@40: Fixed a bug were sf_read_* was logging an SFE_SHORT_READ even when no error Chris@40: occurred. Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Added tests of internal error state. Chris@40: Chris@40: 2002-08-05 Erik de Castro Lopo Chris@40: Chris@40: * src/GSM610/private.h src/GSM610/*.c src/GSM610/Makefile.am Chris@40: Renamed private.h to gsm610_priv.h to prevent clash with other headers Chris@40: named private.h in other directories. (Probably only a problem on MacOS 9). Chris@40: Chris@40: * src/G72x/private.h src/G72x/*.c src/G72x/Makefile.am Chris@40: Renamed private.h to g72x_priv.h to prevent clash with other headers Chris@40: named private.h in other directories. (Probably only a problem on MacOS 9). Chris@40: Chris@40: * MacOS/config.h Chris@40: Changed values of HAVE_LRINT and HAVE_LRINTF to force use of code in Chris@40: float_cash.h. Chris@40: Chris@40: * src/sndfile.h Chris@40: Changes the name of samples field of the SF_INFO to frames. The old name Chris@40: had caused too much confusion and it simply had to be changed. There will Chris@40: be at least one more pre-release. Chris@40: Chris@40: 2002-08-04 Erik de Castro Lopo Chris@40: Chris@40: * doc/index.html Chris@40: Updated formats matrix to include RAW (header-less) GSM 6.10. Chris@40: Fix specificaltion of table and spelling mistakes. Chris@40: Chris@40: * src/sndfile.c src/command.c Chris@40: Fixed bug in SFC_CALC_MAX_SIGNAL family and psf_calc_signal_max (). Chris@40: Chris@40: * tests/command.c Chris@40: Removed cruft. Chris@40: Added test for SFC_CALC_MAX_SIGNAL and SFC_CALC_NORM_MAX_SIGNAL. Chris@40: Chris@40: * configure.in Chris@40: Update version to 1.0.0rc5. Chris@40: Chris@40: * sfendian.h Chris@40: Removed inclusion of un-necessary header. Chris@40: Chris@40: 2002-08-03 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Minor fixes of info written to log buffer. Chris@40: Chris@40: * src/float_cast.h Chris@40: Add definition of HAVE_LRINT_REPLACEMENT. Chris@40: Chris@40: * tests/floating_point_test.c Chris@40: Fix file hash check on systems without lrint/lrintf. Chris@40: Chris@40: * tests/dft_cmp.c Chris@40: Limit SNR to less than -500.0dB. Chris@40: Chris@40: * examples/sndfile2oct.c Chris@40: Fixed compiler warnings. Chris@40: Chris@40: * doc/api.html Chris@40: Fixed error where last parameter of sf_error_str() was sf_count_t instead Chris@40: of size_t. Chris@40: Chris@40: 2002-08-02 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: Why doesn't libsndfile do interleaving/de-interleaving. Chris@40: Chris@40: * tests/pcm_test.tpl Chris@40: On Win32 do not perform hash check on files containing doubles. Chris@40: Chris@40: 2002-08-01 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Defined SF_COUNT_MAX_POSITIVE() macro, a portable way of setting variables Chris@40: of type sf_count_t to their maximum positive value. Chris@40: Chris@40: * src/dwvw.c src/w64.c Chris@40: Used SF_COUNT_MAX_POSITIVE(). Chris@40: Chris@40: 2002-07-31 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c Chris@40: Fixed bug in reading/writing of 24 bit PCM PAF files on big endian systems. Chris@40: Chris@40: * tests/floating_point_tests.c Chris@40: Fixed hash values for 24 bit PCM PAF files. Chris@40: Disabled file has check if lrintf() function is not available and added Chris@40: warning. Chris@40: Decreased level of signal from a peak of 1.0 to a value of 0.95 to prevent Chris@40: problems on platforms without lrintf() ie Solaris. Chris@40: Chris@40: 2002-07-30 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fixed a problem with two different kinds of mal-formed WAV file header. The Chris@40: first had the 'fact' chunk before the 'fmt ' chunk, the other had an Chris@40: incomplete 'INFO' chunk at the end of the file. Chris@40: Chris@40: * src/w64.c Chris@40: Added fix to allow differentiation between W64 files and ACID files. Chris@40: Chris@40: * src/au_g72x.c src/common.h src/sndfile.c Chris@40: Added error for G72x encoded files with more than one channel. Chris@40: Chris@40: * tests/pcm_test.tpl tests/utils.tpl Chris@40: Moved function check_file_hash_or_die() to utils.tpl. Function was then Chris@40: modified to calculate the has of the whole file. Chris@40: Chris@40: * src/wav.c Chris@40: Fixed problem writing the 'fact' chunk on big endian systems. Chris@40: Chris@40: * tests/sfconvert.c Chris@40: Fixed bug where .paf files were being written as Sphere NIST. Chris@40: Chris@40: 2002-07-29 Erik de Castro Lopo Chris@40: Chris@40: * src/voc.c Chris@40: Fix for reading headers generated using SFC_UPDATE_HEADER_NOW. Chris@40: Chris@40: * doc/command.html Chris@40: Add docs for SFC_UPDATE_HEADER_NOW and SFC_SET_UPDATE_HEADER_AUTO. Chris@40: Chris@40: 2002-07-28 Erik de Castro Lopo Chris@40: Chris@40: * man/sndfile-info.1 man/sndfile-play.1 Chris@40: Added manpages supplied by Joshua Haberman the Debian maintainer for Chris@40: libsndfile. Additional tweaks by me. Chris@40: Chris@40: * configure.in man/Makefile.am Chris@40: Hooked manpages into autoconf/automake system. Chris@40: Chris@40: * src/sndfile.c Chris@40: Added hooks for SFC_SET_UPDATE_HEADER_AUTO. Chris@40: Chris@40: * tests/update_header_test.c Chris@40: Improved rigor of testing. Chris@40: Chris@40: * src/*.c Chris@40: Fixed problem with *_write_header() functions. Chris@40: Chris@40: 2002-07-27 Erik de Castro Lopo Chris@40: Chris@40: * doc/*.html Chris@40: Updates to documentation to fix problems found by wdg-html-validator. Chris@40: Chris@40: * src/common.h src/command.c Chris@40: Added normalize parameter to calls to psf_calc_signal_max() and Chris@40: psf_calc_max_all_channels(). Chris@40: Chris@40: * src/sndfile.c Chris@40: Added handling for commands SFC_CALC_NORM_SIGNAL_MAX and Chris@40: SFC_CALC_NORM_MAX_ALL_CHANNELS. Chris@40: Chris@40: * doc/command.html Chris@40: Added entry for SFC_CALC_NORM_SIGNAL_MAX and SFC_CALC_NORM_MAX_ALL_CHANNELS. Chris@40: Chris@40: 2002-07-26 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Win32/Makefile.msvc Chris@40: Get sndfile-play program working on Win32. The Win32 PCM sample I/O API Chris@40: sucks. The sndfile-play program now works on Linux, MacOSX, Solaris and Chris@40: Win32. Chris@40: Chris@40: 2002-07-25 Erik de Castro Lopo Chris@40: Chris@40: * doc/FAQ.html Chris@40: New file for frequently asked questsions. Chris@40: Chris@40: 2002-07-22 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Documentation fixes. Chris@40: Chris@40: * src/au.[ch] src/au_g72x.c src/G72x/g72x.h Chris@40: Add support of 40kbps G723 ADPCM encoding. Chris@40: Chris@40: * tests/lossy_comp_test.c tests/floating_point_test.c Chris@40: Add tests for 40kbps G723 ADPCM encoding. Chris@40: Chris@40: * doc/index.html Chris@40: Update support matrix. Chris@40: Chris@40: 2002-07-21 Erik de Castro Lopo Chris@40: Chris@40: * doc/command.html Chris@40: Documented SFC_GET_SIMPLE_FORMAT_COUNT, SFC_GET_SIMPLE_FORMAT, Chris@40: SFC_GET_FORMAT_* and SFC_SET_ADD_PEAK_CHUNK. Chris@40: Chris@40: * src/sndfile.c src/pcm.c Chris@40: Add ability to turn on and off the addition of a PEAK chunk for floating Chris@40: point WAV and AIFF files. Chris@40: Chris@40: * src/sndfile.[ch] src/common.h src/command.c Chris@40: Added sf_command SFC_CALC_MAX_ALL_CHANNELS. Implemented by Maurizio Umberto Chris@40: Puxeddu. Chris@40: Chris@40: * doc/command.html Chris@40: Docs for SFC_CALC_MAX_ALL_CHANNELS (assisted by Maurizio Umberto Puxeddu). Chris@40: Chris@40: 2002-07-18 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/gsm610.c Chris@40: Finalised support for GSM 6.10 AIFF files and added support for GSM 6.10 Chris@40: encoded RAW (header-less) files. Chris@40: Chris@40: * src/wav.c Chris@40: Add support for IBM_FORMAT_MULAW and IBM_FORMAT_ALAW encodings. Chris@40: Chris@40: * src/api.html Chris@40: Fixed more documentation bugs. Chris@40: Chris@40: 2002-07-17 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h src/common.h Chris@40: Moved some yet-to-be-implelmented values for SF_FORMAT_* from the public Chris@40: header file sndfile.h to the private header file common.h to avoid Chris@40: confusion about the actual capabilities of libsndfile. Chris@40: Chris@40: 2002-07-16 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/wav.c Chris@40: Fixed file parsing for WAV and AIFF files containing non-audio data after Chris@40: the data chunk. Chris@40: Chris@40: * src/aiff.c src/sndfile.c Chris@40: Add support for GSM 6.10 encoded AIFF files. Chris@40: Chris@40: * tests/lossy_comp_test.c tests/Makefile.am Chris@40: Add tests for GSM 6.10 encoded AIFF files. Chris@40: Chris@40: * src/*.c Chris@40: Fix compiler warnings. Chris@40: Chris@40: 2002-07-15 Erik de Castro Lopo Chris@40: Chris@40: * tests/command_test.c Chris@40: For SFC_SET_NORM_* tests, change the file format from SF_FORMAT_WAV to Chris@40: SF_FORMAT_RAW. Chris@40: Chris@40: * src/sndfile.c Chris@40: Added sf_command(SFC_TEST_ADD_TRAILING_DATA) to allow testing of reading Chris@40: from AIFF and WAV files with non-audio data after the audio chunk. Chris@40: Chris@40: * src/common.h Chris@40: Add test commands SFC_TEST_WAV_ADD_INFO_CHUNK and Chris@40: SFC_TEST_AIFF_ADD_INST_CHUNK. When these commands are working, they will be Chris@40: moved to src/sndfile.h Chris@40: Chris@40: * src/aiff.c src/wav.c Chris@40: Begin implementation of XXXX_command() hook for sf_command(). Chris@40: Chris@40: * tests/write_read_test.tpl Chris@40: Added sf_command (SFC_TEST_ADD_TRAILING_DATA) to ensure above new code was Chris@40: working. Chris@40: Chris@40: 2002-07-13 Erik de Castro Lopo Chris@40: Chris@40: * tests/update_header_test.c Chris@40: Allow read sample count == write sample count - 1 to fix problems with VOC Chris@40: files. Chris@40: Chris@40: * tests/write_read_test.tpl tests/pcm_test.tpl Chris@40: Fixed some problems in the test suite discovered by using Valgrind. Chris@40: Chris@40: 2002-07-12 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.[ch] tests/*.c Chris@40: Renamed check_log_buffer() to check_log_buffer_or_die(). Chris@40: Chris@40: * src/sndfile.c Chris@40: SFC_UPDATE_HEADER_NOW and SFC_SETUPDATE_HEADER_AUTO almost finished. Works Chris@40: for all file formats other than VOC. Chris@40: Chris@40: 2002-07-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.[ch] src/common.h Chris@40: Started adding functionality to allow the file header to be updated before Chris@40: the file is closed on files open for SFM_WRITE. This was requested by Chris@40: Maurizio Umberto Puxeddu who is using libsndfile for file I/O in iCSound. Chris@40: Chris@40: * tests/update_header_test.c Chris@40: New test program to test that the above functionality is working correctly. Chris@40: Chris@40: * tests/peak_chunk_test.c tests/floating_point_test.c Chris@40: Cleanups. Chris@40: Chris@40: 2002-07-10 Erik de Castro Lopo Chris@40: Chris@40: * src/sfendian.[ch] Chris@40: Changed length count parameters for all endswap_XXX() functions from Chris@40: sf_count_t (which can be 64 bit even on 32 bit architectures) to int. These Chris@40: functions are only called frin inside the library, are always called with Chris@40: integer parameters and doing the actual calculation on 64 bit values is Chris@40: slow in comparision to doing it on ints. Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: More playback hacking for Win32. Chris@40: Chris@40: 2002-07-09 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: In psf_log_printf(), changed %D format conversion specifier to %M (marker) and Chris@40: added %D specifier for printing the sf_count_t type. Chris@40: Chris@40: * src/*.c Chris@40: Changed all usage of psf_log_printf() with %D format conversion specifiers Chris@40: to use %M conversion instead. Chris@40: Chris@40: * tests/pcm_test.tpl tests/pcm_test.def Chris@40: New files to autogen pcm_test.c. Chris@40: Chris@40: * src/pcm.c Chris@40: Fixed bug in scaling floats and doubles to 24 bit PCM and vice versa. Chris@40: Chris@40: 2002-07-08 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Fix setup of $ac_cv_sys_largefile_CFLAGS so that sndfile.pc gets valid Chris@40: values for CFLAGS. Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Start adding playback support for Win32. Chris@40: Chris@40: 2002-07-07 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Worked to removed compiler warnings. Chris@40: Extensive refactoring. Chris@40: Chris@40: * src/common.[ch] Chris@40: Added function psf_memset() which works like the standard C function memset Chris@40: but takes and sf_count_t as the length parameter. Chris@40: Chris@40: * src/sndfile.c Chris@40: Replaced calls to memset(0 with calls to psf_memset() as required. Chris@40: Chris@40: 2002-07-06 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Added "libsndfile : " to the start of all error messages. This was suggested Chris@40: by Conrad Parker author of Sweep ( http://sweep.sourceforge.net/ ). Chris@40: Chris@40: * src/sfendian.[ch] Chris@40: Added endswap_XXXX_copy() functions. Chris@40: Chris@40: * src/pcm.c src/float32.c src/double64.c Chris@40: Use endswap_XXXX_copy() functions and removed dead code. Chris@40: Cleanups and optimisations. Chris@40: Chris@40: 2002-07-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/sndfile.h Chris@40: Gave values to all the SFC_* enum values to allow better control of the Chris@40: interface as commands are added and removed. Chris@40: Added new command SFC_SET_ADD_PEAK_CHUNK. Chris@40: Chris@40: * src/wav.c src/aiff.c Chris@40: Modified wav_write_header and aiff_write_header to make addition of a PEAK Chris@40: chunk optional, even on floating point files. Chris@40: Chris@40: * tests/benchmark.tpl Chris@40: Added call to sf_command(SFC_SET_ADD_PEAK_CHUNK) to turn off addition of a Chris@40: PEAK chunk for the benchmark where we are trying to miximize speed. Chris@40: Chris@40: * src.pcm.c Chris@40: Changed tribyte typedef to something more sensible. Chris@40: Further conversion speed ups. Chris@40: Chris@40: 2002-07-03 Erik de Castro Lopo Chris@40: Chris@40: * src/command.c Chris@40: In major_formats rename "Sphere NIST" to "NIST Sphere". Chris@40: Chris@40: * src/common.c src/sfendian.c Chris@40: Moved all endswap_XXX_array() functions to sfendian.c. These functions will Chris@40: be tweaked to provide maximum performance. Since maximum performance on one Chris@40: platform does not guarantee maximum performance on another, a small set of Chris@40: functions will be written and the optimal one chosen at compile time. Chris@40: Chris@40: * src/common.h src/sfendian.h Chris@40: Declarations of all endswap_XXX_array() functions moved to sfendian.h. Chris@40: Chris@40: * src/Makefile.am Chris@40: Add sfendian.c to build targets. Chris@40: Chris@40: 2002-07-01 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c src/sfendian.h Chris@40: Re-coded PCM encoders and decoders to match or better the speed of Chris@40: libsndfile version 0.0.28. Chris@40: Chris@40: 2002-06-30 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Add checking for WAVPACK data in standard PCM WAV file. Return error if Chris@40: found. This WAVPACK is *WAY* broken. It uses the same PCM WAV file header Chris@40: and then stores non-PCM data. Chris@40: Chris@40: * tests/benchmark.tpl Chris@40: Added more tests. Chris@40: Chris@40: 2002-06-29 Erik de Castro Lopo Chris@40: Chris@40: * tests/benchmark.tpl Chris@40: Added conditional definition of M_PI. Chris@40: For Win32, set WRITE_PERMS to 0777. Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Added target to make generate program on Win32. Chris@40: Chris@40: * src/samplitude.c Chris@40: Removed handler for Samplitude RAP file format. This file type seems rarer Chris@40: than hens teeth and is completely undocumented. Chris@40: Chris@40: * src/common.h src/sndfile.c src/Makefile.am Win32/Makefile.msvc Chris@40: Removed references to sampltiude RAP format. Chris@40: Chris@40: * tests/benchmark.tpl Chris@40: Benchmark program now prints the libsndfile version number when run. This Chris@40: program was also backported to version 0 to compare results. Version Chris@40: 1.0.0rc2 is faster than version 0.0.28 on most conversions but slower on Chris@40: some. The slow ones need to be fixed before final release. Chris@40: Chris@40: 2002-06-28 Erik de Castro Lopo Chris@40: Chris@40: * tests/benchmark.def tests/benchmark.tpl Chris@40: New files which generate tests/benchmark.c using Autogen. Added int -> Chris@40: SF_FORMAT_PCM_24 test. Chris@40: Chris@40: * tests/benchmark.c Chris@40: Now and Autogen output file. Chris@40: Chris@40: * tests/Makefile.am Chris@40: Updated for above changes. Chris@40: Chris@40: 2002-06-27 Erik de Castro Lopo Chris@40: Chris@40: * tests/benchmark.c Chris@40: Basic benchmark program complete. Need to convert it to Autogen. Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Added benchmark.exe target. Chris@40: Chris@40: 2002-06-26 Erik de Castro Lopo Chris@40: Chris@40: * examples/generate.c Chris@40: New program to generate a number of different output file formats from a Chris@40: single input file. This allows testing of the created files. Chris@40: Chris@40: * tests/benchmark.c Chris@40: New test program to benchmark libsndfile. Nowhere near complete yet. Chris@40: Chris@40: * examples/Makefile.am tests/Makefile.am Chris@40: New make rules for the two new programs. Chris@40: Chris@40: 2002-06-25 Erik de Castro Lopo Chris@40: Chris@40: * Win32/libsndfile.def Chris@40: Removed definition for sf_signal_max(). Chris@40: Chris@40: * src/sndfile.c Chris@40: Removed cruft. Chris@40: Chris@40: * doc/index.html Chris@40: A number of documentation bugs were fixed. Thanks to Anand Kumria. Chris@40: Chris@40: * doc/version-1.html Chris@40: Minor doc updates. Chris@40: Chris@40: * configure.in Chris@40: Bumped version to 1.0.0rc2. Chris@40: Chris@40: * src/sf_command.h src/Makefile.am Chris@40: Removed the header file as it was no longer being used. Thanks to Anand Chris@40: Kunria for spotting this. Chris@40: Chris@40: * doc/index.html Chris@40: A number of documentation bugs were fixed. Thanks to Anand Kumria. Chris@40: Chris@40: 2002-06-24 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Test for Win32 before testing SIZEOF_OFF_T so that it works correctly Chris@40: on Win32.. Chris@40: Chris@40: * src/file_io.c Chris@40: Win32 fixes to ensure O_BINARY is used for file open. Chris@40: Chris@40: * doc/win32.html Chris@40: New file documenting the building libsndfile on Win32. Chris@40: Chris@40: * doc/*.html Chris@40: Updating of documentation. Chris@40: Chris@40: 2002-06-23 Erik de Castro Lopo Chris@40: Chris@40: * tests/pcm_test.c Chris@40: Minor changes to allow easier determination of test file name. Chris@40: Chris@40: * src/sndfile.[ch] Chris@40: Removed function sf_signal_max(). Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Changed call to sf_signal_max() to a call to sf_command(). Chris@40: Chris@40: 2002-06-22 Erik de Castro Lopo Chris@40: Chris@40: * src/format.c src/command.c Chris@40: Renamed format.c to command.c which will now include code for sf_command() Chris@40: calls to perform operations other than format commands. Chris@40: Chris@40: * src/sndfile.c src/sndfile.h Chris@40: Removed function sf_get_signal_max() which is replaced by commands passed Chris@40: to sf_command(). Chris@40: Chris@40: * src/command.c Chris@40: Implement commands SFC_CALC_SIGNAL_MAX. Chris@40: Chris@40: * doc/command.html Chris@40: Documented SFC_CALC_SIGNAL_MAX. Chris@40: Chris@40: 2002-06-21 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-play.c Chris@40: Mods to make sndfile-play work on Solaris. The program sndfile-play now Chris@40: runs on Linux, MaxOSX and Solaris. Win32 to come. Chris@40: Chris@40: * src/format.c Chris@40: Added SF_FORMAT_DWVW_* to subtype_formats array. Chris@40: Chris@40: * src/nist.c Chris@40: Added support for 8 bit NIST Sphere files. Example file supplied by Anand Chris@40: Kumria. Chris@40: Chris@40: 2002-06-20 Erik de Castro Lopo Chris@40: Chris@40: * examples/sndfile-info.c Chris@40: Tidy up of output format. Chris@40: Chris@40: * examnples/sndfile-play.c Chris@40: Mods to make sndfile-play work on MacOSX using Apple's CoreAudio API. Chris@40: Chris@40: * configure.in Chris@40: Add new variables OS_SPECIFIC_INCLUDES and OS_SPECIFIC_LINKS which were Chris@40: required to supply extra include paths and link parameters to get Chris@40: sndfile-play working on MacOSX. Chris@40: Chris@40: * examples/Makefile.am Chris@40: Use OS_SPOECIFIC_INCLUDES and OS_SPECIFIC_LINKS to build commands for Chris@40: sndfile-play. Chris@40: Chris@40: 2002-06-19 Erik de Castro Lopo Chris@40: Chris@40: * src/nist.c Chris@40: Added ability to read/write new NIST Sphere file types (A-law, u-law). Chris@40: Header parser was re-written from scratch. Example files supplied by Anand Chris@40: Kumria. Chris@40: Chris@40: * src/sndfile.c Chris@40: Support for A-law and u-law NIST files. Chris@40: Chris@40: * tests/Makefile.am tests/lossy_comp_test.c Chris@40: Tests for A-law and u-law NIST files. Chris@40: Chris@40: 2002-06-18 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.c Chris@40: Fixed an error in error string. Chris@40: Chris@40: 2002-06-17 Erik de Castro Lopo Chris@40: Chris@40: * acinclude.m4 Chris@40: Removed exit command to allow cross-compiling. Chris@40: Chris@40: * Win32/unistd.h src/file_io.c Chris@40: Moved contents of first file into the second file (enclosed in #ifdef). Chris@40: Win32/unistd.h is now an empty file but still must be there for libsndfile Chris@40: to compile on Win32. Chris@40: Chris@40: * src/sd2.c, src/sndfile.c: Chris@40: Fixes for Sound Designer II files on big endian systems. Chris@40: Chris@40: 2002-06-16 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Modified to work around problems with crappy MacOSX version of sed. Chris@40: Added sanity check for proper values for CFLAGS. Chris@40: Chris@40: 2002-06-14 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Code clean up in sf_open (). Chris@40: Chris@40: * Win32/Makefile.msvc Chris@40: Michael Fink's contributed MSVC++ makefile was hacked to bits and put back Chris@40: together in a new improved form. Chris@40: Chris@40: * src/file_io.c Chris@40: Fixes for Win32; _lseeki64() returns an invalid argument for calls like Chris@40: _lseeki64(fd, 0, SEEK_CUR) so need to use _telli64 (fd) instead. Chris@40: Chris@40: * src/common.h src/sndfile.c src/wav.c src/aiff.c Chris@40: Added SFE_LOG_OVERRUN error. Chris@40: Added termination for potential infinite loop when parsing file headers. Chris@40: Chris@40: * src/wav.c src/w64.c Chris@40: Fixed bug casuing incorrect header generation when opening file read/write. Chris@40: Chris@40: 2002-06-12 Erik de Castro Lopo Chris@40: Chris@40: * doc/api.html Chris@40: Improved the documentation to make it clearer that the file read method Chris@40: and the underlying file format are completely disconnected. Suggested Chris@40: by Josh Green. Chris@40: Chris@40: * doc/command.html Chris@40: Started correcting docs to take into account changes made to the Chris@40: operations of the sf_command () function. Not complete yet. Chris@40: Chris@40: * src/sndfile.c Chris@40: Reverted some changes which had broken the partially working SDII header Chris@40: parsing. Now have access to an iBook with OS X so reading and writing SDII Chris@40: files on all platforms should be a reality in the near future. On Mac this Chris@40: will involve reading the resource fork via the standard MacOS API. To move Chris@40: a file from Mac to another OS, the resource and data forks will need to be Chris@40: combined before transfer. The combined file will be read on both Mac and Chris@40: other OSes like any other file. Chris@40: Chris@40: 2002-06-08 Erik de Castro Lopo Chris@40: Chris@40: * ltmain.sh Chris@40: Applied a patch from http://fink.sourceforge.net/doc/porting/libtool.php Chris@40: which allows libsndfile to compile on MacOSX 10.1. This patch should not Chris@40: interfere with compiling on other OSes. Chris@40: Chris@40: * src/GSM610/private.h Chris@40: Changes to fix compile problems on MacOSX (see src/GSM610/ChangeLog). Chris@40: Chris@40: * src/float_cast.h Chris@40: Added MacOSX replacements for lrint() and lrintf(). Chris@40: Chris@40: 2002-06-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Replaced the code to print the filename to the log buffer when a file is Chris@40: opened. This code seems to have been left out during the merge of Chris@40: sf_open_read() and sf_open_write() to make a single functions sf_open(). Chris@40: Chris@40: 2002-06-01 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fixed a bug where the WAV header parser was going into an infinite loop Chris@40: on a badly formed LIST chunk. File supplied by David Viens. Chris@40: Chris@40: 2002-05-25 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Added a message at the end of the configuration process to warn about the Chris@40: need for the use of pkg-config when linking programs against version 1 of Chris@40: libsndfile. Chris@40: Chris@40: * doc/pkg-config.html Chris@40: New documentation file containing details of how to use pkg-config to Chris@40: retrieve settings for CFLAGS and library locations for linking files Chris@40: against version 1 of libsndfile. Chris@40: Chris@40: 2002-05-17 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fixed minor bug in handling of so-called ACIDized WAV files. Chris@40: Chris@40: 2002-05-16 Erik de Castro Lopo Chris@40: Chris@40: * Win32/libsndfile.def Win32/Makefile.msvc Chris@40: Two new files contributed by Michael Fink (from the winLAME project) Chris@40: which allows libsndfile to be built on windows in a MSDOS box by doing Chris@40: "nmake -f Makefile.msvc". Way cool! Chris@40: Chris@40: 2002-05-15 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: MacOSX is SSSOOOOOOO screwed up!!! I can't believe how hard it is to Chris@40: generate a tarball which will configure and compile on that platform. Chris@40: Joined the libtool mailing list to try and get some answers. Chris@40: Chris@40: 2002-05-13 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Changed to autoconf version 2.50. MacOSX uses autoconf version 2.53 which Chris@40: is incompatible with with version 2.13 which had been using until now. Chris@40: The AC_SYS_LARGE_FILE macro distributed withe autoconf 2.50 is missing a Chris@40: few features so AC_SYS_EXTRA_LARGE file was defined to replace it. Chris@40: Chris@40: * configure.in Chris@40: Changed to automake version 1.5 to try and make a tarball which will Chris@40: work on MacOSX. Chris@40: Chris@40: 2002-05-12 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_gsm610.c Chris@40: Changed name to gsm610.c. Added reading/writing of headerless files. Chris@40: Chris@40: * src/sndfile.c src/raw.c Chris@40: Added ability to read/write headerless (SF_FORMAT_RAW) GSM 6.10 files. Chris@40: Chris@40: 2002-05-11 Erik de Castro Lopo Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Clean up in preparation for Autogen-ing this file. Chris@40: Chris@40: * src/GSM610/*.[ch] Chris@40: Code cleanup and prepartion forgetting file seek working. Details in Chris@40: src/GSM610/ChangeLog. Chris@40: Chris@40: * sndfile.pc.in Chris@40: Testing complete. Is sndfile.m4 still needed? Chris@40: Chris@40: 2002-05-09 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.tpl tests/rdwr_test.tpl Chris@40: Merged tests from these two programs into write_read_test.tpl and deleted Chris@40: rdwr_test.tpl. Chris@40: Chris@40: 2002-05-08 Erik de Castro Lopo Chris@40: Chris@40: * src/w64.c src/svx.c src/paf.c Chris@40: Fixed bugs in read/write mode. Chris@40: Chris@40: 2002-05-07 Erik de Castro Lopo Chris@40: Chris@40: * examples/Makefile.am Chris@40: Renamed sfplay.c to sndfile-play.c and sndfile_info.c to sndfile-info.c for Chris@40: consistency when these programs become part of the Debian package Chris@40: sndfile-programs. Chris@40: Chris@40: * sndfile.pc.in Chris@40: New file to replace sndfile-config.in. Libsndfile now uses the pkg-config Chris@40: model for providing installation parameters to dependant programs. Chris@40: Chris@40: * src/sndfile.c Chris@40: Cleanup of code in sf_open(). Chris@40: Chris@40: 2002-05-06 Erik de Castro Lopo Chris@40: Chris@40: * tests/utils.tpl tests/write_read_test.tpl Chris@40: More conversion to Autogen fixes and enchancements. Chris@40: Chris@40: * src/*.c Chris@40: Read/write mode is now working for 16, 24 and 32 bit PCM as well as 32 Chris@40: bit float and 64 bit double data. More tests still required. Chris@40: Chris@40: * src/Makefile.am Chris@40: Added DISTCLEANFILES target to remove config.status and config.last. Chris@40: Chris@40: * Win32/Makefile.am MacOS/Makefile.am Chris@40: Added DISTCLEANFILES target to remove Makefile. Chris@40: Chris@40: 2002-05-05 Erik de Castro Lopo Chris@40: Chris@40: * src/*.[ch] tests/rdwr_test.c Chris@40: More verifying workings of read/write mode. Fixing bugs found. Chris@40: Chris@40: * tests/utils.[ch] Chris@40: Made these files Autogen generated files. Chris@40: Chris@40: * tests/util.tpl tests/util.def Chris@40: New Autogen files to generate utils.[ch]. Moved some generic test functions Chris@40: into this file. Autogen is such a great tool! Chris@40: Chris@40: 2002-05-03 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c src/float_cast.h Win32/config.h Chris@40: Fixed a couple of Win32 specific bugs pointed out by Michael Fink Chris@40: (maintainer of WinLAME) and David Viens. Chris@40: Chris@40: * tests/check_log_buffer.[ch] tests/utils.[ch] Chris@40: Moved check_log_buffer() to utils.[ch] and deleted old file. Chris@40: Chris@40: 2002-05-02 Erik de Castro Lopo Chris@40: Chris@40: * src/common.[ch] src/sndfile.c Chris@40: New function psf_default_seek() which will be the default seek function Chris@40: for things like PCM and floating point data. This default is set for Chris@40: both read and write in sf_open() but can be over-ridden by any codec Chris@40: during it's initialisation. Chris@40: Chris@40: 2002-05-01 Erik de Castro Lopo Chris@40: Chris@40: * src/au.c Chris@40: AU files use a data size value of -1 to mean unknown. Fixed au_open_read() Chris@40: to allow opening files like this. Chris@40: Chris@40: * tests/rdwr_test .c Chris@40: Added more tests. Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed bugs in read/write mode found due to improvements in the test Chris@40: program. Chris@40: Chris@40: 2002-04-30 Erik de Castro Lopo Chris@40: Chris@40: * tests/rdwr_test .c Chris@40: New file for testing read/write mode. Chris@40: Chris@40: 2002-04-29 Erik de Castro Lopo Chris@40: Chris@40: * m4/* Chris@40: Removed all m4 macros from this directory as they get concatenated to form Chris@40: the file aclocal.m4 anyway. Chris@40: Chris@40: * sndfile.m4 Chris@40: Moved this from the m4 directory to the root directory asn this is part of Chris@40: the distribution and is installed during "make install". Chris@40: Chris@40: 2002-04-29 Erik de Castro Lopo Chris@40: Chris@40: * src/float32.c Chris@40: Removed logging of peaks for all file formats other than AIFF and WAV. Chris@40: Chris@40: * tests/write_read_test.tpl tests/write_read_test.def Chris@40: New files which autogen uses to generate write_read_test.c. Doing it this Chris@40: way makes write_read_test.c far easier to maintain. Other test programs Chris@40: will be converted to autogen in the near future. Chris@40: Chris@40: * src/*.c Chris@40: Fixed a few bugs found when testing on Sparc (bug endian) Solaris. Chris@40: Chris@40: 2002-04-28 Erik de Castro Lopo Chris@40: Chris@40: * doc/*.html Chris@40: Fixed documention versioning. Chris@40: Chris@40: * configure.in Chris@40: Fixed a bug in the routines which search for Large File Support on systems Chris@40: which have large file support by defualt. Chris@40: Chris@40: 2002-04-27 Erik de Castro Lopo Chris@40: Chris@40: * src/*.[ch] Chris@40: Found and fixed an issue which can cause a bug in other software (I was Chris@40: porting Conrad Parker's Sweep program from version 0 of the library to Chris@40: version 1). When opening a file for write, the libsndfile code would Chris@40: set the sfinfo.samples field to a maximum value. Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests to detect the above problem. Chris@40: Chris@40: 2002-04-25 Erik de Castro Lopo Chris@40: Chris@40: * src/*.[ch] Chris@40: Finished base implementation of read/write mode. Much more testing still Chris@40: needed. Chris@40: Chris@40: * m4/largefile.m4 Chris@40: Macro for detecting Large File Standard capabilities. This macro was ripped Chris@40: out of the aclocal.m4 file of GNU tar-1.13. Chris@40: Chris@40: * configure.in Chris@40: Added detection of large file support. Files larger than 2 Gigabytes should Chris@40: now be supported on 64 bit platforms and many 32 bit platforms including Chris@40: Linux (2.4 kernel, glibc-2.2), *BSD, MacOS, Win32. Chris@40: Chris@40: * libsndfile_convert_version.py Chris@40: A Python script which attempts to autoconvert code written to use version 0 Chris@40: to version 1. Chris@40: Chris@40: 2002-04-24 Erik de Castro Lopo Chris@40: Chris@40: * src/*.[ch] Chris@40: Finished base implementation of read/write mode. Much more testing still Chris@40: needed. Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Preliminary tests for read/write mode added. More needed. Chris@40: Chris@40: 2002-04-20 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.[ch] Chris@40: Removed sf_open_read() and sf_open_write() functions,replacting them with Chris@40: sf_open() which takes an extra mode parameter (SF_OPEN_READ, SF_OPEN_WRITE, Chris@40: or SF_OPEN_RDWR). This new function sf_open can now be modified to allow Chris@40: opening a file formodification (RDWR). Chris@40: Chris@40: 2002-04-19 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Completed merging of separate xxx_open_read() and xxx_open_write() Chris@40: functions. All tests pass. Chris@40: Chris@40: 2002-04-18 Erik de Castro Lopo Chris@40: Chris@40: * src/au.c Chris@40: Massive refactoring required to merge au_open_read() with au_open_write() Chris@40: to create au_open(). Chris@40: Chris@40: 2002-04-17 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Started changes required to allow a sound file to be opened in read/write Chris@40: mode, with separate file pointers for read and write. This involves merging Chris@40: of encoder/decoder functions like pcm_read_init() and pcm_write_init() Chris@40: int a new function pcm_init() as well as doing something similar for all Chris@40: the file type specific functions ie aiff_open_read() and aiff_open_write() Chris@40: were merged to make the function aiff_open(). Chris@40: Chris@40: 2002-04-15 Erik de Castro Lopo Chris@40: Chris@40: * src/file_io.c Chris@40: New file containing psf_fopen(), psf_fread(), psf_fwrite(), psf_fseek() and Chris@40: psf_ftell() functions. These function will replace use of fopen/fread/fwrite Chris@40: etc and allow access to files larger than 2 gigabytes on a number of 32 bit Chris@40: OSes (Linux on x86, 32 bit Solaris user space apps, Win32 and MacOS). Chris@40: Chris@40: * src/*.c Chris@40: Replaced all instances of fopen with psf_open, fread with psd_read, fwrite Chris@40: with psf_write and so on. Chris@40: Chris@40: 2002-03-11 Erik de Castro Lopo Chris@40: Chris@40: * src/dwvw.c Chris@40: Finally fixed all known problems with 12, 16 and 24 bit DWVW encoding. Chris@40: Chris@40: * tests/floating_point_test.c Chris@40: Added tests for 12, 16 and 24 bit DWVW encoding. Chris@40: Chris@40: 2002-03-03 Erik de Castro Lopo Chris@40: Chris@40: * m4/endian.m4 Chris@40: Defines a new m4 macro AC_C_FIND_ENDIAN, for determining the endian-ness of Chris@40: the target CPU. It first checks for the definition of BYTE_ORDER in Chris@40: , then in and . If none of these work Chris@40: and the C compiler is not a cross compiler it compiles and runs a program Chris@40: to test for endian-ness. If the compiler is a cross compiler it makes a Chris@40: guess based on $target_cpu. Chris@40: Chris@40: * configure.in Chris@40: Modified to use AC_C_FIND_ENDIAN. Chris@40: Chris@40: * src/sfendian.h Chris@40: Simplified. Chris@40: Chris@40: 2002-02-23 Erik de Castro Lopo Chris@40: Chris@40: * tests/floating_point_test.c Chris@40: Tests completely rewritten using the dft_cmp function. Now able to Chris@40: calculate a quick guesstimate of the Signal to Noise Ratio of the encoder. Chris@40: Chris@40: 2002-02-15 Erik de Castro Lopo Chris@40: Chris@40: * tests/dft_cmp.[ch] Chris@40: New files containing functions for comparing pre and post lossily Chris@40: compressed data using a quickly hacked DFT. Chris@40: Chris@40: * tests/utils.[ch] Chris@40: New files containing functions for saving pre and post encoded data in a Chris@40: file readable by the GNU Octave package. Chris@40: Chris@40: 2002-02-13 Erik de Castro Lopo Chris@40: Chris@40: * m4/lrint.m4 m4/lrintf.m4 Chris@40: Fixed m4 macros to define HAVE_LRINT and HAVE_LRINTF even when the test Chris@40: is cached. Chris@40: Chris@40: 2002-02-12 Erik de Castro Lopo Chris@40: Chris@40: * tests/floating_point_test.c Chris@40: Fixed improper use of strncat (). Chris@40: Chris@40: 2002-02-11 Erik de Castro Lopo Chris@40: Chris@40: * tests/headerless_test.c Chris@40: New test program to test the ability to open and read a known file type as a Chris@40: RAW header-less file. Chris@40: Chris@40: 2002-02-07 Erik de Castro Lopo Chris@40: Chris@40: * tests/losy_comp_test.c Chris@40: Added a test to ensure that the data read from a file is not all zeros. Chris@40: Chris@40: * examples/sfconvert.c Chris@40: Added "-gsm610" encoding types. Chris@40: Chris@40: 2002-01-29 Erik de Castro Lopo Chris@40: Chris@40: * examples/sfconvert.c Chris@40: Added "-dwvw12", "-dwvw16" and "-dwvw24" encoding types. Chris@40: Chris@40: * tests/dwvw_test.c Chris@40: New file for testing DWVW encoder/decoder. Chris@40: Chris@40: 2002-01-28 Erik de Castro Lopo Chris@40: Chris@40: * src/dwvw.c Chris@40: Implemented writing of DWVW. 12 bit seems to work, 16 and 24 bit still broken. Chris@40: Chris@40: * src/aiff.c Chris@40: Improved reporting of encoding types. Chris@40: Chris@40: * src/voc.c Chris@40: Clean up. Chris@40: Chris@40: 2002-01-27 Erik de Castro Lopo Chris@40: Chris@40: * src/dwvw.c Chris@40: New file implementing lossless Delta Word Variable Width (DWVW) encoding. Chris@40: Reading 12 bit DWVW is now working. Chris@40: Chris@40: * src/aiff.c common.h sndfile.c Chris@40: Added hooks for DWVW encoded AIFF and RAW files. Chris@40: Chris@40: 2002-01-15 Erik de Castro Lopo Chris@40: Chris@40: * src/w64.c Chris@40: Robustify header parsing. Chris@40: Chris@40: * src/wav_w64.h Chris@40: Header file wav.h was renamed to wav_w64.h to signify sharing of Chris@40: definitions across the two file types. Chris@40: Chris@40: * src/wav.c src/w64.c src/wav_w64.c Chris@40: Refactoring. Chris@40: Modified and moved functions with a high degree of similarity between Chris@40: wav.c and w64.c to wav_w64.c. Chris@40: Chris@40: 2002-01-14 Erik de Castro Lopo Chris@40: Chris@40: * src/w64.c Chris@40: Completed work on getting read and write working. Chris@40: Chris@40: * examples/sfplay.c Chris@40: Added code to scale floating point data so it plays at a reasonable volume. Chris@40: Chris@40: * tests/Makefile.am tests/write_read_test.c Chris@40: Added tests for W64 files. Chris@40: Chris@40: 2002-01-13 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Modded all code in file header writing routines to use Chris@40: psf_new_binheader_writef(). Chris@40: Removed psf_binheader_writef() from src/common.c. Chris@40: Globally replaced psf_new_binheader_writef with psf_binheader_writef. Chris@40: Chris@40: 2002-01-12 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Modded all code in file parsing routines to use psf_new_binheader_readf(). Chris@40: Removed psf_binheader_readf() from src/common.c. Chris@40: Globally replaced psf_new_binheader_readf with psf_binheader_readf. Chris@40: Chris@40: * src/common.[ch] Chris@40: Added new function psf_new_binheader_writef () which will soon replace Chris@40: psf_binheader_writef (). The new function has basically the same function Chris@40: as the original but has a more flexible and capable interface. It also Chris@40: allows the writing of 64 bit integer values for files contains 64 bit file Chris@40: offsets. Chris@40: Chris@40: 2002-01-11 Erik de Castro Lopo Chris@40: Chris@40: * src/formats.c src/sndfile.c src/sndfile.h Chris@40: Added code allowing full enumeration of supported file formats via the Chris@40: sf_command () interface. Chris@40: This feature will allow applications to avoid needing recompilation when Chris@40: support for new file formats are added to libsndfile. Chris@40: Chris@40: * tests/command_test.c Chris@40: Added test code for the above feature. Chris@40: Chris@40: * examples/list_formats.c Chris@40: New file. An example of the use of the supported file enumeration Chris@40: interface. This program lists all the major formats and for each major Chris@40: format the supported subformats. Chris@40: Chris@40: 2002-01-10 Erik de Castro Lopo Chris@40: Chris@40: * src/*.[ch] tests/*.c Chris@40: Changed command parameter of sf_command () function from a test string to Chris@40: an int. The valid values for the command parameter begin with SFC_ and are Chris@40: listed in src/sndfile.h. Chris@40: Chris@40: 2001-12-20 Erik de Castro Lopo Chris@40: Chris@40: * src/formats.c src/sndfile.c Chris@40: Added an way of enumerating a set of common file formats using the Chris@40: sf_command () interface. This interface was suggested by Dominic Mazzoni, Chris@40: one of the main authors of Audacity (http://audacity.sourceforge.net/). Chris@40: Chris@40: 2001-12-26 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Added checking of filename parameter in sf_open_read (). Previousy, if a Chris@40: NULL pointer was passed the library would segfault. Chris@40: Chris@40: 2001-12-18 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c src/common.h Chris@40: Changed the len parameter of the endswap_*_array () functions from type Chris@40: int to type long. Chris@40: Chris@40: * src/pcm.c Chris@40: Fixed a problem which Chris@40: Chris@40: 2001-12-15 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Added conditional #include for EMX/gcc on OS/2. Thanks to Chris@40: Paul Hartman for pointing this out. Chris@40: Chris@40: * tests/lossy_comp_test.c tests/floating_point_test.c Chris@40: Added definitions for M_PI for when it isn't defined in . Chris@40: Chris@40: 2001-11-30 Erik de Castro Lopo Chris@40: Chris@40: * src/ircam.c Chris@40: Re-implemented the header reader. Old version was making incorrect Chris@40: assumptions about the endian-ness of the file from the magic number at the Chris@40: start of the file. The new code looks at the integer which holds the Chris@40: number of channels and determines the endian-ness from that. Chris@40: Chris@40: 2001-11-30 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Added support for other AIFC types ('raw ', 'in32', '23ni'). Chris@40: Further work on IMA ADPCM encoding. Chris@40: Chris@40: 2001-11-29 Erik de Castro Lopo Chris@40: Chris@40: * src/ima_adpcm.c Chris@40: Renamed from wav_ima_adpcm.c. This file will soon handle IMA ADPCM Chris@40: encodings for both WAV and AIFF files. Chris@40: Chris@40: * src/aiff.c Chris@40: Started adding IMA ADPCM support. Chris@40: Chris@40: 2001-11-28 Erik de Castro Lopo Chris@40: Chris@40: * src/double.c Chris@40: New file for handling double precision floating point (SF_FORMAT_DOUBLE) Chris@40: data. Chris@40: Chris@40: * src/wav.c src/aiff.c src/au.c src/raw.c Chris@40: Added support for SF_FORMAT_DOUBLE data. Chris@40: Chris@40: * src/common.[ch] Chris@40: Addition of endswap_long_array () for endian swapping 64 bit integers. This Chris@40: function will work correctly on processors with 32 bit and 64 bit longs. Chris@40: Optimised endswap_short_array () and endswap_int_array (). Chris@40: Chris@40: * tests/pcm_test.c Chris@40: Added and extra check. After the first file of each type is written to disk Chris@40: a checksum is performed of the first 64 bytes and checked against a pre- Chris@40: calculated value. This will work whatever the endian-ness of the host Chris@40: machine. Chris@40: Chris@40: 2001-11-27 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Added handling of u-law, A-law encoded AIFF files. Thanks to Tom Erbe for Chris@40: supplying example files. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Added tests for above. Chris@40: Chris@40: * src/common.h src/*.c Chris@40: Removed function typedefs from common.h and function pointer casting in all Chris@40: the other files. This allows the compiler to perform proper type checking. Chris@40: Hopefully this will prevernt problems like the sf_seek bug for OpenBSD, Chris@40: BeOS etc. Chris@40: Chris@40: * src/common.[ch] Chris@40: Added new function psf_new_binheader_readf () which will eventually replace Chris@40: psf_binheader_readf (). The new function has basically the same function as Chris@40: the original but has a more flexible and capable interface. It also allows Chris@40: the reading of 64 bit integer values for files contains 64 bit file Chris@40: offsets. Chris@40: Chris@40: 2001-11-26 Erik de Castro Lopo Chris@40: Chris@40: * src/voc.c Chris@40: Completed implementation of VOC file handling. Can now handle 8 and 16 bit Chris@40: PCM, u-law and A-law files with one or two channels. Chris@40: Chris@40: * src/write_read_test.c tests/lossy_comp_test.c Chris@40: Added tests for VOC files. Chris@40: Chris@40: 2001-11-22 Erik de Castro Lopo Chris@40: Chris@40: * src/float_cast.h Chris@40: Added inline asm version of lrint/lrintf for MacOS. Solution provided by Chris@40: Stephane Letz. Chris@40: Chris@40: * src/voc.c Chris@40: More work on this braindamaged format. The VOC files produced by SoX also Chris@40: have a number of inconsistencies. Chris@40: Chris@40: 2001-11-19 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c Chris@40: Added support for 8 bit PCM PAF files. Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests for 8 bit PAF files. Chris@40: Chris@40: 2001-11-18 Erik de Castro Lopo Chris@40: Chris@40: * tests/pcm_test.c Chris@40: New test program to test for correct scaling of integer values between Chris@40: different sized integer containers (ie short -> int). Chris@40: The new specs for libsndfile state that when the source and destination Chris@40: containers are of a different size, the most significant bit of the source Chris@40: value becomes the most significant bit of the destination container. Chris@40: Chris@40: * src/pcm.c src/paf.c Chris@40: Modified to pass the above test program. Chris@40: Chris@40: * tests/write_read_test.c tests/lossy_comp_test.c Chris@40: Modified to work with the new scaling rules. Chris@40: Chris@40: 2001-11-17 Erik de Castro Lopo Chris@40: Chris@40: * src/raw.c tests/write_read_test.c tests/write_read_test.c Chris@40: Added ability to do raw reads/writes of float, u-law and A-law files. Chris@40: Chris@40: * src/*.[ch] examples/*.[ch] tests/*.[ch] Chris@40: Removed dependance on pcmbitwidth field of SF_INFO struct and moved to new Chris@40: SF_FORMAT_* types and use of SF_ENDIAN_BIG/LITTLE/CPU. Chris@40: Chris@40: 2001-11-12 Erik de Castro Lopo Chris@40: Chris@40: * src/*.[ch] Chris@40: Started implmentation of major changes documented in doc/version1.html. Chris@40: Chris@40: Removed all usage of off_t which is not part of the ISO C standard. All Chris@40: places which were using it are now using type long which is the type of Chris@40: the offset parameter for the fseek function. Chris@40: This should fix problems on BeOS, MacOS and *BSD like systems which were Chris@40: failing "make check" because sizeof (long) != sizeof (off_t). Chris@40: Chris@40: -------------------------------------------------------------------------------- Chris@40: This is the boundary between version 1 of the library above and version 0 below. Chris@40: -------------------------------------------------------------------------------- Chris@40: Chris@40: 2001-11-11 Erik de Castro Lopo Chris@40: Chris@40: * examples/sfplay_beos.cpp Chris@40: Added BeOS version of sfplay.c. This needs to be compiled using a C++ Chris@40: compiler so is therefore not built by default. Thanks to Marcus Overhagen Chris@40: for providing this. Chris@40: Chris@40: 2001-11-10 Erik de Castro Lopo Chris@40: Chris@40: * examples/sfplay.c Chris@40: New example file showing how libsndfile can be used to read and play a Chris@40: sound file. Chris@40: At the moment on Linux is supported. Others will follow in the near future. Chris@40: Chris@40: 2001-11-09 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c Chris@40: Fixed problem with normalisation code where a value of 1.0 could map to Chris@40: a value greater than MAX_SHORT or MAX_INT. Thanks to Roger Dannenberg for Chris@40: pointing this out. Chris@40: Chris@40: 2001-11-08 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c Chris@40: Fixed scaling issue when reading/writing 8 bit files using Chris@40: sf_read/sf_write_short (). Chris@40: On read, values are scaled so that the most significant bit in the char Chris@40: ends up in the most significant bit of the short. On write, values are Chris@40: scaled so that most significant bit in the short ends up as the most Chris@40: significant bit in the char. Chris@40: Chris@40: 2001-11-07 Erik de Castro Lopo Chris@40: Chris@40: * src/au.c src/sndfile.c Chris@40: Added support for 32 bit float data in big and little endian AU files. Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests for 32 bit float data in AU files. Chris@40: Chris@40: 2001-11-06 Erik de Castro Lopo Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Finalised testing of stereo files where possible. Chris@40: Chris@40: 2001-11-05 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_ms_adpcm.c Chris@40: Fixed bug in writing stereo MS ADPCM WAV files. Thanks to Xu Xin for Chris@40: pointing out this problem. Chris@40: Chris@40: 2001-10-24 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_ms_adpcm.c Chris@40: Modified function srate2blocksize () to handle 44k1Hz stereo files. Chris@40: Chris@40: 2001-10-21 Erik de Castro Lopo Chris@40: Chris@40: * src/w64.c Chris@40: Added support for Sonic Foundry 64 bit WAV format. As Linux (my main Chris@40: development platform) does not yet support 64 bit file offsets by default, Chris@40: current handling of this file format treats everything as 32 bit and fails Chris@40: openning the file, if it finds anything that goes beyond 32 bit values. Chris@40: Chris@40: * src/sndfile.[hc] src/common.h src/Makefile.am Chris@40: Added hooks for W64 support. Chris@40: Chris@40: 2001-10-21 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Added more warnings options to CFLAGS when the gcc compiler is detected. Chris@40: Chris@40: * src/*.[ch] tests/*.c examples/*.c Chris@40: Started fixing the warning messages due to the new CFLASG. Chris@40: Chris@40: * src/voc.c Chris@40: More work on VOC file read/writing. Chris@40: Chris@40: * src/paf.c Chris@40: Found that PAF files were not checking the normalisation flag when reading Chris@40: or writing floats and doubles. Fixed it. Chris@40: Chris@40: * tests/floating_point_test.c Chris@40: Added specific test for the above problem. Chris@40: Chris@40: * src/float_cast.h src/pcm.c Chris@40: Added a section for Win32 to define lrint () and lrintf () in the header Chris@40: and implement it in the pcm.c Chris@40: Chris@40: 2001-10-20 Erik de Castro Lopo Chris@40: Chris@40: * sndfile-config.in m4/sndfile.m4 Chris@40: These files were donated by Conrad Parker who also provided instructions Chris@40: on how to install them using autoconf/automake. Chris@40: Chris@40: * src/float_cast.h Chris@40: Fiddled around with this file some more. On Linux and other gcc supported Chris@40: OSes use the C99 functions lrintf() and lrint() for casting from floating Chris@40: point to int without incurring the huge perfromance penalty (particularly Chris@40: on the i386 family) caused by the regular C cast from float to int. Chris@40: These new C99 functions replace the FLOAT_TO_* and DOUBLE_TO_* macros which Chris@40: I had been playing with. Chris@40: Chris@40: * configure.in m4/lrint.m4 m4/lrintf.m4 Chris@40: Add detection of these functions. Chris@40: Chris@40: 2001-10-17 Erik de Castro Lopo Chris@40: Chris@40: * src/voc.c Chris@40: Completed code for reading VOC files containing a single audio data Chris@40: segment. Chris@40: Started implementing code to handle files with multiple VOC_SOUND_DATA Chris@40: segments but couldn't be bothered finishing it. Multiple segment files can Chris@40: have different sample rates for different sections and other nasties like Chris@40: silence and repeat segments. Chris@40: Chris@40: 2001-10-16 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/*.c Chris@40: Removed SF_PRIVATE struct field fdata and replaced it with extra_data. Chris@40: Chris@40: * src/voc.c Chris@40: Further development of the read part of this woefult file format. Chris@40: Chris@40: 2001-10-04 Erik de Castro Lopo Chris@40: Chris@40: * src/float_cast.h Chris@40: Implemented gcc and i386 floating point to int cast macros. Standard cast Chris@40: will be used when not on gcc for i385. Chris@40: Chris@40: * src/pcm.c Chris@40: Modified all uses of FLOAT/DOUBLE_TO_INT and FLOAT/DOUBLE_TO_SHORT casts to Chris@40: comply with macros in float_cast.h. Chris@40: Chris@40: 2001-10-04 Erik de Castro Lopo Chris@40: Chris@40: * src/voc.c Chris@40: Changed the TYPE_xxx enum names to VOC_TYPE_xxx to prevent name clashes Chris@40: on MacOS with CodeWarrior 6.0. Chris@40: Chris@40: * MacOS/MacOS-readme.txt Chris@40: Updated the compile instructions. Probably still need work as I don't have Chris@40: access to a Mac. Chris@40: Chris@40: 2001-10-01 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/aiff.c common.c Chris@40: Changed all references to snprintf to LSF_SNPRINTF and all vsnprintf to Chris@40: LSF_VSNPRINTF. LSF_VSNPRINTF and LSF_VSNPRINTF are defined in common.h. Chris@40: Chris@40: * src/common.h Chris@40: Added checking of HAVE_SNPRINTF and HAVE_VSNPRINTF and defining Chris@40: LSF_VSNPRINTF and LSF_VSNPRINTF to appropriate values. Chris@40: Chris@40: * src/missing.c Chris@40: New file containing a minimal implementation of snprintf and vsnprintf Chris@40: functions named missing_snprintf and missing_vsnprintf respectively. These Chris@40: are only compliled into the binary if snprintf and/or vsnprintf are not Chris@40: available. Chris@40: Chris@40: 2001-09-29 Erik de Castro Lopo Chris@40: Chris@40: * src/ircam.c Chris@40: New file to handle Berkeley/IRCAM/CARL files. Chris@40: Chris@40: * src/sndfile.c src/common.h Chris@40: Modified for IRCAM handling. Chris@40: Chris@40: * tests/*.c Chris@40: Added tests for IRCAM files. Chris@40: Chris@40: 2001-09-27 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Apparently microsoft windows (tm) doesn't like ulaw and Alaw WAV files with Chris@40: 20 byte format chunks (contrary to ms's own documentation). Fixed the WAV Chris@40: header writing code to generate smaller ms compliant ulaw and Alaw WAV Chris@40: files. Chris@40: Chris@40: 2001-09-17 Erik de Castro Lopo Chris@40: Chris@40: * tests/stdio_test.sh tests/stdio_test.c Chris@40: Shell script was rewritten as a C program due to incompatibilities of the Chris@40: sh shell on Linux and Solaris. Chris@40: Chris@40: 2001-09-16 Erik de Castro Lopo Chris@40: Chris@40: * tests/stdio_test.sh tests/stdout_test.c tests/stdin_test.c Chris@40: New test programs to verify the correct operation of reading from stdin and Chris@40: writing to stdout. Chris@40: Chris@40: * src/sndfile.c wav.c au.c nist.c paf.c Chris@40: Fixed a bugs uncovered by the new test programs above. Chris@40: Chris@40: 2001-09-15 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c wav.c Chris@40: Fixed a bug preventing reading a file from stdin. Found by T. Narita. Chris@40: Chris@40: 2001-09-12 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Fixed a problem on OpenBSD 2.9 which was causing sf_seek() to fail on IMA Chris@40: WAV files. Root cause was the declaration of the func_seek typedef not Chris@40: matching the functions it was actually being used to point to. In OpenBSD Chris@40: sizeof (off_t) != sizeof (int). Thanks to Heikki Korpela for allowing me Chris@40: to log into his OpenBSD machine to debug this problem. Chris@40: Chris@40: 2001-09-03 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Implemented sf_command ("norm float"). Chris@40: Chris@40: * src/*.c Chris@40: Implemented handling of sf_command ("set-norm-float"). Float normalization Chris@40: can now be turned on and off. Chris@40: Chris@40: * tests/double_test.c Chris@40: Renamed to floating_point_test.c. Modified to include tests for all scaled Chris@40: reads and writes of floats and doubles. Chris@40: Chris@40: * src/au_g72x.c Chris@40: Fixed bug in normalization code found with improved floating_point_test Chris@40: program. Chris@40: Chris@40: * src/wav.c Chris@40: Added code for parsing 'INFO' and 'LIST' chunks. Will be used for extract Chris@40: text annotations from WAV files. Chris@40: Chris@40: * src/aiff.c Chris@40: Added code for parsing '(c) ' and 'ANNO' chunks. Will be used for extract Chris@40: text annotations from WAV files. Chris@40: Chris@40: 2001-09-02 Erik de Castro Lopo Chris@40: Chris@40: * examples/sf_info.c example/Makefile.am Chris@40: Renamed to sndfile_info.c. The program sndfile_info will now be installed Chris@40: when the library is installed. Chris@40: Chris@40: * src/float_cast.h Chris@40: New file defining floating point to short and int casts. These casts will Chris@40: eventually replace all flot and double casts to short and int. See comments Chris@40: at the top of the file for the reasoning. Chris@40: Chris@40: * src/*.c Chris@40: Changed all default float and double casts to short or int with macros Chris@40: defined in floatcast.h. At the moment these casts do nothing. They will be Chris@40: replaced with faster float to int cast operations in the near future. Chris@40: Chris@40: 2001-08-31 Erik de Castro Lopo Chris@40: Chris@40: * tests/command_test.c Chris@40: New file for testing sf_command () functionality. Chris@40: Chris@40: * src/sndfile.c Chris@40: Revisiting of error return values of some functions. Chris@40: Started implementing sf_command () a new function will allow on-the-fly Chris@40: modification of library behaviour, or instance, sample value scaling. Chris@40: Chris@40: * src/common.h Chris@40: Added hook for format specific sf_command () calls to SNDFILE struct. Chris@40: Chris@40: * doc/api.html Chris@40: Updated and errors corrected. Chris@40: Chris@40: * doc/command.html Chris@40: New documentation file explaining new sf_command () function. Chris@40: Chris@40: 2001-08-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed error return values from sf_read*() and sf_write*(). There were Chris@40: numerous instances of -1 being returned through size_t. These now all set Chris@40: error int the SF_PRIVATE struct and return 0. Thanks to David Viens for Chris@40: spotting this. Chris@40: Chris@40: 2001-08-01 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Fixed use of va_arg() calls that were causing warning messages with the Chris@40: latest version of gcc (thanks Maurizio Umberto Puxeddu). Chris@40: Chris@40: 2001-07-25 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c src/sfendian.h Chris@40: Moved definition of MAKE_MARKER macro to sfendian.h Chris@40: Chris@40: 2001-07-23 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Modified sf_get_lib_version () so that version string will be visible using Chris@40: the Unix strings command. Chris@40: Chris@40: * examples/Makefile.am examples/sfinfo.c Chris@40: Renamed sfinfo program and source code to sf_info. This prevents a name Chris@40: clash with the program included with libaudiofile. Chris@40: Chris@40: 2001-07-22 Erik de Castro Lopo Chris@40: Chris@40: * tests/read_seek_test.c tests/lossy_comp_test.c Chris@40: Added tests for sf_read_float () and sf_readf_float (). Chris@40: Chris@40: * src/voc.c Chris@40: New files for handling Creative Voice files (not complete). Chris@40: Chris@40: * src/samplitude.c Chris@40: New files for handling Samplitude files (not complete). Chris@40: Chris@40: 2001-07-21 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/au.c src/paf.c src/svx.c src/wav.c Chris@40: Converted these files to using psf_binheader_readf() function. Will soon be Chris@40: ready to attempt to make reading writing from pipes work reliably. Chris@40: Chris@40: * src/*.[ch] Chris@40: Added code for sf_read_float () and sf_readf_float () methods of accessing Chris@40: file data. Chris@40: Chris@40: 2001-07-20 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c src/wav_gsm610.c Chris@40: Removed two printf()s which had escaped notice for some time (thanks Chris@40: Sigbjørn Skjæret). Chris@40: Chris@40: 2001-07-19 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_gsm610.c Chris@40: Fixed a bug which prevented GSM 6.10 encoded WAV files generated by Chris@40: libsndfile from being played in Windoze (thanks klay). Chris@40: Chris@40: 2001-07-18 Erik de Castro Lopo Chris@40: Chris@40: * src/common.[ch] Chris@40: Implemented psf_binheader_readf() which will do for file header reading what Chris@40: psf_binheader_writef() did for writing headers. Will eventually allow Chris@40: libsndfile to read and write from pipes, including named pipes. Chris@40: Chris@40: 2001-07-16 Erik de Castro Lopo Chris@40: Chris@40: * MacOS/config.h Win32/config.h Chris@40: Attempted to bring these two files uptodate with src/config.h. As I don't Chris@40: have access to either of these systems support for them may be completely Chris@40: broken. Chris@40: Chris@40: 2001-06-18 Erik de Castro Lopo Chris@40: Chris@40: * src/float32.c Chris@40: Fixed bug for big endian processors that can't read 32 bit IEEE floats. Now Chris@40: tested on Intel x86 and UltraSparc processors. Chris@40: Chris@40: 2001-06-13 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Modified to allow REX files (from Propellorhead's Recycle and Reason Chris@40: programs) to be read. Chris@40: REX files are basically an AIFF file with slightly unusual sequence of Chris@40: chunks (AIFF files are supposed to allow any sequence) and some extra Chris@40: application specific information. Chris@40: Not yet able to write a REX file as the details of the application specific Chris@40: data is unknown. Chris@40: Chris@40: 2001-06-12 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fixed endian bug when reading PEAK chunk on big endian machines. Chris@40: Chris@40: * src/common.c Chris@40: Fixed endian bug when reading PEAK chunk on big endian machines with Chris@40: --enable-force-broken-float configure option. Chris@40: Fix psf_binheader_writef for (FORCE_BROKEN_FLOAT ||______) Chris@40: Chris@40: 2001-06-07 Erik de Castro Lopo Chris@40: Chris@40: * configure.in src/config.h.in Chris@40: Removed old CAN_READ_WRITE_x86_IEEE configure variable now that float Chris@40: capabilities are detected at run time. Chris@40: Added FORCE_BROKEN_FLOAT to allow testing of broken float code on machines Chris@40: where the processor can in fact handle floats correctly. Chris@40: Chris@40: * src/float32.c Chris@40: Rejigged code reading and writing of floats on broken processors. Chris@40: Chris@40: * m4/ Chris@40: Removed this directory and all its files as they are no longer needed. Chris@40: Chris@40: 2001-06-05 Erik de Castro Lopo Chris@40: Chris@40: * tests/peak_chunk_test.c Chris@40: New test to validate reading and writing of peak chunk. Chris@40: Chris@40: * examples/sfconvert Chris@40: Added -float32 option. Chris@40: Chris@40: * src/*.c Chris@40: Changed all error return values to negative values (ie the negative of what Chris@40: they were). Chris@40: Chris@40: * src/sndfile.c tests/error_test.c Chris@40: Modified to take account of the previous change. Chris@40: Chris@40: 2001-06-04 Erik de Castro Lopo Chris@40: Chris@40: * src/float32.c Chris@40: File renamed from wav_float.c and renamed function to something more Chris@40: general. Chris@40: Added runtime detection of floating point capabilities. Chris@40: Added recording of peaks during write for generation of PEAK chunk. Chris@40: Chris@40: * src/wav.c src/aiff.c Chris@40: Added handing for PEAK chunk for floating point files. PEAK is read when the Chris@40: file headers are read and generated when the file is closed. Logic is in Chris@40: place for adding PEAK chunk to end of file when writing to a pipe (reading Chris@40: and writing from/to pipe to be implemented soon). Chris@40: Chris@40: * src/sndfile.c Chris@40: Modified sf_signal_max () to use PEAK values if present. Chris@40: Chris@40: 2001-06-03 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Added pcm_read_init () and pcm_write_init () to src/pcm.c and removed all Chris@40: other calls to functions in this file from the filetype specific files. Chris@40: Chris@40: * src/*.c Chris@40: Added alaw_read_init (), alaw_write_int (), ulaw_read_init () and Chris@40: ulaw_write_init () and removed all other calls to functions in alaw.c and Chris@40: ulaw.c from the filetype specific files. Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests to validate sf_seek () on all file types. Chris@40: Chris@40: * src/raw.c Chris@40: Implemented raw_seek () function to fix a bug where Chris@40: sf_seek (file, 0, SEEK_SET) on a RAW file failed. Chris@40: Chris@40: * src/paf.c Chris@40: Fixed a bug in paf24_seek () found due to added seeks tests in Chris@40: tests/write_read_test.c Chris@40: Chris@40: 2001-06-01 Erik de Castro Lopo Chris@40: Chris@40: * tests/read_seek_test.c Chris@40: Fixed a couple of broken binary files. Chris@40: Chris@40: * src/aiff.c src/wav.c Chris@40: Added handling of PEAK chunks on file read. Chris@40: Chris@40: 2001-05-31 Erik de Castro Lopo Chris@40: Chris@40: * check_libsndfile.py Chris@40: New file for the regression testing of libsndfile. Chris@40: check_libsndfile.py is a Python script which reads in a file containing Chris@40: filenames of audio files. Each file is checked by running the examples/sfinfo Chris@40: program on them and checking for error or warning messages in the libsndfile Chris@40: log buffer. Chris@40: Chris@40: * check_libsndfile.list Chris@40: This is an example list of audio files for use with check_libsndfile.py Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Changed the defined value of M_PI for math header files which don't have it. Chris@40: This fixed validation test failures on MetroWerks compilers. Thanks to Lord Chris@40: Praetor Satanus of Acheron for bringing this to my attention. Chris@40: Chris@40: 2001-05-30 Erik de Castro Lopo Chris@40: Chris@40: * src/common.[ch] Chris@40: Removed psf_header_setf () which was no longer required after refactoring Chris@40: and simplification of header writing. Chris@40: Added 'z' format specifier to psf_binheader_writef () for zero filling header Chris@40: with N bytes. Used by paf.c and nist.c Chris@40: Chris@40: * tests/check_log_buffer.c Chris@40: New file implementing check_log_buffer () which reads the log buffer of a Chris@40: SNDFILE* object and searches for error and warning messages. Calls exit () Chris@40: if any are found. Chris@40: Chris@40: * tests/*.c Chris@40: Added calls to check_log_buffer () after each call to sf_open_XXX (). Chris@40: Chris@40: 2001-05-29 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/wav_ms_adpcm.c src/wav_gsm610.c Chris@40: Major rehack of header writing using psf_binheader_writef (). Chris@40: Chris@40: 2001-05-28 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/wav_ima_adpcm.c Chris@40: Major rehack of header writing using psf_binheader_writef (). Chris@40: Chris@40: 2001-05-27 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Changed return type of get_encoding_str () to prevent compiler warnings on Chris@40: Mac OSX. Chris@40: Chris@40: * src/aiff.c src/au.c Chris@40: Major rehack of header writing using psf_binheader_writef (). Chris@40: Chris@40: 2001-05-25 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h src/common.c Chris@40: Added comments. Chris@40: Name of log buffer changed from strbuffer to logbuffer. Chris@40: Name of log buffer index variable changed from strindex to logindex. Chris@40: Chris@40: * src/*.[ch] Chris@40: Changed name of internal logging function from psf_sprintf () to Chris@40: psf_log_printf (). Chris@40: Changed name of internal header generation functions from Chris@40: psf_[ab]h_printf () to psf_asciiheader_printf () and Chris@40: psf_binheader_writef (). Chris@40: Changed name of internal header manipulation function psf_hsetf () to Chris@40: psf_header_setf (). Chris@40: Chris@40: 2001-05-24 Erik de Castro Lopo Chris@40: Chris@40: * src/nist.c Chris@40: Fixed reading and writing of sample_byte_format header. "01" means little Chris@40: endian and "10" means big endian regardless of bit width. Chris@40: Chris@40: * configure.in Chris@40: Detect Mac OSX and disable -Wall and -pedantic gcc options. Mac OSX is Chris@40: way screwed up and spews out buckets of warning messages from the system Chris@40: headers. Chris@40: Added --disable-gcc-opt configure option (sets gcc optimisation to -O0 ) for Chris@40: easier debugging. Chris@40: Made decision to harmonise source code version number and .so library Chris@40: version number. Future releases will stick to this rule. Chris@40: Chris@40: * doc/new_file_type.HOWTO Chris@40: New file to document the addition of new file types to libsndfile. Chris@40: Chris@40: 2001-05-23 Erik de Castro Lopo Chris@40: Chris@40: * src/nist.c Chris@40: New file for reading/writing Sphere NIST audio file format. Chris@40: Originally requested by Elis Pomales in 1999. Chris@40: Retrieved from unstable (and untouched for 18 months) branch of libsndfile. Chris@40: Some vital information gleaned from the source code to Bill Schottstaedt's Chris@40: sndlib library : ftp://ccrma-ftp.stanford.edu/pub/Lisp/sndlib.tar.gz Chris@40: Currently reading and writing 16, 24 and 32 bit, big-endian and little Chris@40: endian, stereo and mono files. Chris@40: Chris@40: * src/common.h src/common.c Chris@40: Added psf_ah_printf () function to help construction of ASCII headers (ie NIST). Chris@40: Chris@40: * configure.in Chris@40: Added test for vsnprintf () required by psf_ah_printf (). Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests for supported NIST files. Chris@40: Chris@40: 2001-05-22 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests for little endian AIFC files. Chris@40: Chris@40: * src/aiff.c Chris@40: Minor re-working of aiff_open_write (). Chris@40: Added write support for little endian PCM encoded AIFC files. Chris@40: Chris@40: 2001-05-13 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Minor re-working of aiff_open_read (). Chris@40: Added read support for little endian PCM encoded AIFC files from the Mac Chris@40: OSX CD ripper program. Guillaume Lessard provided a couple of sample files Chris@40: and a working patch. Chris@40: The patch was not used as is but gave a good guide as to what to do. Chris@40: Chris@40: 2001-05-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h Chris@40: Fixed comments about endian-ness of WAV and AIFF files. Guillaume Lessard Chris@40: pointed out the error. Chris@40: Chris@40: 2001-04-23 Erik de Castro Lopo Chris@40: Chris@40: * examples/make_sine.c Chris@40: Re-write of this example using sample rate and required frequency in Hz. Chris@40: Chris@40: 2001-02-11 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed bug that prevented known file types from being read as RAW PCM data. Chris@40: Chris@40: 2000-12-16 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Added handing of COMT chunk. Chris@40: Chris@40: 2000-11-16 Erik de Castro Lopo Chris@40: Chris@40: * examples/sfconvert.c Chris@40: Fixed bug in normalisatio code. Pointed out by Johnny Wu. Chris@40: Chris@40: 2000-11-08 Erik de Castro Lopo Chris@40: Chris@40: * Win32/config.h Chris@40: Fixed the incorrect setting of HAVE_ENDIAN_H parameter. Win32 only issue. Chris@40: Chris@40: 2000-10-27 Erik de Castro Lopo Chris@40: Chris@40: * tests/Makefile.am Chris@40: Added -lm for write_read_test_LDADD. Chris@40: Chris@40: 2000-10-16 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/au.c Chris@40: Fixed bug which prevented writing of G723 24kbps AU files. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Corrrection to options for G723 tests. Chris@40: Chris@40: * configure.in Chris@40: Added --disable-gcc-pipe option for DJGPP compiler (gcc on MS-DOS) which Chris@40: doesn't allow gcc -pipe option. Chris@40: Chris@40: 2000-09-03 Erik de Castro Lopo Chris@40: Chris@40: * src/ulaw.c src/alaw.c src/wav_imaadpcm.c src/msadpcm.c src/wav_gsm610.c Chris@40: Fixed normailsation bugs shown up by new double_test program. Chris@40: Chris@40: 2000-08-31 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c Chris@40: Fixed bug in normalisation code (spotted by Steve Lhomme). Chris@40: Chris@40: * tests/double_test.c Chris@40: New file to test scaled and unscaled sf_read_double() and sf_write_double() Chris@40: functions. Chris@40: Chris@40: 2000-08-28 Erik de Castro Lopo Chris@40: Chris@40: * COPYING Chris@40: Changed to the LGPL COPYING file (spotted by H. S. Teoh). Chris@40: Chris@40: 2000-08-21 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h Chris@40: Removed prototype of unimplemented function sf_get_info(). Added prototype Chris@40: for sf_error_number() Thanks to Sigbjørn Skjæret for spotting these. Chris@40: Chris@40: 2000-08-18 Erik de Castro Lopo Chris@40: Chris@40: * src/newpcm.h Chris@40: New file to contain a complete rewrite of the PCM data handling. Chris@40: Chris@40: 2000-08-15 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a leak of FILE* pointers in sf_open_write(). Thanks to Sigbjørn Chris@40: Skjæret for spotting this one. Chris@40: Chris@40: 2000-08-13 Erik de Castro Lopo Chris@40: Chris@40: * src/au_g72x.c src/G72x/g72x.c Chris@40: Added G723 encoded AU file support. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Added tests for G721 and G723 encoded AU files. Chris@40: Chris@40: 2000-08-06 Erik de Castro Lopo Chris@40: Chris@40: * all files Chris@40: Changed the license to LGPL. Albert Faber who had copyright on Chris@40: Win32/unistd.h gave his permission to change the license on that file. All Chris@40: other files were either copyright erikd AT mega-nerd DOT com or copyright Chris@40: under a GPL/LGPL compatible license. Chris@40: Chris@40: 2000-08-06 Erik de Castro Lopo Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Fixed incorrect error message. Chris@40: Chris@40: * src/au_g72x.c src/G72x/* Chris@40: G721 encoded AU files now working. Chris@40: Chris@40: * Win32/README-Win32.txt Chris@40: Replaced this file with a new one which gives a full explanation Chris@40: of how to build libsndfile under Win32. Thanks to Mike Ricos. Chris@40: Chris@40: 2000-08-05 Erik de Castro Lopo Chris@40: Chris@40: * src/*.[ch] Chris@40: Removed double leading underscores from the start of all variable and Chris@40: function names. Identifiers with a leading underscores are reserved Chris@40: for use by the compiler. Chris@40: Chris@40: * src/au_g72x.c src/G72x/* Chris@40: Continued work on G721 encoded AU files. Chris@40: Chris@40: 2000-07-12 Erik de Castro Lopo Chris@40: Chris@40: * src/G72x/* Chris@40: New files for reading/writing G721 and G723 ADPCM audio. These files Chris@40: are from a Sun Microsystems reference implementation released under a Chris@40: free software licence. Chris@40: Extensive changes to this code to make it fit in with libsndfile. Chris@40: See the ChangeLog in this directory for details. Chris@40: Chris@40: * src/au_g72x.c Chris@40: New file for G721 encoded AU files. Chris@40: Chris@40: 2000-07-08 Erik de Castro Lopo Chris@40: Chris@40: * libsndfile.spec.in Chris@40: Added a spec file for making RPMs. Thanks to Josh Green for supplying this. Chris@40: Chris@40: 2000-06-28 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/sndfile.h Chris@40: Add checking for and handling of header-less u-law encoded AU/SND files. Chris@40: Any file with a ".au" or ".snd" file extension and without the normal Chris@40: AU file header is treated as an 8kHz, u-law encoded file. Chris@40: Chris@40: * src/au.h Chris@40: New function for opening a headerless u-law encoded file for read. Chris@40: Chris@40: 2000-06-04 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c Chris@40: Add checking for files shorter than minimal PAF file header length. Chris@40: Chris@40: 2000-06-02 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added extra sf_perror() calls when sf_write_XXXX fails. Chris@40: Chris@40: 2000-05-29 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Modified usage of va_arg() macro to work correctly on PowerPC Chris@40: Linux. Thanks to Kyle Wheeler for giving me ssh access to his Chris@40: machine while I was trying to track this down. Chris@40: Chris@40: * configure.in src/*.[ch] Chris@40: Sorted out some endian-ness issues brought up by PowerPC Linux. Chris@40: Chris@40: * tests/read_seek_test.c Chris@40: Added extra debugging for when tests fail. Chris@40: Chris@40: 2000-05-18 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Fixed bug in GSM 6.10 handling for big-endian machines. Thanks Chris@40: to Sigbjørn Skjæret for reporting this. Chris@40: Chris@40: 2000-04-25 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/wav.c src/wav_gsm610.c Chris@40: Finallised writing of GSM 6.10 WAV files. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Wrote new test code for GSM 6.10 files. Chris@40: Chris@40: * examples/sfinfo.c Chris@40: Fixed incorrect format in printf() statement. Chris@40: Chris@40: 2000-04-06 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h.in Chris@40: Fixed comments about sf_perror () and sf_error_str (). Chris@40: Chris@40: 2000-03-14 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Fixed --enable-justsrc option. Chris@40: Chris@40: 2000-03-07 Erik de Castro Lopo Chris@40: Chris@40: * wav.c Chris@40: Fixed checking of bytespersec field of header. Still some weirdness Chris@40: with some files. Chris@40: Chris@40: 2000-03-05 Erik de Castro Lopo Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Added option to test PCM WAV files (sanity check). Chris@40: Fixed bug in sf_seek() tests. Chris@40: Chris@40: 2000-02-29 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/wav.c Chris@40: Minor changes to allow writing of GSM 6.10 WAV files. Chris@40: Chris@40: 2000-02-28 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Makefile.am src/Makefile.am Chris@40: Finally got around to figuring out how to build a single library from Chris@40: multiple source directories. Chris@40: Reading GSM 6.10 files now seems to work. Chris@40: Chris@40: 2000-01-03 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Added more error reporting in read_fmt_chunk(). Chris@40: Chris@40: 1999-12-21 Erik de Castro Lopo Chris@40: Chris@40: * examples/sfinfo.c Chris@40: Modified program to accept multiple filenames from the command line. Chris@40: Chris@40: 1999-11-27 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_ima_adpcm.c Chris@40: Moved code around in preparation to adding ability to read/write IMA ADPCM Chris@40: encoded AIFF files. Chris@40: Chris@40: 1999-11-16 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Fixed put_int() and put_short() macros used by _psf_hprintf() which were Chris@40: causing seg. faults on Sparc Solaris. Chris@40: Chris@40: 1999-11-15 Erik de Castro Lopo Chris@40: Chris@40: * src/common.c Chris@40: Added string.h to includes. Thanks to Sigbjxrn Skjfret. Chris@40: Chris@40: * src/svx.c Chris@40: Fixed __svx_close() function to ensure FORM and BODY chunks are correctly Chris@40: set. Chris@40: Chris@40: 1999-10-01 Erik de Castro Lopo Chris@40: Chris@40: * src/au.c Chris@40: Fixed handling of incorrect size field in AU header on read. Thanks to Chris@40: Christoph Lauer for finding this problem. Chris@40: Chris@40: 1999-09-28 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed a bug with incorrect SSND chunk length being written. This also lead Chris@40: to finding an minor error in AIFF header parsing. Thanks to Dan Timis for Chris@40: pointing this out. Chris@40: Chris@40: 1999-09-24 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c Chris@40: Fixed a bug with reading and writing 24 bit stereo PAF files. This problem Chris@40: came to light when implementing tests for the new functions which operate Chris@40: in terms of frames rather than items. Chris@40: Chris@40: 1999-09-23 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Modified file type detection to use first 12 bytes of file rather than Chris@40: file name extension. Required this because NIST files use the same Chris@40: filename extension as Microsoft WAV files. Chris@40: Chris@40: * src/sndfile.c src/sndfile.h Chris@40: Added short, int and double read/write functions which work in frames Chris@40: rather than items. This was originally suggested by Maurizio Umberto Chris@40: Puxeddu. Chris@40: Chris@40: 1999-09-22 Erik de Castro Lopo Chris@40: Chris@40: * src/svx.c Chris@40: Finished off implementation of write using __psf_hprintf(). Chris@40: Chris@40: 1999-09-21 Erik de Castro Lopo Chris@40: Chris@40: * src/common.h Chris@40: Added a buffer to SF_PRIVATE for writing the header. This is required Chris@40: to make generating headers for IFF/SVX files easier as well as making Chris@40: it easier to do re-write the headers which will be required when Chris@40: sf_rewrite_header() is implemented. Chris@40: Chris@40: * src/common.c Chris@40: Implemented __psf_hprintf() function. This is an internal function Chris@40: which is documented briefly just above the code. Chris@40: Chris@40: 1999-09-05 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed a bug in sf_write_raw() where it was returning incorrect values Chris@40: (thanks to Richard Dobson for finding this one). Must put in a test Chris@40: routine for sf_read_raw and sf_write_raw. Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed default FORMsize in __aiff_open_write (). Chris@40: Chris@40: * src/sndfile.c Chris@40: Added copy of filename to internal data structure. IFF/SVX files Chris@40: contain a NAME header chunk. Both sf_open_read() and sf_open_write() Chris@40: copy the file name (less the leading path information) to the Chris@40: filename field. Chris@40: Chris@40: * src/svx.c Chris@40: Started implementing writing of files. Chris@40: Chris@40: 1999-08-04 Erik de Castro Lopo Chris@40: Chris@40: * src/svx.c Chris@40: New file for reading/writing 8SVX and 16SVX files. Chris@40: Chris@40: * src/sndfile.[ch] src/common.h Chris@40: Changes for SVX files. Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed header parsing when unknown chunk is found. Chris@40: Chris@40: 1999-08-01 Erik de Castro Lopo Chris@40: Chris@40: * src/paf.c Chris@40: New file for reading/writing Ensoniq PARIS audio file format. Chris@40: Chris@40: * src/sndfile.[ch] src/common.h Chris@40: Changes for PAF files. Chris@40: Chris@40: * src/sndfile.[ch] Chris@40: Added stuff for sf_get_lib_version() function. Chris@40: Chris@40: Chris@40: 1999-07-31 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h MacOS/config.h Chris@40: Fixed minor MacOS configuration issues. Chris@40: Chris@40: 1999-07-30 Erik de Castro Lopo Chris@40: Chris@40: * MacOS/ Chris@40: Added a new directory for the MacOS config.h file and the Chris@40: readme file. Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed calculation of datalength when reading SSND chunk. Thanks to Chris@40: Sigbjørn Skjæret for pointing out this error. Chris@40: Chris@40: 1999-07-29 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/sndfile.h src/raw.c Chris@40: Further fixing of #includes for MacOS. Chris@40: Chris@40: 1999-07-25 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/aiff.c Chris@40: Added call to ferror () in main header parsing loop of __XXX_open_read Chris@40: functions. This should fix problems on platforms (MacOS, AmigaOS) where Chris@40: fseek()ing or fread()ing beyond the end of the file puts the FILE* Chris@40: stream in an error state until clearerr() is called. Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests for RAW header-less PCM files. Chris@40: Chris@40: * src/common.h Chris@40: Moved definition of struct tribyte to pcm.c which is the only place Chris@40: which needs it. Chris@40: Chris@40: * src/pcm.c Chris@40: Modified all code which assumed sizeof (struct tribyte) == 3. This code Chris@40: did not work on MacOS. Thanks to Ben "Jacobs" for pointing this out. Chris@40: Chris@40: * src/au.c Chris@40: Removed from list of #includes (not being used). Chris@40: Chris@40: * src/sndfile.c Chris@40: Added MacOS specific #ifdef to replace . Chris@40: Chris@40: * src/sndfile.h Chris@40: Added MacOS specific #ifdef to replace . Chris@40: Chris@40: * src/sndfile.h Chris@40: Added MacOS specific typedef for off_t. Chris@40: Chris@40: * MacOS-readme.txt Chris@40: New file with instructions for building libsndfile under MacOS. Thanks Chris@40: to Ben "Jacobs" for supplying these instructions. Chris@40: Chris@40: 1999-07-24 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Removed sndfile.h from generated file list as there were no longer Chris@40: any autoconf substitutions being made. Chris@40: Chris@40: * src/raw.c Chris@40: New file for handling raw header-less PCM files. In order to open these Chris@40: for read, the user must specify format, pcmbitwidth and channels in the Chris@40: SF_INFO struct when calling sf_open_read (). Chris@40: Chris@40: * src/sndfile.c Chris@40: Added support for raw header-less PCM files. Chris@40: Chris@40: 1999-07-22 Erik de Castro Lopo Chris@40: Chris@40: * examples/sfinfo.c Chris@40: Removed options so the sfinfo program always prints out all the information. Chris@40: Chris@40: 1999-07-19 Erik de Castro Lopo Chris@40: Chris@40: * src/alaw.c Chris@40: New file for A-law encoding (similar to u-law). Chris@40: Chris@40: * tests/alaw_test.c Chris@40: New test program to test the A-law encode/decode lookup tables. Chris@40: Chris@40: * tests/lossy_comp_test.c Chris@40: Added tests for a-law encoded WAV, AU and AULE files. Chris@40: Chris@40: 1999-07-18 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c src/au.c Chris@40: Removed second "#include ". Thanks to Ben "Jacobs" for pointing Chris@40: this out. Chris@40: Chris@40: 1999-07-18 Erik de Castro Lopo Chris@40: Chris@40: * tests/ulaw_test.c Chris@40: New test program to test the u-law encode/decode lookup tables. Chris@40: Chris@40: 1999-07-16 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.h Chris@40: Made corrections to comments on the return values from sf_seek (). Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed boundary condition checking bug and accounting bug in sf_read_raw (). Chris@40: Chris@40: 1999-07-15 Erik de Castro Lopo Chris@40: Chris@40: * src/au.c src/ulaw.c Chris@40: Finished implementation of u-law encoded AU files. Chris@40: Chris@40: * src/wav.c Chris@40: Implemented reading and writing of u-law encoded WAV files. Chris@40: Chris@40: * tests/ Chris@40: Changed name of adpcm_test.c to lossy_comp_test.c. This test program Chris@40: will now be used to test Ulaw and Alaw encoding as well as APDCM. Chris@40: Added tests for Ulaw encoded WAV files. Chris@40: Chris@40: 1999-07-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/adpcm_test.c Chris@40: Initialised amp variable in gen_signal() to remove compiler warning. Chris@40: Chris@40: 1999-07-12 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: In __aiff_open_read () prevented fseek()ing beyond end of file which Chris@40: was causing trouble on MacOS with the MetroWerks compiler. Thanks to Chris@40: Ben "Jacobs" for pointing this out. Chris@40: Chris@40: *src/wav.c Chris@40: Fixed as above in __wav_open_read (). Chris@40: Chris@40: 1999-07-01 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_ms_adpcm.c Chris@40: Implemented MS ADPCM encoding. Code cleanup of decoder. Chris@40: Chris@40: * tests/adpcm_test.c Chris@40: Added tests for MS ADPCM WAV files. Chris@40: Chris@40: * src/wav_ima_adpcm.c Chris@40: Fixed incorrect parameter in call to srate2blocksize () from Chris@40: __ima_writer_init (). Chris@40: Chris@40: 1999-06-23 Erik de Castro Lopo Chris@40: Chris@40: * tests/read_seek_test.c Chris@40: Added test for 8 bit AIFF files. Chris@40: Chris@40: 1999-06-18 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Removed test for IMA ADPCM WAV files which is now done in adpcm_test.c Chris@40: Chris@40: * configure.in Chris@40: Added -Wconversion to CFLAGS. Chris@40: Chris@40: * src/*.c tests/*.c examples/*.c Chris@40: Fixed all warnings resulting from use of -Wconversion. Chris@40: Chris@40: 1999-06-17 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Added fact chunk handling on read and write for all non WAVE_FORMAT_PCM Chris@40: WAV files. Chris@40: Chris@40: * src/wav_ima.c Chris@40: Changed block alignment to be dependant on sample rate. This should make Chris@40: WAV files created with libsndfile compatible with the MS Windows media Chris@40: players. Chris@40: Chris@40: * tests/adpcm_test.c Chris@40: Reimplemented adpcm_test_short and implemented adpcm_test_int and Chris@40: adpcm_test_double. Chris@40: Now have full testing of IMA ADPCM WAV file read, write and seek. Chris@40: Chris@40: 1999-06-15 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_float.c Chris@40: Fixed function prototype for x86f2d_array () which was causing ocassional Chris@40: seg. faults on Sparc Solaris machines. Chris@40: Chris@40: 1999-06-14 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c Chris@40: Fixed bug in __aiff_close where the length fields in the header were Chris@40: not being correctly calculated before writing. Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Modified to detect the above bug in WAV, AIFF and AU files. Chris@40: Chris@40: 1999-06-12 Erik de Castro Lopo Chris@40: Chris@40: * Win32/* Chris@40: Added a contribution from Albert Faber to allow libsndfile to compile Chris@40: under Win32 systems. libsndfile will now be used as part of LAME the Chris@40: the MPEG 1 Layer 3 encoder (http://internet.roadrunner.com/~mt/mp3/). Chris@40: Chris@40: 1999-06-11 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Chris@40: Changed to reflect previous changes. Chris@40: Chris@40: * src/wav_ima_adpcm.c Chris@40: Fixed incorrect calculation of bytespersec header field (IMA ADPCM only). Chris@40: Chris@40: Fixed bug when writing from int or double data to IMA ADPCM file. Will need Chris@40: to write test code for this. Chris@40: Chris@40: Fixed bug in __ima_write () whereby the length of the current block was Chris@40: calculated incorrectly. Thanks to Jongcheon Park for pointing this out. Chris@40: Chris@40: 1999-03-27 Erik de Castro Lopo Chris@40: Chris@40: * src/*.c Chris@40: Changed all read/write/lseek function calls to fread/fwrite/ Chris@40: fseek/ftell and added error checking of return values from Chris@40: fread and fwrite in critical areas of the code. Chris@40: Chris@40: * src/au.c Chris@40: Fixed incorrect datasize element in AU header on write. Chris@40: Chris@40: * tests/error_test.c Chris@40: Add new test to check all error values have an associated error Chris@40: string. This will avoid embarrassing real world core dumps. Chris@40: Chris@40: 1999-03-23 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c src/aiff.c Chris@40: Added handling for unknown chunk markers in the file. Chris@40: Chris@40: 1999-03-22 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Filled in missing error strings in SndfileErrors array. Missing entries Chris@40: can cause core dumps when calling sf_error-str (). Thanks to Sam Chris@40: for finding this problem. Chris@40: Chris@40: 1999-03-21 Erik de Castro Lopo Chris@40: Chris@40: * src/wav_ima_adpcm.c Chris@40: Work on wav_ms_adpcm.c uncovered a bug in __ima_read () when reading Chris@40: stereo files. Caused by not adjusting offset into buffer of decoded Chris@40: samples for 2 channels. A similar bug existed in __ima_write (). Chris@40: Need a test for stereo ADPCM files. Chris@40: Chris@40: * src/wav_ms_adpcm.c Chris@40: Decoder working correctly. Chris@40: Chris@40: 1999-03-18 Erik de Castro Lopo Chris@40: Chris@40: * configure.in Makefile.am Chris@40: Added --enable-justsrc configuration variable sent by Sam Chris@40: . Chris@40: Chris@40: * src/wav_ima_adpcm.c Chris@40: Fixed bug when reading beyond end of data section due to not Chris@40: checking pima->blockcount. Chris@40: This uncovered __ima_seek () bug due to pima->blockcount being set Chris@40: before calling __ima_init_block (). Chris@40: Chris@40: 1999-03-17 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Started implementing MS ADPCM decoder. Chris@40: If file is WAVE_FORMAT_ADPCM and length of data chunk is odd, this Chris@40: encoder seems to add an extra byte. Why not just give an even data Chris@40: length? Chris@40: Chris@40: 1999-03-16 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Split code out of wav.c to create wav_float.c and wav_ima_adpcm.c. Chris@40: This will make it easier to add and debug other kinds of WAV files Chris@40: in future. Chris@40: Chris@40: 1999-03-14 Erik de Castro Lopo Chris@40: Chris@40: * tests/ Chris@40: Added adpcm_test.c which implements test functions for Chris@40: IMA ADPCM reading/writing/seeking etc. Chris@40: Chris@40: * src/wav.c Chris@40: Fixed many bugs in IMA ADPCM encoder and decoder. Chris@40: Chris@40: 1999-03-11 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Finished implementing IMA ADPCM encoder and decoder (what a bitch!). Chris@40: Chris@40: 1999-03-03 Erik de Castro Lopo Chris@40: Chris@40: * src/wav.c Chris@40: Started implementing IMA ADPCM decoder. Chris@40: Chris@40: 1999-03-02 Erik de Castro Lopo Chris@40: Chris@40: * src/sndfile.c Chris@40: Fixed bug where the sf_read_XXX functions were returning a Chris@40: incorrect read count when reading past end of file. Chris@40: Fixed bug in sf_seek () when seeking backwards from end of file. Chris@40: Chris@40: * tests/read_seek_test.c Chris@40: Added multiple read test to short_test(), int_test () and Chris@40: double_test (). Chris@40: Added extra chunk to all test WAV files to test that reading Chris@40: stops at end of 'data' chunk. Chris@40: Chris@40: 1999-02-21 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests for little DEC endian AU files. Chris@40: Chris@40: * src/au.c Chris@40: Add handling for DEC format little endian AU files. Chris@40: Chris@40: 1999-02-20 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c src/au.c src/wav.c Chris@40: Add __psf_sprintf calls during header parsing. Chris@40: Chris@40: * src/sndfile.c src/common.c Chris@40: Implement sf_header_info (sndfile.c) function and __psf_sprintf (common.c). Chris@40: Chris@40: * tests/write_read_test.c Chris@40: Added tests for 8 bit PCM files (WAV, AIFF and AU). Chris@40: Chris@40: * src/au.c src/aiff.c Chris@40: Add handling of 8 bit PCM data format. Chris@40: Chris@40: * src/aiff.c Chris@40: On write, set blocksize in SSND chunk to zero like everybody else. Chris@40: Chris@40: 1999-02-16 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c: Chris@40: Fixed bug in let2s_array (cptr was not being initialised). Chris@40: Chris@40: * src/sndfile.c: Chris@40: Fixed bug in sf_read_raw and sf_write_raw. sf_seek should Chris@40: now work when using these functions. Chris@40: Chris@40: 1999-02-15 Erik de Castro Lopo Chris@40: Chris@40: * tests/write_read_test.c: Chris@40: Force test_buffer array to be double aligned. Sparc Solaris Chris@40: requires this. Chris@40: Chris@40: 1999-02-14 Erik de Castro Lopo Chris@40: Chris@40: * src/pcm.c: Chris@40: Fixed a bug which was causing errors in the reading Chris@40: and writing of 24 bit PCM files. Chris@40: Chris@40: * doc/api.html Chris@40: Finished of preliminary documentaion. Chris@40: Chris@40: 1999-02-13 Erik de Castro Lopo Chris@40: Chris@40: * src/aiff.c: Chris@40: Changed reading of 'COMM' chunk to avoid reading an int Chris@40: which overlaps an int (4 byte) boundary.