2013-02-05  Michael Pruett <michael@68k.org>

	* Release version 0.3.5 of the Audio File Library.

2013-02-04  Michael Pruett <michael@68k.org>

	* gtest/Makefile.am,
	libaudiofile/Makefile.am,
	test/Makefile.am:
	Disable exceptions and RTTI when building Google Test framework.

2013-02-04  Michael Pruett <michael@68k.org>

	* libaudiofile/File.cpp,
	libaudiofile/File.h:
	Fix resource leak in File destructor.

2013-02-02  Michael Pruett <michael@68k.org>

	* libaudiofile/Makefile.am,
	libaudiofile/modules/Makefile.am:
	Remove test coverage files when cleaning.

2013-02-02  Michael Pruett <michael@68k.org>

	* libaudiofile/IRCAM.cpp:
	Fix calculation of IRCAM frame size.

2013-02-02  Michael Pruett <michael@68k.org>

	* test/PCMData.cpp:
	Update PCMData test to create multi-channel audio files.

2013-01-31  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.cpp,
	libaudiofile/CAF.cpp:
	Report error when attempting to open a file with invalid sample width.

2013-01-31  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.cpp,
	libaudiofile/CAF.cpp,
	libaudiofile/NeXT.cpp,
	libaudiofile/VOC.cpp,
	libaudiofile/WAVE.cpp:
	Report error when attempting to open a file with zero channels.

2013-01-31  Michael Pruett <michael@68k.org>

	* test/NeXT.cpp:
	Add test for opening a NeXT sound file with zero channels.

2013-01-30  Michael Pruett <michael@68k.org>

	* libaudiofile/NIST.cpp:
	Remove unnecessary check for positive channel count.

	This check is already performed in afInitChannels().

2013-01-30  Michael Pruett <michael@68k.org>

	* libaudiofile/SampleVision.cpp:
	Set compression type before initializing sample format.

2013-01-30  Michael Pruett <michael@68k.org>

	* test/TestUtilities.cpp:
	Include <unistd.h> to provide declaration of close().

2013-01-30  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.h,
	libaudiofile/AVR.h,
	libaudiofile/CAF.h,
	libaudiofile/Compiler.h,
	libaudiofile/IFF.h,
	libaudiofile/IRCAM.h,
	libaudiofile/NIST.h,
	libaudiofile/NeXT.h,
	libaudiofile/SampleVision.h,
	libaudiofile/VOC.h,
	libaudiofile/WAVE.h,
	libaudiofile/modules/G711.cpp,
	libaudiofile/modules/IMA.cpp,
	libaudiofile/modules/MSADPCM.cpp,
	libaudiofile/modules/PCM.cpp,
	libaudiofile/modules/RebufferModule.h,
	libaudiofile/modules/SimpleModule.h:
	Use C++11 override keyword with compilers that support it.

2013-01-19  Michael Pruett <michael@68k.org>

	* libaudiofile/CAF.cpp,
	libaudiofile/util.cpp:
	Fix conversion specifications in error messages.

2013-01-19  Michael Pruett <michael@68k.org>

	* libaudiofile/format.cpp,
	test/Makefile.am,
	test/SampleFormat.cpp:
	Fix null checks in afGetSampleFormat() and afGetVirtualSampleFormat().

	Thanks to David Lassonde for pointing out this problem.

2013-01-19  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.cpp,
	libaudiofile/AudioFormat.h,
	libaudiofile/CAF.cpp,
	libaudiofile/NeXT.cpp,
	libaudiofile/VOC.cpp,
	libaudiofile/WAVE.cpp,
	libaudiofile/modules/G711.cpp,
	libaudiofile/modules/IMA.cpp,
	libaudiofile/modules/MSADPCM.cpp,
	libaudiofile/modules/ModuleState.cpp,
	test/InvalidCompressionFormat.cpp:
	Validate compressed audio formats.

2012-11-13  Michael Pruett <michael@68k.org>

	* configure.ac, docs/Makefile.am:
	Add support for building without documentation.

2012-11-12  Michael Pruett <michael@68k.org>

	* libaudiofile/File.cpp:
	Open files in binary mode on Windows.

	Thanks to Fabrizio Gennari for proposing this change.

2012-10-13  Michael Pruett <michael@68k.org>

	* test/*:
	Use unique filenames for temporary files in tests.

	Thanks to Giovanni Mascellani for pointing out this problem.

	http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=687405

2012-09-12  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.cpp,
	libaudiofile/AVR.cpp,
	libaudiofile/AudioFormat.cpp,
	libaudiofile/AudioFormat.h,
	libaudiofile/CAF.cpp,
	libaudiofile/CAF.h,
	libaudiofile/IFF.cpp,
	libaudiofile/IRCAM.cpp,
	libaudiofile/NIST.cpp,
	libaudiofile/NeXT.cpp,
	libaudiofile/SampleVision.cpp,
	libaudiofile/Track.cpp,
	libaudiofile/Track.h,
	libaudiofile/VOC.cpp,
	libaudiofile/WAVE.cpp:
	Refactor calculation of frame count from audio data size.

2012-09-06  Michael Pruett <michael@68k.org>

	* libaudiofile/Makefile.am, libaudiofile/modules/Makefile.am:
	Reorganize build.

2012-09-06  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.cpp,
	libaudiofile/AIFF.h,
	libaudiofile/CAF.cpp,
	libaudiofile/SampleVision.cpp,
	libaudiofile/VOC.cpp,
	libaudiofile/WAVE.cpp,
	libaudiofile/WAVE.h,
	libaudiofile/util.cpp,
	libaudiofile/util.h,
	test/Makefile.am,
	test/Marker.cpp:
	Refactor marker writing. Record marker comments in WAVE files.

2012-07-31  Michael Pruett <michael@68k.org>

	* libaudiofile/Setup.cpp:
	Fix array overrun in afInitFileFormat().

2012-07-31  Michael Pruett <michael@68k.org>

	* libaudiofile/query.cpp, test/Makefile.am, test/Query.cpp:
	Fix handling of queries for unimplemented compression formats.

2012-07-31  Michael Pruett <michael@68k.org>

	* libaudiofile/AudioFormat.cpp, libaudiofile/compression.cpp,
	libaudiofile/compression.h, libaudiofile/debug.cpp,
	libaudiofile/modules/ModuleState.cpp, libaudiofile/query.cpp,
	libaudiofile/util.cpp:
	Refactor accessing compression units by compression type.

2012-07-31  Michael Pruett <michael@68k.org>

	* libaudiofile/compression.cpp, libaudiofile/format.cpp,
	libaudiofile/modules/ModuleState.cpp, libaudiofile/openclose.cpp,
	libaudiofile/query.cpp, libaudiofile/units.cpp,
	libaudiofile/units.h:
	Remove leading underscores from _Unit and _CompressionUnit types.

2012-07-31  Michael Pruett <michael@68k.org>

	* libaudiofile/modules/ModuleState.cpp:
	Improve error handling in ModuleState::arrange().

2012-07-26  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.cpp, libaudiofile/NeXT.cpp,
	libaudiofile/Setup.cpp, libaudiofile/WAVE.cpp,
	libaudiofile/format.cpp, libaudiofile/modules/G711.cpp,
	libaudiofile/modules/IMA.cpp, libaudiofile/modules/PCM.cpp:
	Remove unnecessary debugging print statements.

2012-07-21  Michael Pruett <michael@68k.org>

	* libaudiofile/modules/RebufferModule.cpp,
	libaudiofile/modules/UT_RebufferModule.cpp:
	Fix error in rebuffer module when buffering after pulling a short chunk.

2012-07-14  Michael Pruett <michael@68k.org>

	* libaudiofile/SampleVision.cpp, libaudiofile/compression.cpp:
	Report an error when initializing a file with an invalid compression format.

2012-07-14  Michael Pruett <michael@68k.org>

	* test/InvalidCompressionFormat.cpp, test/Makefile.am:
	Add test for creating audio files with invalid compression formats.

2012-07-14  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.cpp, libaudiofile/AIFF.h:
	Refactor discrimination between AIFF and AIFF-C.

2012-07-14  Michael Pruett <michael@68k.org>

	* Prefix member variables with 'm_'.

2012-07-14  Michael Pruett <michael@68k.org>

	* Mark default file setup structures as constant.

2012-07-14  Michael Pruett <michael@68k.org>

	* Refactor file handle initialization.

2012-07-05  Michael Pruett <michael@68k.org>

	* docs/sfconvert.1.txt, sfcommands/sfconvert.c:
	Add support for compression to sfconvert.

2012-07-05  Michael Pruett <michael@68k.org>

	* docs/afInitCompression.3.txt,
	libaudiofile/WAVE.cpp,
	libaudiofile/WAVE.h,
	libaudiofile/modules/MSADPCM.cpp,
	libaudiofile/modules/MSADPCM.h,
	libaudiofile/units.cpp,
	test/ADPCM.cpp:
	Implement Microsoft ADPCM encoding for WAVE files.

2012-07-05  Michael Pruett <michael@68k.org>

	* docs/afInitCompression.3.txt,
	libaudiofile/AIFF.cpp,
	libaudiofile/AIFF.h,
	libaudiofile/CAF.cpp,
	libaudiofile/CAF.h,
	libaudiofile/WAVE.cpp,
	libaudiofile/WAVE.h,
	libaudiofile/afinternal.h,
	libaudiofile/modules/IMA.cpp,
	libaudiofile/modules/IMA.h,
	libaudiofile/modules/Makefile.am,
	libaudiofile/units.cpp,
	test/ADPCM.cpp,
	test/Makefile.am:
	Implement IMA ADPCM encoding and decoding for AIFF-C, CAF, and WAVE files.

2012-07-05  Michael Pruett <michael@68k.org>

	* libaudiofile/AudioFormat.h,
	libaudiofile/WAVE.cpp,
	libaudiofile/afinternal.h,
	libaudiofile/modules/IMA.cpp,
	libaudiofile/modules/MSADPCM.cpp:
	Add framesPerPacket and bytesPerPacket fields to AudioFormat.

2012-07-05  Michael Pruett <michael@68k.org>

	* libaudiofile/data.cpp, libaudiofile/modules/Module.h:
	Fix mismatched deallocation of temporary buffer in afReadFrames.

2012-07-01  Michael Pruett <michael@68k.org>

	* sfcommands/sfconvert.c: Improve error handling in sfconvert.

2012-07-01  Michael Pruett <michael@68k.org>

	* sfcommands/Makefile.am, sfcommands/sfconvert.c:
	Clean up sfconvert.

2012-07-01  Michael Pruett <michael@68k.org>

	* libaudiofile/modules/FileModule.cpp,
	libaudiofile/modules/FileModule.h,
	libaudiofile/modules/G711.cpp,
	libaudiofile/modules/IMA.cpp,
	libaudiofile/modules/MSADPCM.cpp,
	libaudiofile/modules/PCM.cpp:
	Refactor error reporting in file modules.

2012-06-21  Michael Pruett <michael@68k.org>

	* libaudiofile/SampleVision.cpp: Fix comparisons between signed
	and unsigned integers.

2012-06-21  Michael Pruett <michael@68k.org>

	* libaudiofile/AIFF.cpp, libaudiofile/IFF.cpp,
	libaudiofile/WAVE.cpp, libaudiofile/modules/MSADPCM.cpp:
	Remove unused variables.

2012-06-21  Michael Pruett <michael@68k.org>

	* libaudiofile/AVR.cpp, libaudiofile/Marker.cpp,
	libaudiofile/NIST.cpp, libaudiofile/NeXT.cpp,
	libaudiofile/Setup.cpp, libaudiofile/error.h,
	libaudiofile/modules/G711.cpp, libaudiofile/modules/IMA.cpp,
	libaudiofile/modules/MSADPCM.cpp, libaudiofile/modules/PCM.cpp:
	Fix conversion specifications in error messages.

2012-06-21  Michael Pruett <michael@68k.org>

	* libaudiofile/modules/ModuleState.cpp,
	libaudiofile/modules/RebufferModule.cpp,
	libaudiofile/modules/RebufferModule.h
	libaudiofile/modules/UT_RebufferModule.cpp:
	Refactor rebuffer module.

2012-05-20  Michael Pruett <michael@68k.org>

	* libaudiofile/modules/RebufferModule.cpp: Fix error in rebuffering
	when pulling multiple blocks at once.

2012-05-20  Michael Pruett <michael@68k.org>

	* libaudiofile/Makefile.am,
	libaudiofile/modules/UT_RebufferModule.cpp: Add unit test for
	rebuffer module.

2012-05-20  Michael Pruett <michael@68k.org>

	* Move Google Test framework to top of source tree.

2012-05-20  Michael Pruett <michael@68k.org>

	* Reorganize code coverage build configuration.

2012-05-10  Michael Pruett <michael@68k.org>

	* docs/*: Update documentation.

2012-05-06  Michael Pruett <michael@68k.org>

	* docs/sfconvert.1.txt, sfcommands/sfconvert.c: Add support for
	Sample Vision to sfconvert.

2012-05-06  Michael Pruett <michael@68k.org>

	* Update documentation to include support for Sample Vision.

2012-05-06  Michael Pruett <michael@68k.org>

	* libaudiofile/VOC.cpp: Report an error when initializing a VOC file
	with an invalid sample format.

2012-05-06  Michael Pruett <michael@68k.org>

	* test/Makefile.am, test/InvalidSampleFormat.cpp: Add test for
	creating audio files with invalid sample formats.

2012-05-06  Michael Pruett <michael@68k.org>

	* Reorganize tests.