2008-07-08	valex
	* valib/filters/convolver.cpp 1.20:
		Correct flushing

2008-07-03	valex
	* valib/win32/cpu.cpp 1.3:
	* valib/win32/cpu.h 1.5:
		Take in account number of CPUs when measure CPU usage

	* valib/win32/winspk.cpp 1.17:
	* valib/win32/winspk.h 1.7:
		Visual Studio 2008 compatibility

2008-06-29	valex
	* valib/filters/dvd_graph.cpp 1.37:
	* valib/filters/dvd_graph.h 1.33:
		DVDGraph: Do not call check_spdif_encode() at get_into(), 
		because it may slow down the playback A LOT! (on Creative X-FI 
		Extreme Audio)

	* valib/filters/dither.h 1.2:
		Dither: include <math.h>

	* valib/parsers/ac3/ac3_parser.cpp 1.21:
		cpldeltbae flag bug

2008-06-27	valex
	* lib/valib.dev 1.3:
	* test/test.dev 1.6:
	* valib/filters/convolver.cpp 1.19:
	* valib/filters/resample.cpp 1.26:
	* valib/filters/spectrum.cpp 1.5:
		* Compile with MSVC 2008

2008-06-25	valex
	* valib/filters/spectrum.cpp 1.4:
		Spectrum: simplier buffer fill

2008-06-18	valex
	* valib/fir/eq_fir.cpp 1.3:
		EqFIR: do not build bands above nyquist frequency

	* valib/defs.cpp 1.6:
		Credits: FFT by Ooura

	* valib/filters/convolver.cpp 1.18:
		Convolver: eos chunk must not be a dummy, but empty

	* lib/valib.dsp 1.49:
	* test/test.dsp 1.72:
	* valib/dsp/dbesi0.c 1.2:
	* valib/dsp/dbesi0.h 1.2:
	* valib/dsp/fftsg.c 1.1:
	* valib/dsp/fftsg.h 1.1:
	* valib/dsp/fftsg_ld.c 1.2:
	* valib/dsp/fftsg_ld.h 1.3:
	* valib/filters/resample.cpp 1.25:
	* valib/filters/spectrum.cpp 1.3:
		FFT and Bessel code updated from the official ooura site

	* valib/dsp/kaiser.h 1.5:
		kaiser.h: comments

2008-06-17	valex
	* valib/filters/proc.h 1.31:
	* valib/filters/spectrum.cpp 1.2:
	* valib/filters/spectrum.h 1.2:
		Spectrum::get_spectrum() bin2hz parameter added

	* lib/valib.dsp 1.48:
	* valib/filters/proc.cpp 1.29:
	* valib/filters/proc.h 1.30:
	* valib/filters/spectrum.cpp 1.1:
	* valib/filters/spectrum.h 1.1:
		Spectrum analyzer added

	* valib/filters/convolver.cpp 1.17:
		Convolver: reset the sync on reinit

2008-06-13	valex
	* valib/filters/convert.cpp 1.27:
		Convert: comments

	* valib/filters/proc.cpp 1.28:
		AudioProcessor: dithering noise amplitude changed from 1.0 to 
		0.5

	* valib/sync.h 1.9:
		* New SyncHelper class (replace for Sync)

	* todo.txt 1.9:
	* todo_big.txt 1.6:
	* valib/filters/todo.txt 1.6:
	* valib/fir/todo.txt 1.3:
	* valib/parsers/todo.txt 1.6:
	* valib/sink/todo.txt 1.4:
	* valib/todo.txt 1.8:
		TODOs cleared

	* valib/filters/convert.cpp 1.26:
		Convert: rounding to the nearest integer (VERY important for 
		dithering)

	* valib/filters/parser_filter.cpp 1.13:
	* valib/filters/parser_filter.h 1.11:
	* valib/sync.h 1.10:
		* ParserFilter uses new SyncHelper

	* valib/filters/convolver.cpp 1.16:
	* valib/filters/convolver.h 1.7:
		* Convolver: use SyncHelper for timing

	* lib/valib.dsp 1.47:
	* valib/filters/dither.cpp 1.1:
	* valib/filters/dither.h 1.1:
	* valib/filters/proc.cpp 1.27:
	* valib/filters/proc.h 1.29:
		* Dither filter added
		* AudioProcessor uses dithering when Equalizer/SRC is enabled

	* valib/filters/levels.cpp 1.14:
	* valib/filters/levels.h 1.12:
		Levels: bug with time...

	* valib/filters/convolver.cpp 1.15:
		Convolver: Ensure correct state when going to reinit

2008-06-12	valex
	* valib/filters/equalizer.h 1.3:
	* valib/filters/proc.h 1.28:
		Equalizer: enable/disable option added
		AudioProcessor: enable/disable equalizer option

	* valib/filters/convolver.cpp 1.11:
	* valib/filters/convolver.cpp 1.12:
	* valib/filters/convolver.cpp 1.13:
	* valib/filters/convolver.h 1.6:
		Convolver: more correct flushing

	* valib/filters/convolver.cpp 1.14:
		Convolver: correct switch between trivial and non-trivial 
		filtering

	* valib/filters/equalizer.h 1.2:
	* valib/filters/proc.cpp 1.26:
	* valib/filters/proc.h 1.27:
	* valib/fir/eq_fir.cpp 1.2:
	* valib/fir/eq_fir.h 1.2:
		* EqFIR::set_bands() arrays made const to allow static arrays
		* Equalizer added to AudioProcessor

	* valib/filters/convolver.cpp 1.10:
		Convolver: Do not drop the data received on reinit

2008-06-01	valex
	* valib/auto_file.h 1.10:
	* valib/bitstream.h 1.13:
	* valib/crc.h 1.9:
	* valib/data.h 1.15:
	* valib/defs.h 1.28:
	* valib/dsp/kaiser.h 1.4:
	* valib/filter.h 1.43:
	* valib/filter_graph.h 1.29:
	* valib/filter_tester.h 1.16:
	* valib/filters/agc.h 1.13:
	* valib/filters/bass_redir.h 1.8:
	* valib/filters/convert.h 1.17:
	* valib/filters/decoder.h 1.18:
	* valib/filters/decoder_graph.h 1.4:
	* valib/filters/dejitter.h 1.14:
	* valib/filters/delay.h 1.8:
	* valib/filters/demux.h 1.10:
	* valib/filters/detector.h 1.3:
	* valib/filters/dvd_graph.h 1.32:
	* valib/filters/gain.h 1.3:
	* valib/filters/levels.h 1.11:
	* valib/filters/mixer.h 1.7:
	* valib/filters/parser_filter.h 1.10:
	* valib/filters/proc.h 1.26:
	* valib/filters/resample.h 1.13:
	* valib/filters/spdifer.h 1.38:
	* valib/fir.h 1.5:
	* valib/fir/param_fir.h 1.2:
	* valib/log.h 1.6:
	* valib/mpeg_demux.h 1.5:
	* valib/parser.h 1.34:
	* valib/parsers/ac3/ac3_bitalloc.h 1.3:
	* valib/parsers/ac3/ac3_defs.h 1.2:
	* valib/parsers/ac3/ac3_dither.h 1.3:
	* valib/parsers/ac3/ac3_enc.h 1.6:
	* valib/parsers/ac3/ac3_header.h 1.6:
	* valib/parsers/ac3/ac3_imdct.h 1.3:
	* valib/parsers/ac3/ac3_mdct.h 1.3:
	* valib/parsers/ac3/ac3_parser.h 1.12:
	* valib/parsers/dts/dts_defs.h 1.3:
	* valib/parsers/dts/dts_header.h 1.5:
	* valib/parsers/dts/dts_parser.h 1.8:
	* valib/parsers/file_parser.h 1.12:
	* valib/parsers/mpa/mpa_defs.h 1.2:
	* valib/parsers/mpa/mpa_header.h 1.5:
	* valib/parsers/mpa/mpa_parser.h 1.10:
	* valib/parsers/mpa/mpa_synth.h 1.3:
	* valib/parsers/mpa/mpa_tables.h 1.3:
	* valib/parsers/multi_frame.h 1.5:
	* valib/parsers/multi_header.h 1.5:
	* valib/parsers/spdif/spdif_header.h 1.5:
	* valib/parsers/spdif/spdif_parser.h 1.5:
	* valib/parsers/spdif/spdif_wrapper.h 1.6:
	* valib/rng.h 1.3:
	* valib/sink/sink_dshow.h 1.9:
	* valib/sink/sink_dsound.h 1.14:
	* valib/sink/sink_raw.h 1.10:
	* valib/sink/sink_wav.h 1.4:
	* valib/source/dsound_source.h 1.6:
	* valib/source/raw_source.h 1.7:
	* valib/source/wav_source.h 1.4:
	* valib/spk.h 1.20:
	* valib/sync.h 1.8:
	* valib/syncscan.h 1.5:
	* valib/vargs.h 1.2:
	* valib/vtime.h 1.5:
	* valib/win32/cpu.h 1.4:
	* valib/win32/thread.h 1.6:
	* valib/win32/winspk.h 1.6:
		Use VALIB_{FILE}_H macros in header files

2008-05-23	valex
	* valib/fir/param_ir.cpp 1.8:
	* valib/fir/param_ir.h 1.4:
		Old FIR implementation removed

2008-05-22	valex
	* lib/valib.dsp 1.46:
	* test/test.dsp 1.71:
	* valib/filters/equalizer.cpp 1.1:
	* valib/filters/equalizer.h 1.1:
	* valib/fir/eq_fir.cpp 1.1:
	* valib/fir/eq_fir.h 1.1:
		Equalizer added (FIR and filter classes)

2008-05-21	valex
	* valib/filters/convolver.cpp 1.9:
		Convolver: allow zero center

	* valib/dsp/kaiser.h 1.3:
		kaiser.h
		* kaiser_a(n, df) to determine maximum attenuation for the given filter length
		* extend functions to work with a < 21 (rect window)

2008-05-20	valex
	* lib/valib.dsp 1.45:
	* test/test.dsp 1.70:
	* test/tests/test_fir.cpp 1.5:
	* valib/fir/multi_fir.h 1.3:
	* valib/fir/parallel_fir.cpp 1.1:
	* valib/fir/parallel_fir.h 1.1:
		New ParallelFIR class & test

	* test/suite.h 1.7:
		Correct usage of CHECK macros in nested if constructions

	* valib/defs.h 1.27:
		Bug in EQUAL_SAMPLES macro fixed

2008-05-19	valex
	* lib/valib.dsp 1.44:
		FIRs added

	* valib/fir/param_fir.cpp 1.1:
	* valib/fir/param_fir.h 1.1:
		New FIR implementation

	* test/test.dsp 1.68:
	* test/test.dsp 1.69:
	* test/tests/test_fir.cpp 1.4:
	* valib/fir/delay_fir.cpp 1.1:
	* valib/fir/delay_fir.h 1.1:
	* valib/fir/echo_fir.cpp 1.1:
	* valib/fir/echo_fir.h 1.1:
	* valib/fir/multi_fir.cpp 1.1:
	* valib/fir/multi_fir.h 1.1:
		New FIR generatos: echo and delay
		MultiFIR: combines several FIRs into one

	* valib/fir/delay_fir.cpp 1.2:
	* valib/fir/echo_fir.cpp 1.2:
	* valib/fir/multi_fir.cpp 1.2:
	* valib/fir/multi_fir.h 1.2:
		correct include paths

	* test/test.cpp 1.49:
	* test/test.dsp 1.67:
	* test/test_filter.cpp 1.47:
	* test/tests/filters/test_convolver.cpp 1.3:
	* test/tests/filters/test_resample.cpp 1.2:
	* test/tests/test_fir.cpp 1.3:
		Old FIR implementation removed

	* valib/filters/gain.h 1.2:
		Gain: get rid of warning message

2008-05-15	valex
	* lib/valib.dsp 1.43:
	* test/test.dsp 1.66:
	* test/tests/filters/test_convolver.cpp 1.2:
	* test/tests/test_fir.cpp 1.2:
	* valib/filters/convolver.cpp 1.7:
	* valib/filters/convolver.h 1.4:
	* valib/fir.cpp 1.1:
	* valib/fir.h 1.3:
	* valib/fir/param_ir.cpp 1.6:
	* valib/fir/param_ir.h 1.2:
		New FIR implementations

	* valib/filters/convolver.cpp 1.8:
	* valib/filters/convolver.h 1.5:
	* valib/fir.h 1.4:
	* valib/fir/param_ir.cpp 1.7:
	* valib/fir/param_ir.h 1.3:
		Old FIR implementation removed

	* valib/filters/gain.cpp 1.1:
	* valib/filters/gain.h 1.1:
		New: Gain filter

2008-05-10	valex
	* valib/filters/counter.h 1.9:
		NullFilter::on_xxxx() placeholder functions added and used in in-
		place filters (more clear code)

	* valib/data.h 1.14:
	* valib/defs.h 1.26:
	* valib/filter_graph.cpp 1.12:
	* valib/filters/convolver.cpp 1.6:
	* valib/filters/resample.cpp 1.24:
	* valib/parsers/file_parser.cpp 1.17:
	* valib/parsers/mpa/mpa_parser.cpp 1.18:
	* valib/parsers/multi_frame.cpp 1.4:
	* valib/parsers/multi_header.cpp 1.6:
	* valib/parsers/spdif/spdif_wrapper.cpp 1.7:
	* valib/sink/sink_dsound.cpp 1.25:
	* valib/sink/sink_wav.cpp 1.6:
	* valib/syncscan.cpp 1.2:
		use of safe_delete macro

2008-05-09	valex
	* valib/filter.h 1.42:
	* valib/filters/bass_redir.cpp 1.13:
	* valib/filters/bass_redir.cpp 1.14:
	* valib/filters/bass_redir.h 1.6:
	* valib/filters/bass_redir.h 1.7:
	* valib/filters/counter.h 1.7:
	* valib/filters/counter.h 1.8:
	* valib/filters/delay.cpp 1.12:
	* valib/filters/delay.h 1.7:
	* valib/filters/levels.cpp 1.13:
	* valib/filters/levels.h 1.10:
	* valib/filters/slice.cpp 1.2:
	* valib/filters/slice.h 1.2:
		NullFilter::on_xxxx() placeholder functions added and used in in-
		place filters (more clear code)

2008-03-10	valex
	* test/test.cpp 1.48:
	* test/test.dsp 1.65:
	* test/test_base.cpp 1.4:
	* test/test_convolver.cpp 1.10:
	* test/test_fir.cpp 1.2:
	* test/test_general.cpp 1.5:
	* test/test_old_style.cpp 1.3:
	* test/test_proc.cpp 1.10:
	* test/test_resample.cpp 1.4:
	* test/test_rng.cpp 1.3:
	* test/test_slice.cpp 1.2:
	* test/tests/filters/test_convolver.cpp 1.1:
	* test/tests/filters/test_proc.cpp 1.1:
	* test/tests/filters/test_resample.cpp 1.1:
	* test/tests/filters/test_slice.cpp 1.1:
	* test/tests/test_base.cpp 1.1:
	* test/tests/test_fir.cpp 1.1:
	* test/tests/test_general.cpp 1.1:
	* test/tests/test_rng.cpp 1.1:
		Tests moved to tests folder
		AudioProcessor test converted to the new style

	* valib/source/generator.h 1.3:
		Generator: prohibit creation of the base class

	* valib/defs.h 1.25:
		Defs:
		* move # to the first position of the line
		* disable long identifier warning in MSVC6

	* valib/fir/param_ir.cpp 1.5:
		ParamIR:
		* swap bounds for band-stop and bans-pass filters if nessesary
		* shorten get_type() function

	* test/suite.h 1.6:
		TestSuite::do_test() bug fixed
		Comments fixed

	* valib/filters/resample.cpp 1.23:
	* valib/filters/resample.h 1.12:
		Resample:
		* rate member added
		* send time stamps with the filter delay in account

2008-03-02	valex
	* test/tests/test_ac3_enc.cpp 1.7:
	* test/tests/test_ac3_parser.cpp 1.2:
	* test/tests/test_buffer.cpp 1.5:
	* test/tests/test_filters.cpp 1.7:
	* test/tests/test_float.cpp 1.6:
	* test/tests/test_pcm_pass.cpp 1.9:
	* test/tests/test_pes_demux.cpp 1.3:
	* test/tests/test_spdif_pass.cpp 1.7:
	* test/tests/test_time_pass.cpp 1.4:
		Unused tests removed

2008-03-01	valex
	* lib/valib.dsp 1.42:
	* test/test.dsp 1.64:
	* valib/divisors.cpp 1.2:
	* valib/divisors.h 1.2:
		'divisors' module removed (not used anymore)

2008-02-28	valex
	* test/test_resample.cpp 1.3:
		Good resample transform test

	* valib/filters/convolver.cpp 1.5:
	* valib/filters/convolver.h 1.3:
		Convolver: fail on no memory

	* valib/filters/resample.cpp 1.22:
		Resample: take shift in account when calculating the size of the 
		last block

	* valib/filters/resample.cpp 1.21:
	* valib/filters/resample.h 1.11:
		Resample: do not resample is input and output rates are equal

2008-02-24	valex
	* valib/filters/resample.cpp 1.20:
	* valib/filters/resample.h 1.10:
		Resample: BIG UPDATE
		* Downsample now uses the same filtering scheme as upsample
		* New optimization functioins
		! one test fails: 4000<->64000 q=0.99 a=250 (diff=247)

2008-02-14	valex
	* valib/filters/resample.cpp 1.19:
		Resample: flushing bug on upsample fixed (44100->48000 q=0.99 a=
		206)

2008-02-13	valex
	* valib/filters/resample.cpp 1.17:
		Resample: Custom attenuation for each stage
		Resample::reset() clean delay2 buffer more correctly

	* valib/filters/resample.cpp 1.16:
		Resample: choose pre_samples and shift with m2 in account

	* valib/filters/resample.cpp 1.15:
		Resample: Overflow of the delay2 buffer fixed

	* valib/filters/resample.cpp 1.18:
		Resample: it was possible for n1 to decrease

2008-02-12	valex
	* valib/filters/resample.cpp 1.14:
		Resample: new method of calculating filter parameters

2008-02-11	valex
	* test/test_resample.cpp 1.2:
		typos fixed

	* valib/filters/resample.cpp 1.13:
		Resample: new method of calculating filter parameters

	* test/test.cpp 1.47:
	* test/test.dsp 1.63:
	* test/test_resample.cpp 1.1:
		test: Resample test added

2008-02-09	valex
	* valib/filters/resample.cpp 1.12:
		Resample: filter calculus bug fixed

	* valib/filters/resample.cpp 1.11:
		Resample: fix 8000->48000 upsample

2008-02-06	valex
	* valib/filters/resample.cpp 1.10:
	* valib/filters/resample.h 1.9:
		Resample: correct initial values for pos_l and pos_m

2008-02-05	valex
	* valib/filters/resample.cpp 1.9:
	* valib/filters/resample.h 1.8:
		New method of caclulating stage1_out()
		Avoid crash on downsampling 48000->16000

2008-02-01	valex
	* valib/log.cpp 1.7:
		Log: flush the file for each log message

2008-01-23	valex
	* test/test_convolver.cpp 1.7:
		* Band-pass and band-stop test

	* test/test_convolver.cpp 1.6:
		* Extended SliceFilter test

	* valib/filters/convolver.cpp 1.4:
	* valib/filters/convolver.h 1.2:
		Convolver:
		* process() renamed to process_block() (was hiding Filter::process())
		* impulse response change in trivial processing

	* test/test_base.cpp 1.3:
	* test/test_convolver.cpp 1.5:
	* test/test_crash.cpp 1.14:
	* test/test_filtergraph.cpp 1.5:
	* test/test_proc.cpp 1.9:
	* test/test_source.h 1.4:
	* test/test_suite.cpp 1.6:
	* valib/source/generator.cpp 1.4:
	* valib/source/generator.h 1.2:
		* Generator::setup() is renamed to init()

	* test/test.cpp 1.46:
	* test/test.dsp 1.62:
	* test/test_convolver.cpp 1.9:
	* test/test_slice.cpp 1.1:
		SliceFilter is now separate filter, so SliceFilter test is now 
		separate too.

	* test/test_convolver.cpp 1.8:
		* Extended Convolver class test
		* Test IR change on the fly

	* valib/filters/slice.cpp 1.1:
	* valib/filters/slice.h 1.1:
	* valib/fir/todo.txt 1.2:
		SliceFilter added

2008-01-22	valex
	* valib/source/generator.cpp 1.3:
		Noise should be able to generate the same stream with different 
		chunk sizes. So we have to reorder generation of samples...

	* test/suite.cpp 1.5:
		bugbugbug

	* valib/filters/convolver.cpp 1.3:
		* Convolver: regenerate the response on reset() if nessesary

	* test/test_convolver.cpp 1.4:
		* Parametric filter test

	* test/test_base.cpp 1.2:
	* valib/filter.h 1.41:
		* SourceFilter and SinkFilter constructor bug fixed
		* Base test updated

	* test/suite.cpp 1.3:
	* test/suite.cpp 1.4:
	* test/suite.h 1.5:
	* test/test.cpp 1.45:
	* test/test_suite.cpp 1.5:
		+ level measurement functions added
		+ difference measurement functions added
		* Test suite self-test updated

	* valib/fir/param_ir.cpp 1.4:
		High-pass filter bug fixed

2008-01-21	valex
	* lib/valib.sln 1.2:
	* lib/valib.vcproj 1.4:
	* test/test.sln 1.3:
	* test/test.vcproj 1.5:
		VC2003 projects removed (not updated for a long time)

	* test/test.cpp 1.44:
	* test/test.dsp 1.61:
	* test/test_base.cpp 1.1:
	* test/test_null.cpp 1.5:
	* test/test_old_style.cpp 1.2:
		* test_null is replaced with an extended version test_base

	* valib/filter.h 1.40:
		* comments
		* SinkFilter bug fixed

	* test/common.cpp 1.15:
	* test/common.h 1.5:
	* test/suite.cpp 1.2:
	* test/suite.h 1.4:
	* test/test.cpp 1.43:
	* test/test.dsp 1.60:
	* test/test_convolver.cpp 1.3:
	* test/test_decodergraph.cpp 1.3:
	* test/test_demux.cpp 1.9:
	* test/test_despdifer.cpp 1.3:
	* test/test_detector.cpp 1.3:
	* test/test_dvdgraph.cpp 1.22:
	* test/test_filtergraph.cpp 1.4:
	* test/test_null.cpp 1.4:
	* test/test_proc.cpp 1.8:
	* test/test_spdifer.cpp 1.22:
		* compare() functions moved to suite.*
		+ new from of compare() funncton added
		- common.* module removed

	* test/test_suite.cpp 1.4:
		+ compare() test added

	* valib/filter.h 1.39:
		* Some comments removed (better described in docs)
		+ SourceFilter and SinkFilter classes

2008-01-17	valex
	* test/test.dsp 1.58:
	* test/test_convolver.cpp 1.2:
		+ Generator class added
		* Convolver test uses new noise generator

	* valib/source/generator.cpp 1.2:
	* valib/source/noise.cpp 1.9:
	* valib/source/noise.h 1.9:
	* valib/source/zero_source.cpp 1.2:
	* valib/source/zero_source.h 1.2:
		* Generator class cleanup
		- Noise and ZeroSource removed (use NoiseGen instead)

	* test/test.cpp 1.41:
	* test/test.dsp 1.57:
	* test/test_convolver.cpp 1.1:
	* test/test_crash.cpp 1.12:
		+ convolver test added

	* lib/valib.dsp 1.41:
	* test/common.cpp 1.14:
	* test/test.cpp 1.42:
	* test/test.dsp 1.59:
	* test/test_crash.cpp 1.13:
	* test/test_crc.cpp 1.16:
	* test/test_demux.cpp 1.8:
	* test/test_despdifer.cpp 1.2:
	* test/test_detector.cpp 1.2:
	* test/test_dvdgraph.cpp 1.21:
	* test/test_filter.cpp 1.46:
	* test/test_filtergraph.cpp 1.3:
	* test/test_null.cpp 1.3:
	* test/test_old_style.cpp 1.1:
	* test/test_parser_filter.cpp 1.2:
	* test/test_proc.cpp 1.7:
	* test/test_source.h 1.3:
	* test/test_spdifer.cpp 1.21:
	* test/test_streambuf.cpp 1.15:
	* test/test_syncer.cpp 1.14:
		* Noise class is replaced with NoiseGen

	* valib/source/generator.cpp 1.1:
	* valib/source/generator.h 1.1:
		+ Generator class: signal generator base
		+ Generators: silence, noise and tone

	* valib/source/zero_source.cpp 1.1:
	* valib/source/zero_source.h 1.1:
		+ Zero source added

2008-01-15	valex
	* test/suite.h 1.2:
	* test/test.cpp 1.40:
	* test/test_suite.cpp 1.1:
		* Get rid of log parameter from do_test()
		+ Test suite self-test

	* test/test_suite.cpp 1.3:
		* More suite testing

	* test/suite.cpp 1.1:
	* test/suite.h 1.3:
	* test/test.dsp 1.56:
	* test/test_suite.cpp 1.2:
		* Tests return TestResult instead of bool

2008-01-13	valex
	* valib/rng.cpp 1.2:
	* valib/rng.h 1.2:
	* valib/source/noise.cpp 1.8:
		* New RNG implementation:
		** New generator function
		** Fill functions added
		** Unused functions removed
		** Generation functions made inline

	* test/test.cpp 1.39:
	* test/test.dsp 1.55:
	* test/test_ac3.cpp 1.2:
	* test/test_bs_convert.cpp 1.4:
	* test/test_crc.cpp 1.15:
	* test/test_rng.cpp 1.2:
	* test/test_syncer.cpp 1.13:
		* New random number generator
		+ All tests splitted into 3 parts: common tests, long tests and speed tests. Only common tests ran by default. All others are available from command line.
		+ RNG full proof test added

2008-01-09	valex
	* test/all_filters.h 1.7:
	* test/suite.h 1.1:
	* test/test.cpp 1.37:
	* test/test.dsp 1.53:
	* test/test_filter.cpp 1.45:
	* test/test_fir.cpp 1.1:
		+ Convolver filter test
		+ Test suite
		+ FIR test using the test suite
		+ Command line parameters are interpreted as test names to run from the suite

	* valib/filters/convolver.cpp 1.2:
	* valib/fir/param_ir.cpp 1.3:
		* Impulse response should not suppose that it will be used in 
		fft transform

	* test/test.cpp 1.38:
	* test/test.dsp 1.54:
	* test/test_rng.cpp 1.1:
		+ Simple RNG test

	* valib/fir.h 1.2:
	* valib/fir/param_ir.cpp 1.2:
		fir.h: Primitive responses added
		param_ir.h: correct ranges for identity response

2007-12-30	valex
	* lib/valib.dsp 1.39:
	* valib/filters/convolver.cpp 1.1:
	* valib/filters/convolver.h 1.1:
	* valib/fir.h 1.1:
	* valib/fir/param_ir.cpp 1.1:
	* valib/fir/param_ir.h 1.1:
	* valib/fir/todo.txt 1.1:
		+ Impulse response interface
		+ Impulse response reference class
		+ Parametric filter impulse response implementation
		+ Convolver filter (uses impulse response to work)

	* lib/valib.dsp 1.40:
	* valib/vtime.cpp 1.4:
		* Do not use TIME_WIN32 in vtime.cpp

2007-12-17	valex
	* valib/filters/resample.cpp 1.8:
		Resample: correct flushing on downsample

2007-12-12	valex
	* valib/filters/resample.cpp 1.7:
	* valib/filters/resample.h 1.7:
		Resample: drop_pre_samples() function

	* valib/filters/resample.cpp 1.5:
	* valib/filters/resample.h 1.5:
		Resample: avoid signal shift on upsample (todo: avoid signal 
		shift on downsample)

	* valib/dsp/kaiser.h 1.2:
		typo

	* valib/filters/resample.cpp 1.6:
	* valib/filters/resample.h 1.6:
		Resample: avoid signal shift on downsample

2007-11-06	valex
	* test/test_dvdgraph.cpp 1.20:
		DVDGraph test: lower file size requirements

	* valib/parsers/mpa/mpa_header.cpp 1.6:
		MPAHeader: treat different number of channels as different 
		streams (pass the test)

2007-11-05	valex
	* test/all_filters.h 1.6:
	* test/test_decodergraph.cpp 1.2:
	* test/test_filter.cpp 1.44:
		test: Resample filter added

	* valib/defs.h 1.24:
	* valib/filter_graph.cpp 1.11:
	* valib/win32/winspk.cpp 1.16:
	* valib/win32/winspk.h 1.5:
		GCC compilation

	* valib/sink/sink_wav.cpp 1.5:
	* valib/source/wav_source.cpp 1.4:
		*** empty log message ***

	* valib/filters/resample.cpp 1.4:
	* valib/filters/resample.h 1.4:
		Resample: passes filter test

	* lib/valib.dsp 1.38:
	* test/test.dsp 1.52:
	* test/test_filter.cpp 1.43:
	* valib/dsp/fftsg_ld.h 1.2:
	* valib/filters/agc.h 1.12:
	* valib/filters/bass_redir.h 1.5:
	* valib/filters/convert.h 1.16:
	* valib/filters/counter.h 1.6:
	* valib/filters/decoder.h 1.17:
	* valib/filters/decoder_graph.h 1.3:
	* valib/filters/dejitter.h 1.13:
	* valib/filters/delay.h 1.6:
	* valib/filters/demux.h 1.9:
	* valib/filters/detector.cpp 1.3:
	* valib/filters/detector.h 1.2:
	* valib/filters/dvd_graph.h 1.31:
	* valib/filters/levels.h 1.9:
	* valib/filters/mixer.h 1.6:
	* valib/filters/parser_filter.h 1.9:
	* valib/filters/proc.h 1.25:
	* valib/filters/resample.cpp 1.3:
	* valib/filters/resample.h 1.3:
	* valib/filters/spdifer.h 1.37:
	* valib/parsers/ac3/ac3_bitalloc.h 1.2:
	* valib/parsers/ac3/ac3_dither.h 1.2:
	* valib/parsers/ac3/ac3_enc.cpp 1.15:
	* valib/parsers/ac3/ac3_enc.h 1.5:
	* valib/parsers/ac3/ac3_header.h 1.5:
	* valib/parsers/ac3/ac3_imdct.h 1.2:
	* valib/parsers/ac3/ac3_mdct.h 1.2:
	* valib/parsers/ac3/ac3_parser.cpp 1.20:
	* valib/parsers/ac3/ac3_parser.h 1.11:
	* valib/parsers/dts/dts_header.cpp 1.5:
	* valib/parsers/dts/dts_header.h 1.4:
	* valib/parsers/dts/dts_parser.h 1.7:
	* valib/parsers/file_parser.h 1.11:
	* valib/parsers/mpa/mpa_header.h 1.4:
	* valib/parsers/mpa/mpa_parser.cpp 1.17:
	* valib/parsers/mpa/mpa_parser.h 1.9:
	* valib/parsers/mpa/mpa_synth.h 1.2:
	* valib/parsers/multi_frame.h 1.4:
	* valib/parsers/multi_header.h 1.4:
	* valib/parsers/spdif/spdif_header.cpp 1.2:
	* valib/parsers/spdif/spdif_header.h 1.4:
	* valib/parsers/spdif/spdif_parser.cpp 1.3:
	* valib/parsers/spdif/spdif_parser.h 1.4:
	* valib/parsers/spdif/spdif_wrapper.cpp 1.6:
	* valib/parsers/spdif/spdif_wrapper.h 1.5:
	* valib/sink/sink_dshow.cpp 1.28:
	* valib/sink/sink_dshow.h 1.8:
	* valib/sink/sink_dsound.cpp 1.24:
	* valib/sink/sink_dsound.h 1.13:
	* valib/sink/sink_wav.cpp 1.4:
	* valib/sink/sink_wav.h 1.3:
	* valib/source/dsound_source.cpp 1.7:
	* valib/source/dsound_source.h 1.5:
	* valib/source/noise.h 1.8:
	* valib/source/raw_source.h 1.6:
	* valib/source/wav_source.cpp 1.3:
	* valib/source/wav_source.h 1.3:
	* valib/win32/cpu.h 1.3:
	* valib/win32/winspk.h 1.4:
		BIG UPDATE: all includes use relative paths. Required to build 
		with Eclipse/GCC...

2007-11-04	valex
	* valib/filters/proc.h 1.24:
		Resampling options

	* valib/filters/proc.cpp 1.25:
	* valib/filters/proc.h 1.23:
		AudioProcessor: sample rate conversion support

	* valib/filters/dvd_graph.cpp 1.36:
		Resample support

	* valib/filters/resample.cpp 1.2:
	* valib/filters/resample.h 1.2:
		Resample:
		* Measure performance with RESAMPLE_PERF defined (causing problems with DEBUG/no DEBUG defined)
		* Correct buffer allocation
		* Correct delay2 buffer update

2007-11-03	valex
	* lib/valib.dsp 1.37:
	* valib/divisors.cpp 1.1:
	* valib/divisors.h 1.1:
	* valib/dsp/dbesi0.c 1.1:
	* valib/dsp/dbesi0.h 1.1:
	* valib/dsp/fftsg_ld.c 1.1:
	* valib/dsp/fftsg_ld.h 1.1:
	* valib/dsp/kaiser.h 1.1:
	* valib/filters/resample.cpp 1.1:
	* valib/filters/resample.h 1.1:
		BIG UPDATE: Sample rate conversion
		* Resample filter added
		* DivEnum class added
		* DSP folder created
		* FFT functions
		* Bessel function
		* Kaiser window functions

2007-10-07	valex
	* valib/sink/sink_dshow.cpp 1.27:
		No time logging (now it is dome by the filter itself)

2007-10-05	valex
	* valib/filters/agc.h 1.11:
	* valib/filters/dvd_graph.cpp 1.35:
	* valib/filters/dvd_graph.h 1.30:
	* valib/filters/proc.cpp 1.24:
		Added buffer size into constructors of all buffering filters. (
		Buffer size was limited by AGC filter. So nevertheless it was 
		set to 4096 samples in DVDGraph, in fact it was 1024 samples)

2007-08-09	valex
	* valib/filters/dvd_graph.cpp 1.34:
		* default ac3 encoder bitrate is 640kbps now

	* lib/_clear.bat 1.6:
		do not delete library files

2007-08-08	valex
	* valib/filters/decoder_graph.h 1.2:
		Removed unneeded stuff copied from DVDGraph class

2007-07-05	valex
	* _clear.bat 1.7:
		Utilities removed

	* valib/win32/_readme.txt 1.2:
	* valib/win32/todo.txt 1.2:
		commenting

	* lib/valib.dsp 1.36:
	* valib/vargs.cpp 1.1:
	* valib/vargs.h 1.1:
		Argument parsing added

2007-07-04	valex
	* valib/filters/dvd_graph.cpp 1.33:
	* valib/filters/dvd_graph.h 1.29:
		spdif bitrate option added

	* todo.txt 1.8:
	* valib/parsers/file_pcm.cpp 1.2:
	* valib/todo.txt 1.7:
		Utilities removed

	* doc/Buffering.doc 1.3:
	* doc/Filter list.html 1.2:
	* doc/Hierarchy.vsd 1.3:
	* doc/RUS/DVDDecoder.doc 1.4:
	* doc/Streams and flushing.doc 1.3:
		Unfinished docs removed

	* lib/valib.dsp 1.35:
		WAVSource added

	* valib/parsers/file_pcm.cpp 1.3:
	* valib/parsers/file_pcm.h 1.2:
		FilePCM removed

2007-06-15	valex
	* valib/parsers/mpa/mpa_header.cpp 1.5:
		MPAHeader: fixed joint-stereo playback (stereo <-> joint stereo 
		switch is possible)

2007-06-12	valex
	* valib/spk.h 1.19:
		Speakers: autoselect default level depending on format
		Speakers: comments updated

	* valib/filters/mixer.cpp 1.17:
		Mixer: mix voise to the center, not mono channel
		Mixer: wrong bitwise & instead of logical &&

	* valib/filters/dvd_graph.cpp 1.32:
	* valib/filters/proc.cpp 1.23:
		Always use user_spk relation. Otherwise input relation is always 
		copied to output relation and upmixing becomes impossible (bug 
		by Stefan Schott)

2007-06-05	valex
	* valib/parsers/ac3/ac3_header.cpp 1.8:
		ac3_header::compare_headers() bug...

	* test/test_decodergraph.cpp 1.1:
		Decoder graph test

	* lib/_clear.bat 1.5:
		clear libc build trash

	* test/test_streambuf.cpp 1.14:
		StreamBuffer test: different chunk sizes

	* valib/filters/dvd_graph.cpp 1.31:
		DVDGraph: reset Detector on possible SPDIF state change (SPDIF 
		state change resets audio processor and it may start with half-a-
		sample what leads to loud noise)

2007-06-04	valex
	* valib/filters/proc.cpp 1.22:
	* valib/filters/proc.h 1.22:
		AudioProcessor: conv1 and conv2 renamed to in_conv and out_conv

2007-06-01	valex
	* test/test_syncer.cpp 1.12:
	* valib/filters/_readme.txt 1.8:
	* valib/filters/dvd_graph.h 1.28:
	* valib/filters/parser_filter.cpp 1.12:
	* valib/filters/parser_filter.h 1.8:
	* valib/mpeg_demux.cpp 1.8:
	* valib/parsers/mpa/mpa_header.cpp 1.4:
	* valib/parsers/mpa/mpa_parser.cpp 1.16:
		comments and typos fixed

	* lib/valib.dsp 1.34:
	* test/test.cpp 1.36:
	* test/test.dsp 1.51:
	* valib/filters/decoder_graph.cpp 1.1:
	* valib/filters/decoder_graph.h 1.1:
		DecoderGraph: simple decoder and processor filter
		Decoder graph test

	* valib/parsers/ac3/ac3_header.cpp 1.7:
		MSVC8 compiling error fixed

	* valib/parser.h 1.33:
	* valib/parsers/spdif/spdif_header.h 1.3:
	* valib/parsers/spdif/spdif_parser.h 1.3:
	* valib/parsers/spdif/spdif_wrapper.h 1.4:
		comments

2007-05-29	valex
	* valib/defs.cpp 1.5:
		typos

	* valib/filters/mixer.cpp 1.16:
		Mixer::calc_matrix(): apply 1/sqrt(N) gain to LFE channel (N is 
		number of output channles we mix LFE to)

2007-05-26	valex
	* valib/parsers/ac3/ac3_header.cpp 1.6:
		AC3Header: fixed a bug by Chris Meadowcroft: compr field may 
		occupy more bits in byte 7. compre field excluded.

	* valib/parsers/spdif/spdif_header.h 1.2:
		comments

2007-05-01	valex
	* valib/filters/dvd_graph.cpp 1.29:
	* valib/filters/dvd_graph.cpp 1.30:
		DVDGraph: do not encode stereo AND MONO

	* valib/sink/sink_dshow.cpp 1.26:
		DShowSink: report time shorter...

2007-04-11	valex
	* valib/parsers/ac3/ac3_parser.cpp 1.19:
		AC3Parser: BUG with LFE bit allocation fixed (appear in non-5.1 sterams)
		AC3Parser: frames and errors are modified only in parse_frame()

2007-04-09	valex
	* valib/filters/parser_filter.cpp 1.11:
	* valib/filters/parser_filter.h 1.7:
		ParserFilter: get_info() prints parser stream info

	* lib/valib.dsp 1.33:
		valib: exception handlind enabled

	* valib/filters/dvd_graph.cpp 1.28:
	* valib/filters/dvd_graph.h 1.27:
	* valib/filters/spdifer.h 1.36:
	* valib/parsers/spdif/spdif_wrapper.cpp 1.5:
	* valib/parsers/spdif/spdif_wrapper.h 1.3:
		SPDIFWrapper: DTS conversion to 14/16bit implemented
		SPDIFWrapper: Output stream info

2007-04-05	valex
	* valib/filters/delay.cpp 1.11:
		Delay: now it can convert units even in uninitialized state

2007-03-26	valex
	* valib/parsers/file_parser.cpp 1.15:
		FrameParser::load_frame(): StreamBuffer may have some data 
		buffered even when we cannot load more data from the file.

	* valib/filters/proc.h 1.21:
		AudioProcessor: get_max_level measures output level

	* valib/filters/levels.cpp 1.12:
	* valib/filters/levels.h 1.8:
	* valib/filters/proc.h 1.20:
		LevelsHistogram: get_max_level() added
		LevelsHistogram: inlines moved to .cpp
		LevelsCache: inlines moved to .cpp
		AudioProcessor: get_max_level added

	* valib/parsers/ac3/ac3_imdct.cpp 1.2:
		IMDCT: output has 2 times higher level (passes the IMDCT test)

	* valib/sink/sink_dshow.cpp 1.25:
		SinkShow: disable timing

	* valib/parsers/file_parser.cpp 1.16:
	* valib/parsers/file_parser.h 1.10:
		FileParser::load_frame(): StreamBuffer may have some data 
		buffered even when we cannot load more data from the file.

	* test/test.cpp 1.35:
	* test/test.dsp 1.50:
	* test/test_ac3.cpp 1.1:
		test: new ac3 test

	* valib/parsers/ac3/ac3_parser.cpp 1.17:
	* valib/parsers/ac3/ac3_parser.h 1.9:
		AC3Parser: parse_frame() decomposed to low-level functions used 
		for testing

	* valib/parsers/ac3/ac3_parser.cpp 1.18:
	* valib/parsers/ac3/ac3_parser.h 1.10:
		AC3Parser: crc check is back

2007-03-20	valex
	* valib/filters/parser_filter.cpp 1.10:
	* valib/filters/parser_filter.h 1.6:
		ParserFilter: use new timing algorithm

	* test/test.cpp 1.34:
	* test/test.dsp 1.49:
	* test/test_parser_filter.cpp 1.1:
		test: new ParserFilter timing test

	* valib/spk.cpp 1.10:
	* valib/spk.h 1.18:
		spk_rawdata constant added

	* valib/parser.cpp 1.21:
	* valib/parser.h 1.32:
		StreamBuffer: access to the sync buffer (get_buffer() and get_buffer_size())
		StreamBuffer: load_frame() loads frames from buffered data

2007-02-28	valex
	* valib/parsers/spdif/spdif_wrapper.cpp 1.4:
	* valib/parsers/spdif/spdif_wrapper.h 1.2:
		SPDIFWrapper: SPDIF_DTS_RAW renamed to SPDIF_DTS_PADDED (term 
		used in documentation)

2007-02-20	valex
	* valib/filters/spdifer.h 1.35:
	* valib/parsers/spdif/spdif_parser.cpp 1.2:
	* valib/parsers/spdif/spdif_parser.h 1.2:
	* valib/parsers/spdif/spdif_wrapper.cpp 1.3:
		SPDIFParser: big_endian in constructor

2007-02-19	valex
	* valib/bitstream.cpp 1.9:
	* valib/crc.cpp 1.7:
	* valib/defs.h 1.23:
	* valib/filter.h 1.38:
	* valib/parser.cpp 1.20:
	* valib/parsers/ac3/ac3_enc.cpp 1.14:
	* valib/parsers/spdif/spdif_wrapper.cpp 1.2:
		defs: assert.h included by default

	* lib/valib.dsp 1.31:
	* test/test.dsp 1.47:
	* test/test_streambuf.cpp 1.13:
	* valib/filters/detector.cpp 1.2:
	* valib/filters/spdifer.h 1.34:
	* valib/parsers/spdif/spdif_header.cpp 1.1:
	* valib/parsers/spdif/spdif_header.h 1.1:
	* valib/parsers/spdif/spdif_parser.cpp 1.1:
	* valib/parsers/spdif/spdif_parser.h 1.1:
	* valib/parsers/spdif/spdif_wrapper.cpp 1.1:
	* valib/parsers/spdif/spdif_wrapper.h 1.1:
	* valib/parsers/spdif_frame.cpp 1.5:
	* valib/parsers/spdif_frame.h 1.5:
	* valib/parsers/spdif_header.cpp 1.5:
	* valib/parsers/spdif_header.h 1.3:
	* valib/parsers/spdif_wrapper.cpp 1.4:
	* valib/parsers/spdif_wrapper.h 1.3:
		spdif_header, spdif_parser and spdif_wrapper modules moved to a separate directory
		SPDIFFrame renamed to SPDIFParser

	* lib/valib.dsp 1.32:
	* test/test.dsp 1.48:
	* valib/filters/decoder.h 1.16:
	* valib/parsers/ac3/ac3_frame.cpp 1.6:
	* valib/parsers/ac3/ac3_frame.h 1.7:
	* valib/parsers/ac3/ac3_parser.cpp 1.16:
	* valib/parsers/ac3/ac3_parser.h 1.8:
	* valib/parsers/dts/dts_frame.cpp 1.6:
	* valib/parsers/dts/dts_frame.h 1.6:
	* valib/parsers/dts/dts_parser.cpp 1.12:
	* valib/parsers/dts/dts_parser.h 1.6:
	* valib/parsers/mpa/mpa_frame.cpp 1.5:
	* valib/parsers/mpa/mpa_frame.h 1.5:
	* valib/parsers/mpa/mpa_parser.cpp 1.15:
	* valib/parsers/mpa/mpa_parser.h 1.8:
		MPAFrame/AC3Frame/DTSFrame files renamed to ***Parser.

2007-02-18	valex
	* valib/parser.cpp 1.19:
		StreamBuffer::stream_info() crash when out of sync

	* lib/valib.vcproj 1.3:
	* test/test.vcproj 1.4:
		Detector class added to the project

	* valib/filters/parser_filter.cpp 1.9:
		ParserFilter: handle parser's output change format change as new 
		stream condition.

	* valib/parsers/multi_header.cpp 1.5:
		MultiHeader: calc min and max frame sizes more accurate

	* valib/filters/dvd_graph.cpp 1.27:
	* valib/filters/dvd_graph.h 1.26:
	* valib/filters/spdifer.h 1.33:
	* valib/parsers/spdif_wrapper.cpp 1.3:
	* valib/parsers/spdif_wrapper.h 1.2:
		Spdifer: use_dts14 and dts_mode options added
		DVDDecoder: use_dts14 and dts_mode options added

	* valib/bitstream.cpp 1.8:
	* valib/bitstream.h 1.12:
		ReadBS: 14bit stream aligned to 2 bytes was read incorrectly

2007-02-15	valex
	* valib/win32/winspk.cpp 1.15:
		winspk: rollback the last change

	* test/test_dvdgraph.cpp 1.19:
		DVDGraph test: conversion test using detector

	* valib/parsers/spdif_frame.cpp 1.4:
	* valib/parsers/spdif_frame.h 1.4:
	* valib/parsers/spdif_header.cpp 1.4:
	* valib/parsers/spdif_header.h 1.2:
		SPDIFHeader and SPDIFFrame now take in account leading zeros at 
		the header

	* lib/valib.dsp 1.30:
	* valib/filters/detector.cpp 1.1:
	* valib/filters/detector.h 1.1:
		New Detector class

	* valib/filters/dvd_graph.cpp 1.26:
	* valib/filters/dvd_graph.h 1.25:
		DVDGraph: use Detector filter

	* test/test_streambuf.cpp 1.12:
		StreamBuffer::load() and StreamBuffer::load_frame() functions 
		separated

	* test/.cvsignore 1.7:
	* test/all_filters.h 1.5:
	* test/test.cpp 1.33:
	* test/test.dsp 1.46:
	* test/test_detector.cpp 1.1:
	* test/test_filter.cpp 1.42:
		test: detector test

2007-02-14	valex
	* valib/filters/parser_filter.cpp 1.7:
	* valib/filters/parser_filter.h 1.4:
		ParserFilter: Old implementation removed

	* valib/filters/parser_filter.cpp 1.6:
	* valib/filters/parser_filter.h 1.3:
		ParserFilter: transition state introduced (aviod multiple links 
		from one state to another). Comments added for the current 
		implementation.

	* valib/parser.cpp 1.18:
	* valib/parser.h 1.31:
		StreamBuffer::flush() function added

	* test/common.cpp 1.13:
		test: common: now we can set breakpoint on exit from the test 
		cycle...

	* valib/filters/parser_filter.cpp 1.8:
	* valib/filters/parser_filter.h 1.5:
		ParserFilter: send_frame() and send_eos() support functions

2007-02-13	valex
	* valib/filters/parser_filter.cpp 1.5:
	* valib/parser.cpp 1.17:
	* valib/parser.h 1.30:
		StreamBuffer::load() and StreamBuffer::load_frame() functions 
		separated

2007-02-10	valex
	* test/test.dsp 1.45:
		Liba52 removed from the project

	* valib/parser.cpp 1.16:
	* valib/parser.h 1.29:
		StreamBuffer::is_frame_loaded() and is_drbris_exists() updated

	* lib/valib.dev 1.2:
	* lib/valib.vcproj 1.2:
	* test/test.vcproj 1.3:
	* valib/sink/sink_dshow.h 1.7:
		Compilation under different compilers

2007-01-22	valex
	* valib/filters/proc.cpp 1.21:
	* valib/filters/proc.h 1.19:
		AudioProcessor: support unknown format for user_spk
		AudioProcessor: drop input/output format on set_input and set_user() failure
		AudioProcessor::rebuild_chain() now updates out_spk and do all possible checks.

	* valib/filters/parser_filter.cpp 1.4:
		ParserFilter: a bug with stream changes in get_chink() fixed

	* test/test.cpp 1.32:
	* test/test_despdifer.cpp 1.1:
	* test/test_filter.cpp 1.41:
	* test/test_spdifer.cpp 1.20:
		Spdifer test: a bug with speed measurement fixed
		Despdifer test added (copy of Spdifer test)
		Filter test: Despdifer filter test added

	* valib/filters/spdifer.h 1.32:
	* valib/parsers/spdif_frame.cpp 1.3:
	* valib/parsers/spdif_frame.h 1.3:
	* valib/parsers/spdif_wrapper.cpp 1.2:
		SPDIFFrame: big_endian option added (convert output frame to 
		standard big endian stream format)

	* valib/filters/convert.cpp 1.25:
		Convert: find_conversion succeeds when input format is not set

	* test/test_dvdgraph.cpp 1.18:
		DVDGraph test: added spdif to spdif conversion test (tests spdif 
		input support)

	* valib/filter_graph.cpp 1.10:
		FilterGraph::add_node(): get_next() result check was not 
		performed

	* test/test.dsp 1.44:
		Despdifer test added to the test project

2007-01-21	valex
	* lib/.cvsignore 1.4:
	* lib/_clear.bat 1.4:
	* lib/valib.dev 1.1:
	* test/.cvsignore 1.6:
	* test/test.dev 1.5:
	* valib/auto_file.h 1.9:
	* valib/sink/sink_dsound.h 1.12:
	* valib/sink/sink_wav.cpp 1.3:
	* valib/source/dsound_source.cpp 1.6:
	* valib/win32/winspk.cpp 1.14:
		compiled with Dev-C++

	* lib/.cvsignore 1.3:
	* lib/_clear.bat 1.3:
	* lib/valib.sln 1.1:
	* lib/valib.vcproj 1.1:
	* test/.cvsignore 1.5:
	* test/_clear.bat 1.6:
		compilation with msvc8

2007-01-19	valex
	* test/.cvsignore 1.4:
	* test/test.dev 1.4:
	* test/test_bs_convert.cpp 1.3:
	* valib/bitstream.cpp 1.7:
	* valib/crc.cpp 1.6:
	* valib/crc.h 1.8:
	* valib/filters/dvd_graph.cpp 1.25:
	* valib/parser.cpp 1.15:
		sainty changes

	* test/_clear.bat 1.5:
	* test/test.sln 1.2:
	* test/test.vcproj 1.2:
		test: compiled with MSVC8

2007-01-18	valex
	* valib/filters/parser_filter.cpp 1.3:
	* valib/filters/parser_filter.h 1.2:
		ParserFilter: New inplementation. Now it can work with in-place 
		parsers. Now it does not load a new frame immediately after 
		sending of a parsed frame (because loading of a new frame may 
		change the data that was possibly modified in-place).

2007-01-09	valex
	* test/test_streambuf.cpp 1.11:
	* valib/filters/parser_filter.cpp 1.2:
	* valib/parser.cpp 1.14:
	* valib/parser.h 1.28:
		StreamBuffer: now it can work with debris (non-frame) data
		ParserFilter: updated to work with new StreamBuffer interface
		StreamBuffer test: updated to test debris data

	* test/common.cpp 1.12:
		test: compare() - report difference position

2006-12-20	valex
	* test/speed.log 1.5:
		test: speed log updated

	* test/test_streambuf.cpp 1.10:
		test: StreamBuffer test: SPDIF tests removed from non-SPDIF 
		parsers tests

2006-12-18	valex
	* valib/sink/sink_dsound.cpp 1.23:
	* valib/sink/sink_dsound.h 1.11:
		minor changes

2006-12-02	valex
	* valib/filters/dejitter.cpp 1.22:
		Update continious time in no dejitter mode (for correct jitter 
		measurement)

	* valib/parsers/file_parser.cpp 1.14:
		FileParser: avoid overflow in length calculation

2006-11-26	valex
	* valib/filters/dvd_graph.cpp 1.24:
	* valib/filters/dvd_graph.h 1.24:
		DVDDecoder: support SPDIF input

	* valib/filters/spdifer.h 1.31:
		Unspdifer renamed to Despdifer

	* valib/parsers/ac3/ac3_header.cpp 1.5:
	* valib/parsers/ac3/ac3_header.h 1.4:
	* valib/parsers/dts/dts_header.cpp 1.4:
	* valib/parsers/dts/dts_header.h 1.3:
	* valib/parsers/mpa/mpa_header.cpp 1.3:
	* valib/parsers/mpa/mpa_header.h 1.3:
		Parsers: do not take in account spdif-padded stream (always use 
		spdif parser)

	* valib/parsers/file_parser.cpp 1.13:
		FileParser: Do not gather stats if we cannot load one frame 
		immediately (refuse unsupported files faster)

2006-11-25	valex
	* test/liba52/a52_parser.cpp 1.2:
	* test/liba52/a52_parser.h 1.3:
	* test/test.dsp 1.43:
	* test/test_crc.cpp 1.14:
	* test/test_dvdgraph.cpp 1.17:
	* test/test_filter.cpp 1.40:
	* test/test_spdifer.cpp 1.19:
	* test/test_streambuf.cpp 1.9:
		Big test update
		* Test project: incorporate library changes
		* test_crc: parsers CRC test removed
		* test_dvdgraph: data generation check added
		* test_filter: AudioDecoder is back!
		* test_spdifer: use FilterTester
		* test_streambuf: cosmetic changes
		* A52Parser rewritted to use new interface (untested yet)
		
		ALL TESTS PASSED!!! (except for disabled DVDGraph filter test)

	* lib/valib.dsp 1.29:
		valib lib: incorporate all changes

	* valib/filters/decoder.cpp 1.29:
	* valib/filters/decoder.h 1.15:
	* valib/filters/parser_filter.cpp 1.1:
	* valib/filters/parser_filter.h 1.1:
	* valib/filters/spdifer.cpp 1.46:
	* valib/filters/spdifer.h 1.30:
	* valib/parser.cpp 1.13:
	* valib/parser.h 1.27:
	* valib/parsers/ac3/ac3_frame.cpp 1.5:
	* valib/parsers/ac3/ac3_frame.h 1.6:
	* valib/parsers/ac3/ac3_parser.cpp 1.15:
	* valib/parsers/ac3/ac3_parser.h 1.7:
	* valib/parsers/dts/dts_frame.cpp 1.5:
	* valib/parsers/dts/dts_frame.h 1.5:
	* valib/parsers/dts/dts_parser.cpp 1.11:
	* valib/parsers/dts/dts_parser.h 1.5:
	* valib/parsers/file_parser.cpp 1.12:
	* valib/parsers/file_parser.h 1.9:
	* valib/parsers/mpa/mpa_parser.cpp 1.14:
	* valib/parsers/mpa/mpa_parser.h 1.7:
	* valib/parsers/spdif_wrapper.cpp 1.1:
	* valib/parsers/spdif_wrapper.h 1.1:
	* valib/sink/sink_wav.cpp 1.2:
	* valib/sink/sink_wav.h 1.2:
		BIG UPDATE (Get rid of old parser interface)
		
		- Old parser interface removed (Parser and BaseParser at parser.*)
		- All parsers based on old interface removed (ac3_parser.* mpa_parser.* dts_parser.*)
		* Parsers updated to not use old files
		+ SPDIFWrapper class (FrameParser)
		+ ParserFilter class (filters\parser_filter.*). This filter may be used as stand-alone filter and base for other filters that use frame parsers (Spdifer/Despdifer, AudioDecoder)
		* Spdifer is now just a wrapper filter for ParserFilter and SPDIFWrapper
		+ Despdifer class (wrapper filter for ParserFilter and SPDIFParser)
		* AudioDecoder is now just a wrapper filter for ParserFilter and AC3/DTS/MPA parsers
		* FileParser now uses StreamBuffer to work
		- FileParser does not work with PES files now
		* WAVSink: initialize file on set_input()

	* valib/crc.h 1.7:
		crc.h: typo

2006-11-21	valex
	* valib/filters/decoder.h 1.14:
		Decoder: frame counter and stream info added

	* valib/parser.cpp 1.12:
	* valib/parser.h 1.26:
	* valib/parsers/ac3/ac3_header.cpp 1.4:
	* valib/parsers/dts/dts_header.cpp 1.3:
	* valib/parsers/mpa/mpa_header.cpp 1.2:
	* valib/parsers/spdif_header.cpp 1.3:
		* HeaderInfo: new field scan_size
		* Header parsers: fill HeaderInfo::scan_size
		
		* StreamBuffer: frame counter
		* StreamBuffer: use of HeaderInfo::scan_size
		* StreamBuffer::sync() - falster 1st syncpoint scanning (~100 times faster on noise)
		* StreamBuffer::set_parser() - frame buffer size updated

2006-11-17	valex
	* valib/parser.cpp 1.11:
	* valib/parser.h 1.25:
		StreamBuffer now allows in-place frame processing (now it does 
		not depend on the previously loaded frame to load a next one)

	* _clear.bat 1.6:
		bsconvert utility

	* valib/filters/decoder.cpp 1.28:
	* valib/parser.h 1.24:
	* valib/parsers/ac3/ac3_frame.cpp 1.4:
	* valib/parsers/ac3/ac3_frame.h 1.5:
	* valib/parsers/dts/dts_frame.cpp 1.4:
	* valib/parsers/dts/dts_frame.h 1.4:
	* valib/parsers/mpa/mpa_frame.cpp 1.4:
	* valib/parsers/mpa/mpa_frame.h 1.4:
	* valib/parsers/spdif_frame.cpp 1.2:
	* valib/parsers/spdif_frame.h 1.2:
	* valib/parsers/spdif_header.cpp 1.2:
		FrameParser::parse_frame() and FrameParser::get_rawdata() made 
		non-const. It is because parser may operate inline and therefore 
		needs to change input frame buffer. Also, wrapping parser's 
		output to a chunk requires non-const data...

	* valib/parsers/multi_frame.cpp 1.3:
	* valib/parsers/multi_frame.h 1.3:
		FrameParser can now make raw output (not only linear), so we can 
		write SPDIF and MPEG parsers based on this interface.

	* test/test_bs_convert.cpp 1.2:
		bitstream.h: find_conversion() renamed to bs_conversion()

	* test/test_streambuf.cpp 1.8:
		StreamBuffer test:
		* passthrough test now simulates in-place processing
		* spdif_header passthrough and speed tests added
		* spdif_header added to multi_header

2006-11-14	valex
	* valib/parser.h 1.23:
	* valib/parsers/ac3/ac3_frame.cpp 1.3:
	* valib/parsers/ac3/ac3_frame.h 1.4:
	* valib/parsers/dts/dts_frame.cpp 1.3:
	* valib/parsers/dts/dts_frame.h 1.3:
	* valib/parsers/mpa/mpa_frame.cpp 1.3:
	* valib/parsers/mpa/mpa_frame.h 1.3:
		HeaderInfo::drop() changes bitstream type to unknown
		FrameParser::parse_frame() fucntion takes const input (guarantees no changes at input frame buffer)
		FrameParser can now make raw output (not only linear), so we can write SPDIF and MPEG parsers based on this interface.
		
		AC3Frame, MPAFrame, DTSFrame: reflect changes at FrameParser...

	* lib/valib.dsp 1.28:
	* valib/parsers/spdif_frame.cpp 1.1:
	* valib/parsers/spdif_frame.h 1.1:
	* valib/parsers/spdif_header.cpp 1.1:
	* valib/parsers/spdif_header.h 1.1:
		New SPDIFHeader and SPDIFFrame classes (SPDIF parsing)

	* valib/bitstream.cpp 1.6:
	* valib/bitstream.h 1.11:
		bitstream.h: input buffer of bitstream conversion functions made 
		const

2006-11-04	valex
	* valib/parsers/multi_header.cpp 1.4:
	* valib/parsers/multi_header.h 1.3:
		MultiHeader - header_info() uses parsers list.

	* valib/defs.h 1.22:
		defs.h - BITSTREAM_NONE constant added

2006-10-31	valex
	* valib/bitstream.cpp 1.4:
	* valib/bitstream.h 1.9:
		Bitstream conversion functions added

	* test/test_streambuf.cpp 1.7:
	* test/test_syncer.cpp 1.11:
		test: comments on tests

	* valib/parsers/ac3/ac3_header.cpp 1.3:
		AC3Header: low-endian header comparison fixed

	* valib/parsers/multi_header.cpp 1.3:
		MultiHeader: place parser used by parse_header() to the first 
		place at parsers list.

	* valib/parser.cpp 1.10:
		typo

	* test/test.cpp 1.31:
	* test/test.dsp 1.42:
	* test/test_bs_convert.cpp 1.1:
		Bitstream conversion functions test

	* valib/bitstream.cpp 1.5:
	* valib/bitstream.h 1.10:
		bitstream.h: find_conversion() renamed to bs_conversion()

	* test/test_filter.cpp 1.39:
		* AudioDecoder is removed from tests.
		* Problematic DVDGraph test commented (until fixing of this problem)

2006-10-28	valex
	* valib/parsers/multi_frame.cpp 1.2:
	* valib/parsers/multi_frame.h 1.2:
	* valib/parsers/multi_header.cpp 1.2:
	* valib/parsers/multi_header.h 1.2:
		Free memory at destructors of MultiHeader and MultiFrame

	* valib/parser.h 1.21:
	* valib/parsers/ac3/ac3_frame.cpp 1.2:
	* valib/parsers/ac3/ac3_frame.h 1.3:
	* valib/parsers/dts/dts_frame.cpp 1.2:
	* valib/parsers/dts/dts_frame.h 1.2:
	* valib/parsers/mpa/mpa_frame.cpp 1.2:
	* valib/parsers/mpa/mpa_frame.h 1.2:
		HeaderParser::header_parser()  made const

	* test/test.dsp 1.41:
	* test/test_filter.cpp 1.38:
	* test/test_streambuf.cpp 1.6:
	* valib/parsers/multi_frame.cpp 1.1:
	* valib/parsers/multi_frame.h 1.1:
	* valib/parsers/multi_header.cpp 1.1:
	* valib/parsers/multi_header.h 1.1:
	* valib/parsers/uni_frame.cpp 1.2:
	* valib/parsers/uni_frame.h 1.2:
	* valib/parsers/uni_header.cpp 1.4:
	* valib/parsers/uni_header.h 1.4:
		UNIHeader and UNIFrame was replaced with MultiHeader and 
		MultiFrame

	* lib/valib.dsp 1.27:
		valib lib: new parsers added

	* valib/parser.h 1.22:
		StreamBuffer::header_info() added

2006-10-25	valex
	* valib/parser.h 1.20:
		StreamBuffer: comment about the last frame of SPDIF stream with 
		unknown frame size.

	* test/test_filter.cpp 1.37:
		Decoder test added
		AudioDecoder test removed

	* test/test_streambuf.cpp 1.5:
		StreamBuffer test: comment about the last frame of SPDIF/DTS 
		stream

2006-10-24	valex
	* valib/parser.cpp 1.9:
		StreamBuffer BUG fixed: load the whole frame

	* valib/parsers/mpa/mpa_frame.cpp 1.1:
	* valib/parsers/mpa/mpa_frame.h 1.1:
	* valib/parsers/mpa/mpa_tables.h 1.2:
		MPAFrame calss added (with new parser interface)

	* valib/parsers/uni_header.cpp 1.3:
	* valib/parsers/uni_header.h 1.3:
		beauty

	* valib/parsers/uni_frame.cpp 1.1:
	* valib/parsers/uni_frame.h 1.1:
		UNIFrame: new calss,  universal frame parser (mpa/ac3/dts)

	* valib/parsers/dts/dts_frame.cpp 1.1:
	* valib/parsers/dts/dts_frame.h 1.1:
	* valib/parsers/dts/dts_parser.cpp 1.10:
	* valib/parsers/dts/dts_parser.h 1.4:
	* valib/parsers/dts/dts_tables.h 1.2:
	* valib/parsers/dts/dts_tables_adpcm.h 1.2:
	* valib/parsers/dts/dts_tables_fir.h 1.2:
	* valib/parsers/dts/dts_tables_huffman.h 1.2:
	* valib/parsers/dts/dts_tables_quantization.h 1.2:
		DTS tables made const
		DTSFrame: new DTS parser implements new parser interface

	* valib/parsers/dts/dts_header.cpp 1.2:
		DTSHeader: never rely on the frame size specified at header

	* test/test_streambuf.cpp 1.4:
		StreamBuffer test: passthrough test added

	* valib/filters/decoder.cpp 1.27:
	* valib/filters/decoder.h 1.13:
	* valib/parser.h 1.19:
	* valib/parsers/ac3/ac3_header.h 1.3:
	* valib/parsers/dts/dts_header.h 1.2:
	* valib/parsers/mpa/mpa_header.h 1.2:
	* valib/parsers/uni_header.cpp 1.2:
	* valib/parsers/uni_header.h 1.2:
		HeaderParser::can_parse() added

	* test/test.dsp 1.40:
		test project: new files added

2006-10-23	valex
	* valib/filters/decoder.cpp 1.25:
	* valib/filters/decoder.h 1.12:
		Decoder filter added. Uses parser (new interface) to decode the 
		stream.

	* lib/.cvsignore 1.2:
		.cvsignore updated

	* valib/sink/sink_raw.h 1.9:
		sink_raw.h: filter.h included

	* valib/filters/decoder.cpp 1.26:
		Decoser: comments
		Decoder: use state_frame_decoded only after syncronization

	* valib/parser.h 1.18:
		parser.h: comments

	* valib/parsers/ac3/ac3_frame.h 1.2:
		ac3_frame.h: use structures from ac3_parser.h

2006-10-18	valex
	* test/test_streambuf.cpp 1.3:
	* valib/parser.cpp 1.8:
	* valib/parser.h 1.17:
		StreamBuffer::get/set_hparser() changed to get/set_parser()

	* test/test.dsp 1.39:
	* valib/parser.h 1.16:
	* valib/parsers/ac3/ac3_frame.cpp 1.1:
	* valib/parsers/ac3/ac3_frame.h 1.1:
		AC3Frame class (implementation of new FrameParser interface)

2006-10-13	valex
	* valib/parser.h 1.15:
		New FrameParser interface

2006-10-11	valex
	* valib/parsers/ac3/ac3_header.cpp 1.2:
	* valib/parsers/ac3/ac3_header.h 1.2:
	* valib/parsers/dts/dts_header.cpp 1.1:
	* valib/parsers/dts/dts_header.h 1.1:
	* valib/parsers/mpa/mpa_header.cpp 1.1:
	* valib/parsers/mpa/mpa_header.h 1.1:
	* valib/parsers/uni_header.cpp 1.1:
	* valib/parsers/uni_header.h 1.1:
		DTSHeader, MPAHeader UNIHeader parsers added

	* lib/.cvsignore 1.1:
		cvsignore added to all applications

	* test/test.cpp 1.30:
	* test/test.dsp 1.37:
	* test/test_streambuf.cpp 1.1:
	* valib/parser.cpp 1.7:
	* valib/parser.h 1.14:
	* valib/parsers/ac3/ac3_header.cpp 1.1:
	* valib/parsers/ac3/ac3_header.h 1.1:
		parser.h: HeaderParser & HeaderInfo interfaces for header parsing
		parser.h: StreamBuffer class for reliable syncronization and frame-step stream walk
		AC3Header: new AC3 header parser
		test: new StreamBuffer test

	* valib/syncscan.h 1.4:
		SyncScan: comments

	* test/test_syncer.cpp 1.10:
		typo

	* test/.cvsignore 1.3:
		cvsignore update

	* test/test.dsp 1.38:
	* test/test_streambuf.cpp 1.2:
		StreamBuffer test with all header parsers

2006-09-27	valex
	* valib/sink/sink_dshow.cpp 1.24:
		comments about DivX Player

2006-09-25	valex
	* lib/valib.dsp 1.26:
	* valib/sink/sink_wav.cpp 1.1:
	* valib/sink/sink_wav.h 1.1:
		WAVSink class added

2006-09-20	valex
	* valib/sink/sink_dshow.cpp 1.23:
		spk2wfx(): another way to handly spdif format, commented.

	* valib/win32/thread.h 1.5:
		Thread::thread_id() function added

2006-09-15	valex
	* valib/sink/sink_dsound.cpp 1.20:
		DSoundSink::try_open(): used shared DirectSound object (0 when is not open)
		DSoundSink: used shared buffer size (0 when is not open)

	* valib/sink/sink_dsound.cpp 1.21:
	* valib/sink/sink_dsound.h 1.10:
		DSoundSink: do not create/destroy DirectSound object on each 
		open/close

	* valib/sink/sink_dsound.cpp 1.22:
		DSoundSink: reset time on close()

	* valib/renderer.h 1.4:
		PlaybackControl: comments updated (syncronization questions)

	* valib/sink/sink_dsound.cpp 1.17:
		DSoundSink: try_open() - free allocated resources

	* valib/sink/sink_dsound.cpp 1.18:
	* valib/sink/sink_dsound.h 1.9:
		DSoundSink: new sycronization scheme (like in WinampSink at 
		WinampAC3 project)

	* valib/sink/sink_dsound.cpp 1.19:
		DSoundSink: unnedded headers removed

2006-09-14	valex
	* valib/sink/sink_dsound.cpp 1.16:
		some cleanup

	* valib/renderer.h 1.3:
		PlaybackControl: interface description

	* valib/parsers/file_parser.cpp 1.11:
	* valib/parsers/file_parser.h 1.8:
		* FileParser: increased number of consecutive PES packets to detect (10)
		* FileParser: demux is now initialized with detected PES stream
		* FileParser: increased minimum number of packets in stats()

	* valib/renderer.h 1.2:
		PlaybackControl: default volume is 0 and default pan is 0

2006-09-13	valex
	* valib/parsers/dts/dts_parser.cpp 1.9:
		DTSParser must report format of contained stream (not decoded 
		format)

	* valib/renderer.h 1.1:
	* valib/sink/sink_dsound.cpp 1.14:
	* valib/sink/sink_dsound.h 1.7:
	* valib/source/dsound_source.cpp 1.5:
	* valib/source/dsound_source.h 1.4:
	* valib/vtime.h 1.4:
		* Clock class removed (this idea was unfinished and therefore it is just ballast now)
		* New PlaybackControl interface (replacement for old AudioRenderer interface)
		* DSoundSink: PlaybackControl interface implemented

	* lib/valib.dsp 1.25:
		renderer.h file added

	* valib/parsers/file_parser.cpp 1.10:
		FileParser: faster statistics. Scan until we have 0.5sec file 
		length accuracy.

	* valib/sink/sink_dsound.cpp 1.15:
	* valib/sink/sink_dsound.h 1.8:
		* DSoundSink: volume and pan controls implemented
		* Automatic detection of support of volume and pan controls when creating DS buffer

2006-08-09	valex
	* valib/filters/dejitter.cpp 1.21:
		Dejitter: apply time_factor and time_shift forgotten when use of 
		continuous_time was introduced

	* valib/win32/winspk.cpp 1.13:
		winspk: spk2wfx() bug with AC3 and DTS formats fixed

2006-08-06	valex
	* valib/filters/mixer.cpp 1.15:
		Mixer: Correct level even if input level is unspecified (imply 
		that input level is 1.0)

2006-08-02	valex
	* valib/filters/mixer.cpp 1.14:
		Mixer: level correction did not work (was broken with previous 
		change)

	* valib/filters/mixer.cpp 1.13:
		Mixer: divison by 0 at constructor fixed

	* valib/filters/dvd_graph.cpp 1.23:
	* valib/filters/dvd_graph.h 1.23:
		DVDGraph: agree output PCM format with sink

	* test/test_dvdgraph.cpp 1.16:
		DVDGraph test: test agreement of output PCM format with sink

	* valib/filters/agc.cpp 1.28:
		AGC: fixed again. previous change was incorrect (passthrough 
		test failed). Now it passes all tests and does not produce 
		clicks.

2006-07-31	valex
	* valib/parsers/file_parser.cpp 1.9:
	* valib/parsers/file_parser.h 1.7:
		FileParser: new PES detection algorithm

	* valib/filters/demux.cpp 1.18:
		Demux: LPCM samples rate was broken with previous change. Fixed.

	* valib/filters/agc.cpp 1.27:
		AGC: sometimes overflow was not catched

	* valib/parsers/ac3/ac3_parser.cpp 1.14:
		AC3Parser: constraint p41 s5.4.3.19 disabled because it is a 
		buggy encoder that produces files that do not fit this 
		constraint...

2006-07-30	valex
	* valib/filters/demux.cpp 1.16:
	* valib/filters/demux.cpp 1.17:
		Demux: pass input sample rate downstream

	* valib/filters/dejitter.cpp 1.20:
		Dejitter: do not log timing

2006-07-26	valex
	* doc/Jitter.xls 1.2:
		Doc: jitter doc updated

	* valib/filters/spdifer.cpp 1.45:
		Spdifer: timing corrected. But it still a bug with initial 
		syncronization and timing (sends incorrect time stamps after 
		initial syncronization)

	* doc/Jitter.xls 1.1:
	* valib/filters/dejitter.cpp 1.19:
	* valib/filters/dejitter.h 1.12:
		dejitter algorithm updated, commented and model was made

2006-07-23	valex
	* valib.txt 1.2:
		valib: credits

	* valib/filters/dejitter.cpp 1.18:
	* valib/filters/dejitter.h 1.11:
	* valib/filters/dvd_graph.cpp 1.22:
	* valib/filters/dvd_graph.h 1.22:
	* valib/filters/proc.cpp 1.20:
	* valib/filters/proc.h 1.18:
		Dejitter: support linear, pcm and spdif input
		AudioPorcessor: Dejitter removed
		DVDGraph: Dejitter added and works with spdif output

	* valib/source/wav_source.cpp 1.2:
		WAVSource: works

2006-07-15	valex
	* valib/defs.cpp 1.4:
	* valib/defs.h 1.21:
		defs: valib_credits() added

	* lib/valib.dsp 1.24:
		valib lib: defs.cpp moved to common

2006-07-08	valex
	* valib/parsers/file_parser.cpp 1.8:
		FileParser: change back: PES false-sync is too probable...

	* valib/parsers/file_parser.cpp 1.7:
		FileParser: try PES first (PES-DTS does not work otherwise)

2006-07-07	valex
	* valib/parsers/ac3/ac3_enc.cpp 1.13:
		AC3Enc: count time in seconds (not samples)

2006-07-06	valex
	* lib/valib.dsp 1.23:
		valib lib: browse info in debug builds

	* valib/filters/dvd_graph.cpp 1.18:
		DVDGraph: get_info() reports spdif error

	* valib/filters/dvd_graph.cpp 1.20:
		DVDGraph: get_info(): sample rate check indication fixed

	* lib/valib.dsp 1.22:
		Libc build configurations added

	* valib/filters/dvd_graph.cpp 1.19:
		DVDGraph: disabled spdif reason in one line
		DVDGraph: print processing chain only if it is not empty

	* test/test_dvdgraph.cpp 1.14:
	* valib/filters/dvd_graph.cpp 1.16:
	* valib/filters/dvd_graph.h 1.20:
		DVDGraph: new spdif output detection scheme
		DVDGraph: query_sink, spdif_encoder, spdif_check_sr options added

	* lib/_clear.bat 1.2:
		valib lib: clear libc folders

	* test/test_dvdgraph.cpp 1.15:
	* test/test_filter.cpp 1.36:
	* valib/filters/dvd_graph.cpp 1.17:
	* valib/filters/dvd_graph.h 1.21:
		DVDGraph: spdif_encode option added to set_spdif() function

	* valib/filters/dvd_graph.cpp 1.21:
		minor changes

2006-07-05	valex
	* valib/sink/sink_dshow.cpp 1.22:
	* valib/sink/sink_dshow.h 1.6:
		DShowSink: functions to send mediatype and discontinuity

	* test/liba52/a52_parser.h 1.2:
	* valib/filters/decoder.cpp 1.24:
	* valib/filters/decoder.h 1.11:
	* valib/filters/dvd_graph.cpp 1.15:
	* valib/filters/dvd_graph.h 1.19:
	* valib/filters/proc.cpp 1.19:
	* valib/filters/proc.h 1.17:
	* valib/filters/spdifer.cpp 1.44:
	* valib/filters/spdifer.h 1.29:
	* valib/parser.h 1.13:
	* valib/parsers/ac3/ac3_parser.cpp 1.13:
	* valib/parsers/ac3/ac3_parser.h 1.6:
	* valib/parsers/dts/dts_parser.cpp 1.8:
	* valib/parsers/dts/dts_parser.h 1.3:
	* valib/parsers/mpa/mpa_parser.cpp 1.13:
	* valib/parsers/mpa/mpa_parser.h 1.6:
		DVDGraph: extended get_info() report
		All: get_info() returns number of bytes printed and guarantees that returned string is finished with 0.

	* valib/filter_graph.cpp 1.9:
	* valib/filter_graph.h 1.28:
		FilterGraph: chain traverse functions added
		FilterGraph: get_info() should not print node_start node

2006-07-04	valex
	* valib/filters/dvd_graph.cpp 1.14:
	* valib/filters/dvd_graph.h 1.18:
		DVDGraph: we need 2 spdifer's to work with high-bitrate DTS in 
		spdif encode mode.

	* valib/parsers/dts/dts_parser.cpp 1.7:
		DTSParser: drop frame header info on reset(). Otherwise get_info(
		) call on uninitialized parser produces memory fault.

	* test/test_dvdgraph.cpp 1.13:
	* test/test_filter.cpp 1.35:
	* valib/filters/dvd_graph.cpp 1.12:
	* valib/filters/dvd_graph.h 1.16:
		DVDGraph: spdif as pcm output option

	* doc/chunk.doc 1.6:
		Time is always measured in seconds...

	* valib/filter_graph.cpp 1.8:
		FilterGraph: drop_chain() must guarantee that get_next() will be 
		called for start node.

	* valib/filter_graph.cpp 1.7:
		FIlterGraph: reset() just drops the chain

	* valib/parsers/ac3/ac3_parser.cpp 1.12:
		AC3Parser: crc calc bug with 5/8 of a frame (standard operates 
		with frame size in words)

	* valib/filters/dvd_graph.cpp 1.13:
	* valib/filters/dvd_graph.h 1.17:
	* valib/filters/proc.cpp 1.18:
		Aggregate filter should reset all contained filters on reset() 
		call.

2006-07-03	valex
	* valib/filter_graph.h 1.27:
		FilterGraph: comments about node state changes

	* valib/spk.h 1.17:
		spk.h: bug with new FORMAT_CLASS_SPDIFABLE constant (typo)

	* valib/filters/decoder.cpp 1.23:
		AudioDecoder - sync bug fixed (jitter on DVD files)

	* valib/filters/agc.cpp 1.25:
	* valib/filters/delay.cpp 1.10:
	* valib/filters/levels.cpp 1.11:
		Fixed time counting bug

	* valib/spk.h 1.16:
		Speakers: format classes are now defined using other defines (
		not as numeric constant)

	* valib/filters/agc.cpp 1.26:
		Fixed time counting bug (one more)

	* valib/sink/sink_dshow.cpp 1.21:
		DShowSink: set sample end time. It is required becuase otherwise 
		DirectShow will playback audio with negative time (prebuffering) 
		that slows down seeking.

	* valib/filters/dejitter.cpp 1.17:
	* valib/filters/dejitter.h 1.10:
	* valib/filters/proc.h 1.16:
		Dejitter now provides detailed stats

	* valib/filters/agc.cpp 1.24:
	* valib/filters/convert.cpp 1.24:
	* valib/filters/convert.h 1.15:
	* valib/filters/dejitter.cpp 1.16:
	* valib/filters/delay.cpp 1.9:
	* valib/filters/levels.cpp 1.10:
		--- BIG UPDATE ---
		All time is measured in seconds

2006-07-02	valex
	* valib/filters/dvd_graph.cpp 1.10:
		dvd_grpah.h: newline at the end of file

	* test/speed.pl 1.2:
		speed.pl: dump compilation info

	* test/test.dev 1.3:
		test: compiled under GCC

	* test/_clear.bat 1.4:
	* test/test.sln 1.1:
	* test/test.vcproj 1.1:
		test: msvc8 solution added

	* test/.cvsignore 1.2:
		ignore exe and dll files

	* valib/defs.cpp 1.3:
		defs.cpp: __TIMESTAMP__ (last file modification) is replaced 
		with __DATE__ and __TIME__

	* valib/filter_graph.cpp 1.6:
	* valib/filter_graph.h 1.26:
	* valib/filters/dvd_graph.cpp 1.11:
	* valib/filters/dvd_graph.h 1.15:
		FilterGraph: use get_next() to determine format support in query_input()
		FilterGraph: get_filter() function removed
		FilterGraph: use is_invalid() to check get_next() result
		FilterGraph: comments
		FilterChain: get_filter() removed
		FilterChain: query node in get_next() call
		DVDGraph: get_filter() removed

	* test/common.cpp 1.11:
		test: common.cpp::compare_file() - if compare function detects 
		an error filter may be full and hold reference to file source 
		buffer that is destroyed on function exit.

	* valib/sink/sink_dshow.cpp 1.20:
		DShowSink: do not convert time from samples to seconds

	* test/test_dvdgraph.cpp 1.12:
		DVDGraph test: pcm16 format must have level 32767. otherwise Mixer may scale 32768->32767 so producing wrong result.
		DVDGraph test: specify level in user format change test

	* test/speed.log 1.4:
		Updated speed test:
		* p3 500
		* p4 2800
		* GCC
		* VC6
		* VC8

2006-07-01	valex
	* valib/filter_tester.h 1.15:
		FilterTester now checks that filter is empty after receiving 
		empty chunk with format change

	* test/test.cpp 1.29:
		minor changes

	* valib/filters/demux.cpp 1.15:
		Demux: fixed bug with stream change to the stream with the same 
		format

	* test/test_demux.cpp 1.7:
		demux test: new samples added

2006-06-30	valex
	* valib/filters/spdifer.cpp 1.43:
	* valib/filters/spdifer.h 1.28:
		Spdifer: comments

	* test/test.cpp 1.28:
	* valib/defs.cpp 1.2:
	* valib/defs.h 1.20:
		defs.h: valib_compilation_info() renamed to valib_build_info()

	* lib/valib.dsp 1.21:
	* test/test.cpp 1.27:
	* test/test.dsp 1.36:
	* valib/defs.cpp 1.1:
	* valib/defs.h 1.19:
		defs.h: valib_compilation_info() function added

2006-06-29	valex
	* valib/filters/proc.cpp 1.17:
		AudioProcessor: user2output() checks input and user formats

	* valib/filters/dvd_graph.cpp 1.8:
	* valib/filters/dvd_graph.h 1.13:
		DVDGraph: filters made public
		DVDGraph: do not allow unspecified user_spk.format

	* valib/win32/winspk.cpp 1.11:
		winspk.h: is_compatible() fixed

	* valib/filters/dvd_decoder.cpp 1.12:
	* valib/filters/dvd_decoder.h 1.8:
		DVDDecoder class removed (DVDGraph fully replaces it)

	* test/test_dvdgraph.cpp 1.11:
	* test/test_filter.cpp 1.34:
	* valib/filter_graph.cpp 1.5:
	* valib/filter_graph.h 1.25:
	* valib/filters/dvd_graph.cpp 1.9:
	* valib/filters/dvd_graph.h 1.14:
		FilterGraph: cache get_next() result and query it only for dirty nodes
		FilterGraph: chain invalidation functions: set_dirty() and invalidate_chain()
		DVDGraph: spdif options are now accessed through get_xxxx() and set_xxxx() functions that ensure graph invalidation.

	* valib/win32/winspk.cpp 1.12:
		winspk.h: is_compatible() fixed again

2006-06-28	valex
	* valib/filters/dvd_graph.cpp 1.7:
	* valib/filters/dvd_graph.h 1.12:
		DVDGraph: get_info() function added

	* valib/filter_graph.cpp 1.4:
	* valib/filter_graph.h 1.24:
		FilterGraph: flushing on chain changes inmpemented
		FilterGraph: node_state[] added
		FilterGraph: chain elements and chain control functions made private
		FilterGraph: placeholders made protected

	* valib/filters/decoder.cpp 1.22:
	* valib/filters/decoder.h 1.10:
		AudioDecoder: get_info() function made const

	* valib/filters/spdifer.cpp 1.42:
	* valib/filters/spdifer.h 1.27:
		Spdifer: get_info() function made const

	* test/test_dvdgraph.cpp 1.10:
		DVDGraph: dynamical user format change test (including chain 
		rebuild with spdif/stereo passthrough)

	* valib/filters/dvd_graph.cpp 1.6:
		DVDGraph: set_user() forces the chain to rebuild

2006-06-27	valex
	* valib/filter_graph.cpp 1.3:
	* valib/filter_graph.h 1.23:
		FilterGraph: drop_chain() resets start and end filters.

2006-06-26	valex
	* test/test_dvdgraph.cpp 1.9:
		DVDGraph test: post cycle was incorrect

	* valib/filter_graph.cpp 1.2:
	* valib/filter_graph.h 1.22:
	* valib/filters/dvd_graph.cpp 1.5:
		FIlterGraph: start node added

2006-06-25	valex
	* valib/filter_graph.h 1.20:
		FilterGraph: old comments about filter_spk array removed

	* test/test_dvdgraph.cpp 1.6:
	* valib/filters/dvd_graph.cpp 1.3:
	* valib/filters/dvd_graph.h 1.10:
		DVDGraph: spdif_status now does not describe the reason why this path was selected (too many cases)
		DVDGraph: state_proc_xxxx states removed. only state_proc and state_proc_encode states remain
		DVDGraph: sink query about spdif works now

	* test/test_dvdgraph.cpp 1.5:
		DVDGraph test: specify different sinks in dynamical graph 
		rebuild test

	* valib/filters/dvd_graph.cpp 1.2:
	* valib/filters/dvd_graph.h 1.9:
		DVDGraph: query sink about SPDIF support (does not work because 
		requires graph rebuild but we have no method to mark graph as 
		dirty)

	* test/test_dvdgraph.cpp 1.7:
	* valib/filters/dvd_graph.cpp 1.4:
	* valib/filters/dvd_graph.h 1.11:
		DVDGraph: get_user(), set_user() and query_user() functions 
		added

	* valib/filters/proc.cpp 1.16:
	* valib/filters/proc.h 1.15:
		AudioProcessor: query_spk() works fine now

	* lib/valib.dsp 1.19:
	* test/test.dsp 1.34:
	* valib/filters/dvd_graph.cpp 1.1:
	* valib/filters/dvd_graph.h 1.8:
		DVDGraph: dvd_graph.cpp added

	* lib/valib.dsp 1.20:
	* test/test.dsp 1.35:
	* test/test_dvdgraph.cpp 1.8:
	* valib/filter_graph.cpp 1.1:
	* valib/filter_graph.h 1.21:
		FilterGraph: filter_graph.h was splitted to filter_graph.h and 
		filter_graph.cpp

	* valib/filters/proc.cpp 1.15:
	* valib/filters/proc.h 1.14:
		AudioProcessor: query_user() and get_user() functions added

2006-06-23	valex
	* valib/sink/sink_dsound.cpp 1.13:
	* valib/sink/sink_dsound.h 1.6:
	* valib/source/dsound_source.cpp 1.4:
	* valib/source/dsound_source.h 1.3:
	* valib/vtime.h 1.3:
		Clock: is_counting() function added

2006-06-22	valex
	* valib/vtime.h 1.2:
		vtime.h: Clock class added

	* valib/sink.h 1.9:
	* valib/sink/sink_dsound.cpp 1.12:
	* valib/sink/sink_dsound.h 1.5:
	* valib/sink/sink_raw.h 1.8:
		--- Large update ---
		AudioRenderer base class removed (sink.h removed)
		DSRenderer: inherited from Sink and renamed to DSoundSink
		DSoundSink: Clock interface added
		RAWRenderer: inherited from Sink and renamed to RAWSink
		valdec: updated according to chnages in sinks
		spdifer: updated according to chnages in sinks
		ac3enc: updated according to chnages in sinks

	* valib/source/dsound_source.cpp 1.3:
	* valib/source/dsound_source.h 1.2:
		DSoundSource: added Clock interface
		DSoundSource: chunk timing added

	* valib/filters/convert.cpp 1.23:
	* valib/filters/convert.h 1.14:
		Converter: time conversion

2006-06-20	valex
	* valib/source/dsound_source.cpp 1.2:
		DSoundSource: correct output format

2006-06-13	valex
	* valib/win32/thread.cpp 1.3:
	* valib/win32/thread.h 1.4:
		Thread: ability to recreate the thread after termination

	* valib/filter_tester.h 1.14:
		FilterTester: ignore dummy chunk's flushing flag

	* test/test_filter.cpp 1.33:
		rules test: uncommenting filters that was commented in previous 
		commit...

	* lib/valib.dsp 1.18:
	* valib/source/dsound_source.cpp 1.1:
	* valib/source/dsound_source.h 1.1:
		DSoundSource class added

	* test/test_filter.cpp 1.32:
		rules test: use separate noise source for dummy chunk

	* valib/filter_graph.h 1.19:
		FilterGraph: filter_spk[] array removed (filter_spk[i] == filter[i]->get_input())
		FilterGraph: errorless rules test

2006-06-12	valex
	* valib/spk.h 1.15:
		Speakers: FORMAT_MASK macro updated (use parenthesis)

	* test/test_filter.cpp 1.31:
	* test/test_filtergraph.cpp 1.2:
	* valib/filter_graph.h 1.18:
	* valib/filters/dvd_graph.h 1.7:
		FilterGraph: format_mask in constructor (like NullFilter)

2006-06-11	valex
	* valib/filter_graph.h 1.17:
		FilterGraph: null filter at output added
		FilterGraph: placeholders instead of abstract functions

	* lib/valib.dsp 1.17:
		valib lib: include new files

	* valib/filter_tester.h 1.13:
		FilterTester: check formats after receiving dummy chunks

	* test/test.cpp 1.26:
	* test/test.dsp 1.33:
	* test/test_filter.cpp 1.30:
	* test/test_filtergraph.cpp 1.1:
		test: FilterGraph test added

	* valib/win32/thread.h 1.3:
		Thread: thread control functions made virtual
		Thread: thread state functions made const

2006-06-01	valex
	* valib/filter_graph.h 1.12:
		FilterGraph: use filter_spk[] in get_input() and get_output()
		FilterGraph: filter_spk[node_end] is now updated in add_node()
		FilterGraph: comments

	* valib/filters/dvd_graph.h 1.6:
		DVDGraph: dirrerent setup for AudioProcessor means different 
		states, so now it is 3 different states: state_proc_decode (
		decode mode), state_proc_spdif (encode mode) and 
		state_proc_stereo (spdif stareo passthrough mode).

	* valib/filter_graph.h 1.13:
		FilterGraph: added format change check in process() (according to format check in add_node())
		FilterGraph: comments added

	* valib/filter_graph.h 1.14:
		FilterGraph: get_chunk() - runtime protection

	* valib/filter_graph.h 1.15:
		FilterGraph: runtime protection of process() call

	* valib/filter_graph.h 1.11:
		FilterGraph: last filter output format is now stored in filter_spk[node_end]
		FilterGraph: allow rebuild only from process() call (this guarantees that all graph is changed in coordination)

	* valib/filter_graph.h 1.16:
		FilterGraph: add_node() - update output format at the end of 
		chain

	* test/test_dvdgraph.cpp 1.3:
		DVDGraph test: source chunk size changed to ensure that we can 
		do all transitions.

	* test/test_dvdgraph.cpp 1.4:
		DVDGraph test: SPDIF mode transitions with PCM input test added
		DVDGraph test: SPDIF mode transitions with PES input test added

	* test/test_filter.cpp 1.29:
	* test/test_null.cpp 1.2:
	* valib/filter.h 1.37:
	* valib/filters/agc.cpp 1.23:
	* valib/filters/bass_redir.cpp 1.12:
	* valib/filters/convert.cpp 1.22:
	* valib/filters/convert.h 1.13:
	* valib/filters/counter.h 1.5:
	* valib/filters/decoder.cpp 1.21:
	* valib/filters/decoder.h 1.9:
	* valib/filters/dejitter.h 1.9:
	* valib/filters/delay.cpp 1.8:
	* valib/filters/demux.cpp 1.14:
	* valib/filters/demux.h 1.8:
	* valib/filters/levels.h 1.7:
	* valib/filters/mixer.cpp 1.12:
	* valib/filters/spdifer.cpp 1.41:
	* valib/filters/spdifer.h 1.26:
	* valib/parsers/ac3/ac3_enc.cpp 1.12:
		NullFilter: specify accepted formats at constructor

2006-05-29	valex
	* test/test.dsp 1.32:
	* test/test_dvdgraph.cpp 1.2:
		DVDGRaph test: spdif mode transitions test added

2006-05-28	valex
	* valib/filter_graph.h 1.10:
		FilterGraph: include string.h because of strdup()

	* test/test_filter.cpp 1.28:
	* valib/filter_tester.h 1.12:
		FilterTester: streams counter added

	* valib/filters/dvd_graph.h 1.5:
		DVDGraph: change level according with format change

	* test/test.cpp 1.25:
	* test/test_dvdgraph.cpp 1.1:
		test: DVDGrph test added

2006-05-27	valex
	* valib/filters/proc.cpp 1.14:
	* valib/filters/proc.h 1.13:
		AudioProcessor: set_output() renamed to set_user() to emphasize 
		difference between user format and actual output format that may 
		be different (user format always partially specified because we 
		do not do sample rate conversion)

	* valib/filter_graph.h 1.9:
		FilterGraph: rebuild chain if input format of a node was changed:
		 node filter must reset anyway, but it may require custom 
		initialization. So now descendant filter can take control over 
		it ((required for correct DVDGaph work).

	* test/test_filter.cpp 1.27:
	* test/test_proc.cpp 1.6:
		filter test: use AudioProcessor::set_user()

	* valib/filters/dvd_graph.h 1.4:
		DVDGraph: do not encode stereo PCM option added (enabled by default)
		DVDGraph: spdif status added (operation mode/error reason)
		DVDGraph: set PCM16 output format by default (but do not change channels)

2006-05-26	valex
	* valib/filters/proc.cpp 1.13:
		AudioProcessor: output format was not updated

	* valib/filter_graph.h 1.8:
		FilterGraph: chain operation functions made protected

	* valib/filters/dvd_graph.h 1.3:
		DVDGraph: delete unused states

2006-05-25	valex
	* test/all_filters.h 1.4:
	* test/test.dsp 1.31:
	* valib/filter_graph.h 1.7:
	* valib/filters/dvd_graph.h 1.2:
	* valib/filters/filter_chain.cpp 1.8:
	* valib/filters/filter_chain.h 1.9:
	* valib/filters/proc.cpp 1.12:
	* valib/filters/proc.h 1.12:
		FilterGraph: in_spk and out_spk fields removed (not used)
		FilterGraph: node_end index is moved from 0 to graph_nodes
		FilterGraph: constructor and virtual destructor added
		FilterGraph: dummy chunks used
		FilterChain: new class inherited from FilterGraph (filter_graph.h file)
		FilterChain: old class files removed (filter_chain.*)
		AudioProcessor: new FilterChain class used
		AudioProcessor: partially specified format may be used for output
		tests passed (except DVDGraph)

	* test/common.cpp 1.10:
	* test/common.h 1.4:
		compare test: FORMAT_UNKNOWN is repaced with FORMAT_RAWDATA
		compare test: ignore dummy chunks

	* test/test_filter.cpp 1.26:
		filter test: FORMAT_RAWDATA is added to format change crash test

2006-05-24	valex
	* valib/auto_file.h 1.8:
		AutoFile: ignore MSVC8 depreciation warning

	* test/all_filters.h 1.3:
	* test/test_filter.cpp 1.25:
	* valib/filter_graph.h 1.6:
	* valib/filters/dvd_graph.h 1.1:
		FilterGraph and DVDGraph are separated
		rules test: AudioProcessor filter added
		rules test: use set_dummy()

	* test/test_crash.cpp 1.11:
		crash test: DVDDecoder renamed to DVDGraph

	* valib/filters/proc.cpp 1.11:
		AudioProcessor: ignore dummy chunks
		AudioProcessor: allow output format with zero sample rate

2006-05-21	valex
	* valib/filter_graph.h 1.5:
		FilterGaph::chain_text() function added

	* valib/filter.h 1.36:
		filter.h: comments

	* valib/filter_tester.h 1.11:
		FilterTester: f5 rule check is back because FORMAT_RAWDATA is 
		now explicitly used

	* test/test_filter.cpp 1.24:
		test: rules_test: DVDGraph test enabled

2006-05-20	valex
	* valib/filter_graph.h 1.4:
		FilterGraph: ignore dummy chunks

2006-05-17	valex
	* valib/filter_tester.h 1.10:
	* valib/filters/agc.cpp 1.22:
	* valib/filters/decoder.cpp 1.20:
		filters generate dummy chunks

2006-05-16	valex
	* valib/sink.h 1.7:
		AudioSink: ignore dummy chunks

	* test/test.cpp 1.24:
	* test/test_crash.cpp 1.10:
	* test/test_filter.cpp 1.23:
	* test/test_spdifer.cpp 1.18:
	* valib/filter.h 1.35:
	* valib/filter_tester.h 1.9:
	* valib/filters/bass_redir.cpp 1.11:
	* valib/filters/convert.cpp 1.21:
	* valib/filters/counter.h 1.4:
	* valib/filters/decoder.cpp 1.19:
	* valib/filters/dejitter.cpp 1.15:
	* valib/filters/delay.cpp 1.7:
	* valib/filters/demux.cpp 1.13:
	* valib/filters/spdifer.cpp 1.40:
	* valib/sink.h 1.8:
	* valib/spk.cpp 1.9:
	* valib/spk.h 1.14:
		Chunk: is_dummy() and set_dummy()
		Speakers: FORMAT_RAWDATA added
		Spdifer: use FORMAT_RAWDATA for unknown input
		filters: use Chunk::is_dummy() to determine dummy chunk
		test passed (except DVDDecoder)

2006-05-05	valex
	* doc/Format change rules.doc 1.9:
	* doc/chunk.doc 1.5:
		Doc: dummy chunks

2006-05-04	valex
	* valib/filter.h 1.34:
	* valib/filter_tester.h 1.8:
	* valib/filters/bass_redir.cpp 1.10:
	* valib/filters/convert.cpp 1.20:
	* valib/filters/counter.h 1.3:
	* valib/filters/decoder.cpp 1.18:
	* valib/filters/dejitter.cpp 1.14:
	* valib/filters/delay.cpp 1.6:
	* valib/filters/demux.cpp 1.12:
	* valib/filters/spdifer.cpp 1.39:
		dummy chunk passthrough rule implemented

	* test/test_filter.cpp 1.22:
		dummy chunk passthrough rule test

	* test/test.dev 1.2:
		GCC define is not used anymore

2006-04-29	valex
	* valib/filter.h 1.33:
		filter.h: virtual destructors added to base interfaces

	* valib/defs.h 1.18:
		defs.h: comments

	* test/test.cpp 1.23:
		test: compilation info

	* valib/mpeg_demux.cpp 1.7:
	* valib/mpeg_demux.h 1.4:
		PSParser: state_payload state removed (not used), is_audio() 
		function fixed

	* test/_clear.bat 1.3:
		delete test.layout

	* test/test_crc.cpp 1.13:
	* test/test_filter.cpp 1.21:
	* test/test_general.cpp 1.4:
	* valib/filters/proc.cpp 1.10:
	* valib/parsers/mpa/mpa_parser.cpp 1.12:
	* valib/source/noise.cpp 1.7:
	* valib/vtime.cpp 1.3:
		Style improvements:
		* constructor init order fixed
		* remove unused vars
		* init vars

	* valib/parser.h 1.12:
		parser.h: virtual destructor added to base interface

2006-04-28	valex
	* valib/defs.h 1.17:
		defs.h reorganized: compiler-dependent options, constants, type 
		definitions, ...

2006-04-19	valex
	* test/_clear.bat 1.2:
	* test/common.h 1.3:
	* test/test.bat 1.7:
	* test/test.cpp 1.22:
	* test/test.dev 1.1:
	* test/test_crc.cpp 1.12:
	* test/test_filter.cpp 1.20:
	* test/test_general.cpp 1.3:
	* test/test_proc.cpp 1.5:
	* valib/defs.h 1.16:
	* valib/filter_graph.h 1.3:
	* valib/filter_tester.h 1.7:
	* valib/syncscan.h 1.3:
	* valib/win32/winspk.cpp 1.10:
		Compiled under GCC

2006-04-18	valex
	* valib/defs.h 1.15:
	* valib/filter_graph.h 1.2:
	* valib/filters/decoder.cpp 1.17:
	* valib/filters/demux.h 1.7:
	* valib/filters/proc.h 1.11:
	* valib/filters/spdifer.h 1.25:
	* valib/parsers/ac3/ac3_bitalloc.cpp 1.2:
	* valib/parsers/ac3/ac3_enc.cpp 1.11:
	* valib/parsers/ac3/ac3_enc.h 1.4:
	* valib/parsers/ac3/ac3_parser.h 1.5:
	* valib/parsers/dts/dts_defs.h 1.2:
	* valib/source/noise.h 1.7:
	* valib/source/raw_source.h 1.5:
	* valib/source/wav_source.h 1.2:
	* valib/sync.h 1.7:
	* valib/vtime.cpp 1.2:
		Compiling under GCC

2006-04-16	valex
	* doc/RUS/DVDDecoder.doc 1.3:
		doc: DVDDecoder:   -       
		doc: DVDDecoder:       .

	* valib/filter_graph.h 1.1:
		FilterGraph class added: base for aggregate filters
		DVDGraph class added: replacement for DVDDecoder filter

	* doc/Filter.vsd 1.7:
		doc: Filter: state graph updated

	* test/all_filters.h 1.2:
	* test/test.dsp 1.30:
	* test/test_crash.cpp 1.9:
	* test/test_filter.cpp 1.19:
		test: DVDFilter filter added
		test: rules test: "filter does not pass eos-chunk" message removed

2006-04-13	valex
	* doc/RUS/ .doc 1.3:
		Doc: filter states: clear state depands only on static 
		parameters

2006-04-12	valex
	* doc/RUS/DVDDecoder.doc 1.1:
		Doc: new doc: DVDDecoder (rus)

	* doc/RUS/DVDDecoder.doc 1.2:
		Doc: DVDDecoder: update

	* doc/Filter.vsd 1.6:
		Doc: Filter: new state chage graph

2006-04-10	valex
	* doc/RUS/ .doc 1.1:
		new doc: filter states (rus)

	* test/test_filter.cpp 1.18:
		test: filter test: all-at-once processing test

	* valib/filters/demux.cpp 1.11:
		Demux: passes the filter test

	* doc/RUS/ .doc 1.2:
		Doc: filter states (rus) updated

2006-04-04	valex
	* valib/filter.h 1.32:
	* valib/filter_tester.h 1.6:
	* valib/filters/decoder.cpp 1.16:
	* valib/filters/decoder.h 1.8:
	* valib/filters/demux.cpp 1.10:
	* valib/filters/demux.h 1.6:
	* valib/filters/dvd_decoder.cpp 1.11:
	* valib/filters/dvd_decoder.h 1.7:
	* valib/filters/proc.cpp 1.9:
	* valib/filters/proc.h 1.10:
	* valib/filters/spdifer.cpp 1.38:
	* valib/filters/spdifer.h 1.24:
		Filter: is_ofdd() function added

	* valib/log.cpp 1.6:
	* valib/log.h 1.5:
		Log: err_close() function added (report an error and close 
		current log)

	* test/test_filter.cpp 1.17:
		filter test: determine stream change position

2006-04-03	valex
	* test/test_crc.cpp 1.11:
	* test/test_demux.cpp 1.6:
	* test/test_filter.cpp 1.16:
	* test/test_spdifer.cpp 1.17:
		test: new sample names

2006-04-02	valex
	* doc/Streams and flushing.doc 1.2:
		Doc: streams doc updated

	* valib/filters/decoder.cpp 1.15:
	* valib/filters/decoder.h 1.7:
		AudioDecoder: passes format change test

	* test/test_crc.cpp 1.10:
		test: crc test: get rid of compilation warning

	* valib/parsers/mpa/mpa_parser.cpp 1.11:
		MPAParser: to calc crc correctly we need exact stream position

	* test/test.dsp 1.29:
		minor changes

	* test/test_filter.cpp 1.15:
		test: flushing test updated: ofdd test added

	* valib/filter_tester.h 1.5:
		filter_tester: stream finish test

	* valib/sink/sink_dsound.cpp 1.11:
		DSoundSink: flushing fixed again...

2006-03-29	valex
	* doc/Streams and flushing.doc 1.1:
		Doc: Streams and flushing - initial version (faaaar from 
		complete)

2006-03-27	valex
	* test/speed.log 1.3:
	* valib/parser.h 1.11:
		--- END OF CRC ---

	* codegen/_readme.txt 1.3:
	* valib/syncscan.h 1.2:
		comments

2006-03-26	valex
	* valib/mpeg_demux.cpp 1.6:
	* valib/mpeg_demux.h 1.3:
		PSParser: use SyncScan (much faster on noise)

2006-03-25	valex
	* test/test_spdifer.cpp 1.16:
		minor changes

	* test/test_crc.cpp 1.9:
		crc test: added math test for byte- and bit-streams

	* test/test_crc.cpp 1.8:
		test: crc test: added bit- and byte-stream test (not working)

	* valib/parsers/dts/dts_parser.cpp 1.6:
		DTSParser: CRC status reported

	* valib/crc.cpp 1.5:
	* valib/crc.h 1.6:
		CRC: add_bits(0) works correctly
		CRC: bitstream functions writed

2006-03-24	valex
	* test/test_crc.cpp 1.7:
		test: all parsers included to test

	* valib/parsers/mpa/mpa_parser.cpp 1.10:
		MPAParser: Layer I CRC updated
		MPAParser: Layer II CRC bit counting updated

	* valib/crc.cpp 1.4:
	* valib/crc.h 1.5:
		CRC: hardly updated and tested. Bit stream support added.

	* test/speed.log 1.2:
		Speed log updated

	* test/test.dsp 1.28:
	* valib/bitstream.h 1.8:
		minor changes

	* valib/parsers/mpa/mpa_parser.cpp 1.9:
	* valib/parsers/mpa/mpa_parser.h 1.5:
		MPAParser: CRC check updated: now using crc16 class so both 
		stream types (big and low endian) are supported

2006-03-23	valex
	* test/test.cpp 1.21:
		*test: get rid of compilation warning

	* valib/parser.h 1.10:
		*BaseParser: comments

	* test/test_crc.cpp 1.5:
		*test: error distance in crc test...

	* test/.cvsignore 1.1:
	* test/_build.bat 1.1:
	* test/test.bat 1.6:
	* test/test.dsp 1.27:
	* test/test_crc.cpp 1.6:
	* test/test_demux.cpp 1.5:
	* test/test_spdifer.cpp 1.15:
	* test/test_syncer.cpp 1.9:
		*test: speed test updated to use time limit instead of fixed number of runs
		*test: minor changes

	* test/test_crc.cpp 1.4:
		*test: crc test hardly updated...

	* valib/filters/agc.cpp 1.21:
		*AGC: compiled with VC7

2006-03-22	valex
	* lib/valib.dsp 1.16:
	* test/test.dsp 1.26:
		set PPro code generation (faster)

	* lib/valib.dsp 1.15:
	* valib/crc.cpp 1.1:
		+CRC class added

	* test/test_general.cpp 1.2:
		*test: general test updated: no grouping (more clear output)...

	* test/speed.bat 1.1:
	* test/speed.log 1.1:
	* test/speed.pl 1.1:
	* test/test.cpp 1.20:
		+test: speed log added

	* valib/log.cpp 1.4:
	* valib/log.h 1.3:
		Log: proper errors was renamed to expected errors

	* valib/parsers/ac3/ac3_parser.cpp 1.10:
		comments updated

	* test/test.cpp 1.19:
	* test/test.dsp 1.25:
	* test/test_crc.cpp 1.1:
		+test: crc test added

	* valib/parser.cpp 1.6:
	* valib/parser.h 1.9:
		+BaseParser: CRC check added

	* test/test_crc.cpp 1.2:
	* valib/crc.cpp 1.2:
	* valib/crc.h 1.3:
		CRC: 8/16/32bit big/low endian support

	* test/test_crc.cpp 1.3:
		*test: crc test updated: parser test added

	* valib/parsers/ac3/ac3_parser.cpp 1.11:
	* valib/parsers/ac3/ac3_parser.h 1.4:
		*AC3Parser: CRC check updated: now using crc16 class so both 
		stream types (big and low endian) are supported

	* valib/crc.cpp 1.3:
	* valib/crc.h 1.4:
		+CRC: crc16 const class added
		*CRC: crc calc functions made const

	* valib/bitstream.h 1.7:
	* valib/crc.h 1.2:
	* valib/defs.h 1.14:
		+CRC class added
		*BITSTREAM_XX constants moved to defs.h

	* valib/parsers/mpa/mpa_parser.cpp 1.8:
		comments fixed

	* valib/log.cpp 1.5:
	* valib/log.h 1.4:
		+Log: timing functions added (get_time() and get_total_time())

2006-03-19	valex
	* test/test.bat 1.5:
	* test/test.cpp 1.18:
	* test/test.dsp 1.24:
	* test/test_float.cpp 1.2:
	* test/test_general.cpp 1.1:
		+test: general test added
		-test: float test removed (replaced by general test)

2006-03-14	Valex
	* .cvsignore 1.2:
		.cvsignore removed

	* .cvsignore 1.1:
		.cvsignore added

	* lib/valib.dsp 1.14:
	* test/test.dsp 1.23:
	* test/test_syncer.cpp 1.8:
		syncscan moved up from helpers folder

2006-03-14	valex
	* test/liba52/a52.h 1.1:
	* test/liba52/a52_bitstream.c 1.1:
	* test/liba52/a52_bitstream.h 1.1:
	* test/liba52/a52_internal.h 1.1:
	* test/liba52/a52_parser.cpp 1.1:
	* test/liba52/a52_parser.h 1.1:
	* test/liba52/bit_allocate.c 1.1:
	* test/liba52/config.h 1.1:
	* test/liba52/downmix.c 1.1:
	* test/liba52/imdct.c 1.1:
	* test/liba52/inttypes.h 1.1:
	* test/liba52/parse.c 1.1:
	* test/liba52/readme.txt 1.1:
	* test/liba52/tables.h 1.1:
	* test/test.dsp 1.22:
		test: liba52 moved to test folder

	* valib/filters/spdifer.h 1.23:
	* valib/parser.h 1.8:
	* valib/syncscan.cpp 1.1:
	* valib/syncscan.h 1.1:
		syncscan moved up from helpers folder

	* test/test_demux.cpp 1.4:
	* test/test_spdifer.cpp 1.14:
		test: comments

2006-03-13	valex
	* valib/defs.h 1.13:
		defs.h: byteorder conversion functions to convert between native int format and data format
		defs.h: comments

	* doc/Buffering.doc 1.2:
	* doc/Format change rules.doc 1.8:
	* doc/Interfaces.doc 1.3:
	* doc/chunk.doc 1.4:
		Doc: [f1] rule updated: report spk_unknown after flushing
		Doc: minor changes

	* codegen/linear2pcm.cpp 1.5:
	* codegen/linear2pcm.pl 1.5:
	* codegen/pcm2linear.cpp 1.7:
	* codegen/pcm2linear.pl 1.6:
	* test/test_filter.cpp 1.13:
	* test/test_proc.cpp 1.3:
	* test/test_syncer.cpp 1.6:
	* valib/bitstream.h 1.6:
	* valib/filters/convert.cpp 1.19:
	* valib/filters/convert.h 1.12:
	* valib/filters/proc.cpp 1.8:
	* valib/filters/spdifer.cpp 1.37:
	* valib/filters/spdifer.h 1.22:
	* valib/mpeg_demux.cpp 1.5:
	* valib/parsers/ac3/ac3_parser.cpp 1.9:
	* valib/parsers/dts/dts_parser.cpp 1.5:
	* valib/parsers/file_parser.cpp 1.6:
	* valib/parsers/mpa/mpa_parser.cpp 1.7:
	* valib/parsers/todo.txt 1.5:
	* valib/sink/sink_dshow.cpp 1.19:
	* valib/sink/sink_dsound.cpp 1.10:
	* valib/source/noise.h 1.6:
	* valib/spk.cpp 1.8:
	* valib/spk.h 1.13:
		-- BIG UPDATE --
		Big and low endians was exchanged
		Spdifer: uninitialized chunks generation fixed
		Test passed
		Applications recompiled and considered working

	* test/test_crash.cpp 1.8:
	* test/test_demux.cpp 1.3:
	* test/test_empty.cpp 1.4:
	* test/test_filter.cpp 1.14:
	* test/test_proc.cpp 1.4:
	* test/test_spdifer.cpp 1.13:
	* test/test_syncer.cpp 1.7:
		test: comments

	* valib/sink/sink_dsound.cpp 1.9:
		DSoundSink: hang on flushing fixed

2006-03-12	valex
	* valib/filters/spdifer.cpp 1.36:
		Spdifer: added reset() to set_input() to comply format change 
		rules

	* valib/defs.h 1.12:
		defs.h: added comments and byteorder conversion functions

2006-03-08	valex
	* test/test_spdifer.cpp 1.12:
	* valib/filters/spdifer.cpp 1.35:
	* valib/filters/spdifer.h 1.21:
		Spdifer: sync only with formats specified at input

	* valib/sink/sink_dshow.cpp 1.18:
		DShowSink: input format change altered (use is_compatible() and 
		follow format change rules)

	* valib/source/wav_source.cpp 1.1:
	* valib/source/wav_source.h 1.1:
		WAVSource: WAV source class added (not tested)

	* valib/win32/winspk.cpp 1.9:
	* valib/win32/winspk.h 1.3:
		win32\winspk: is_compatible() function added

	* test/test_spdifer.cpp 1.11:
	* valib/filters/_readme.txt 1.7:
		minor changes

2006-02-25	valex
	* test/test_demux.cpp 1.2:
	* test/test_spdifer.cpp 1.9:
		minor changes

	* test/test_spdifer.cpp 1.10:
		Spdifer test: high bitrate DTS passthrough test added

	* valib/filters/spdifer.cpp 1.34:
		Spdifer: use SyncScan to count syncpoints (20 times faster on 
		noise!)

2006-02-23	valex
	* test/test_syncer.cpp 1.5:
	* valib/filters/bass_redir.cpp 1.9:
	* valib/filters/spdifer.cpp 1.31:
	* valib/parsers/dts/dts_parser.cpp 1.4:
		missing int specifiers fixed

	* test/test_filter.cpp 1.12:
		rules test: full processing cycle test added
		rules test: AudioDecoder of all formats added (MPA test failed!)

	* valib/filters/decoder.cpp 1.14:
		AudioDecoder: do not drop flushing on frame decode error

	* valib/filters/spdifer.cpp 1.32:
	* valib/filters/spdifer.h 1.19:
		Spdifer: mpa_sync() and mpa_syncinfo() modified

	* valib/parser.cpp 1.5:
		Parser: fool protection (do not load frame if it does not fit 
		into the buffer)

	* valib/bitstream.cpp 1.3:
		bitstream: missing int specifier fixed

	* test/test.bat 1.4:
		test: put log back to test floder

	* test/test.dsp 1.21:
		test: Demux test added

	* valib/parsers/mpa/mpa_parser.cpp 1.6:
	* valib/parsers/mpa/mpa_parser.h 1.4:
		MPAParser: inherited from BaseParser
		MPAParser: big endian support (for SPDIF files)

	* valib/filters/spdifer.cpp 1.33:
	* valib/filters/spdifer.h 1.20:
	* valib/parsers/ac3/ac3_parser.cpp 1.8:
		minor changes

	* codegen/linear2pcm.cpp 1.4:
	* codegen/linear2pcm.pl 1.4:
	* codegen/migen_io.pl 1.4:
	* codegen/migen_ip.pl 1.4:
	* codegen/mixer_io.cpp 1.4:
	* codegen/mixer_ip.cpp 1.4:
	* codegen/pcm2linear.cpp 1.6:
	* codegen/pcm2linear.pl 1.5:
	* valib/filters/convert.cpp 1.18:
	* valib/filters/mixer.cpp 1.11:
		codegen: & added for function address tables

2006-02-22	valex
	* test/test_syncer.cpp 1.4:
	* valib/filters/spdifer.cpp 1.30:
	* valib/parsers/ac3/ac3_parser.cpp 1.7:
	* valib/parsers/dts/dts_parser.cpp 1.3:
		SyncScan: highly commented
		SyncScan: interface finished
		SyncScan test: much updated
		Spdifer, AC3Parser, DTSParser: interface changes applied

	* test/test.cpp 1.17:
	* test/test_demux.cpp 1.1:
	* test/test_spdifer.cpp 1.8:
	* valib/filter_tester.h 1.4:
		Spdifer test: converted to class
		Spdifer test: noise and file speed tests added
		Demux test is extracted from Spdifer test and converted to class
		Demux test: noise and file speed tests added

2006-02-21	valex
	* valib/filters/spdifer.cpp 1.27:
	* valib/filters/spdifer.h 1.16:
		Spdifer: mpa_syncinfo() buf fixed

	* valib/filters/decoder.cpp 1.13:
	* valib/filters/decoder.h 1.6:
	* valib/parser.cpp 1.4:
	* valib/parser.h 1.7:
	* valib/parsers/ac3/ac3_parser.cpp 1.6:
	* valib/parsers/ac3/ac3_parser.h 1.3:
	* valib/parsers/dts/dts_parser.cpp 1.2:
	* valib/parsers/dts/dts_parser.h 1.2:
		Parsers
		======
		Parser: interface changed: get_spk() returns format of compressed stream
		BaseBarser: interface changed
		BaseParser: SynScan used
		AC3Parser: chnged to use new BaseParser
		DTSParser: chnged to use new BaseParser
		Decoder: Parser interface changes corrected
		Decoder: rules test passed
		valdec: Parser interface changes corrected

	* lib/valib.dsp 1.13:
		valib: SyncScan added

	* valib/filters/spdifer.cpp 1.28:
	* valib/filters/spdifer.h 1.17:
		Spdifer: last change reverted (it was wrong)...

	* valib/filters/spdifer.cpp 1.29:
	* valib/filters/spdifer.h 1.18:
		Spdifer: drop_frame() removed (not used anymore)

	* test/test_syncer.cpp 1.3:
		syncer test: added number of syncpoints check

2006-02-20	valex
	* valib/filters/spdifer.cpp 1.26:
	* valib/filters/spdifer.h 1.15:
		Spdifer: use SyncScan to find syncpoints

	* test/test_syncer.cpp 1.2:
		SyncScan: use of external sync buffer added

2006-02-19	valex
	* valib/defs.h 1.11:
		defs.h: swab_u16 macro bug fixed

	* test/test.cpp 1.16:
	* test/test.dsp 1.20:
	* test/test_syncer.cpp 1.1:
		test: SynScan test added
		test: some cleanup

	* valib/filters/spdifer.cpp 1.25:
	* valib/filters/spdifer.h 1.14:
		Spdifer: get_sync() function added to report current stream 
		format

	* valib/defs.h 1.10:
		defs: use macros instead of inlines for debug version (faster)

	* valib/filters/spdifer.cpp 1.24:
	* valib/filters/spdifer.h 1.13:
		Spdifer: working version back

	* valib/filters/spdifer.cpp 1.23:
	* valib/filters/spdifer.h 1.12:
		SyncScan: new class, used to scan for mpa/ac3/dts syncpoints
		new catalog valib\helpers

2006-02-12	valex
	* valib/filters/spdifer.cpp 1.22:
	* valib/filters/spdifer.h 1.11:
		Spdifer: MPA big endian sync added

	* test/common.cpp 1.9:
		test: compare() - fixed bug with stream lengths comparison

2006-02-11	valex
	* todo.txt 1.7:
	* valib/filters/_readme.txt 1.6:
	* valib/filters/todo.txt 1.5:
	* valib/todo.txt 1.6:
		todo updates

	* test/common.cpp 1.8:
		test: compare() - fixed problem with stream format change

	* valib/filters/spdifer.cpp 1.21:
		Spdifer: frame drop fixed (much faster)

	* valib/filters/spdifer.cpp 1.20:
	* valib/filters/spdifer.h 1.10:
		Spdifer: passes rules test

	* test/test_spdifer.cpp 1.7:
		Spdifer test: spdif->spdif test added

	* _clear.bat 1.5:
		minor changes

	* test/common.cpp 1.7:
	* test/test.bat 1.3:
	* test/test_crash.cpp 1.7:
	* test/test_filter.cpp 1.11:
	* test/test_spdifer.cpp 1.6:
		test: minor changes

2006-02-03	valex
	* test/test.cpp 1.15:
	* test/test.dsp 1.19:
	* test/test_crash.cpp 1.6:
	* test/test_filter.cpp 1.10:
	* test/test_source.h 1.2:
	* test/test_spdifer.cpp 1.5:
		filter test: large and small buffers test

	* valib/filters/demux.cpp 1.9:
		Demux: data processing bug fixed

	* test/common.cpp 1.6:
	* test/test_crash.cpp 1.5:
	* test/test_proc.cpp 1.2:
		test: minor changes

2006-02-02	valex
	* test/test_crash.cpp 1.4:
		crash test: filter may not produce output so last chunk is not 
		eos...

	* valib/filters/demux.cpp 1.8:
	* valib/filters/demux.h 1.5:
	* valib/mpeg_demux.cpp 1.4:
	* valib/mpeg_demux.h 1.2:
	* valib/parsers/file_parser.cpp 1.5:
	* valib/parsers/file_parser.h 1.6:
		New MPEG demuxer

	* test/test_filter.cpp 1.9:
		filter test: minor changes

	* test/all_filters.h 1.1:
		test: new all_filters.h

	* valib/auto_file.h 1.7:
	* valib/sink/sink_raw.h 1.7:
	* valib/source/raw_source.cpp 1.4:
	* valib/source/raw_source.h 1.4:
		AutoFile: added feature to work with files already opened (
		required to work with stdin and stdout)

2006-01-29	valex
	* test/test.dsp 1.18:
	* test/test_filter.cpp 1.8:
		filter test: post-cycle added; new format change scenario added

	* test/test.dsp 1.17:
	* test/test_filter.cpp 1.5:
		filter test: flushing test added

	* doc/Format change rules.doc 1.7:
		Doc: Format change rules: notes section added

	* valib/filters/convert.cpp 1.17:
		Converter::find_conversion(): buf fixed: incorrect conversion 
		returned for raw->raw conversion

	* valib/filters/mixer.cpp 1.10:
		Mixer: eos passthrough in buffering mode

	* valib/log.cpp 1.3:
	* valib/log.h 1.2:
		Log::close_group() - proper_errors parameter added (default to 0)
		

	* valib/filter_tester.h 1.3:
	* valib/filters/counter.h 1.2:
		minor changes

	* valib/filter_tester.h 1.2:
		FilterTester: flushing test added

	* test/test_filter.cpp 1.6:
		filter test: flushing scenarios added. filters to test added

	* test/test_filter.cpp 1.7:
		filter test: code cleanup

2006-01-28	valex
	* doc/Format change rules.doc 1.6:
		Doc: [k2] format change rule updated

	* valib/filter_tester.h 1.1:
		FilterTester class added

	* doc/Buffering.doc 1.1:
		Doc: Buffering doc added

	* valib/filters/demux.cpp 1.7:
		Demux: [k2] rule violation fixed

	* test/test.dsp 1.16:
	* test/test_filter.cpp 1.4:
	* test/test_source.h 1.1:
		Test subproject: format change test hardly updated

	* valib/filters/_readme.txt 1.5:
		minor fixes...

	* valib/filter.h 1.31:
		NullFilter: set_input() always resets filter
		NullFilter: use get_output() for passthrough

	* doc/Format change rules.doc 1.5:
		Doc: [s3] format change rule added
		Doc: Buffering doc added

2006-01-27	valex
	* valib/source/raw_source.h 1.3:
		RAWSource: is_empty() fixed

	* valib/defs.h 1.9:
		defs.h: deafult constructor for int24_t

2006-01-25	valex
	* doc/Format change rules.doc 1.4:
		Rule [f6] updated

	* test/test.cpp 1.14:
	* test/test.dsp 1.15:
	* test/test_filter.cpp 1.3:
	* valib/filter.h 1.30:
	* valib/filters/proc.cpp 1.7:
		First version of filter test run and changes made

	* doc/Format change rules.doc 1.3:
	* doc/Interfaces.doc 1.2:
	* doc/chunk.doc 1.3:
	* valib/filter.h 1.29:
		Documenting...

2006-01-18	valex
	* valib/filter.h 1.28:
		new format change rule, examples of format change rules

	* valib/spk.h 1.12:
		new is_xxxx functions

	* doc/Format change rules.doc 1.2:
	* doc/chunk.doc 1.2:
		Doc changes: new format change rule, examples of format change 
		rules, chunk class

2006-01-17	valex
	* valib/filter.h 1.27:
		Chunk: constructor added

2006-01-14	valex
	* test/test_filter.cpp 1.2:
		Lifetime comments...

	* doc/Interfaces.doc 1.1:
		Processing interfaces doc added

2006-01-13	valex
	* valib/filter.h 1.26:
		Changes in rules

	* doc/chunk.doc 1.1:
		Chunk doc added

	* doc/Format change rules.doc 1.1:
		Format changes rules doc added

	* test/test.dsp 1.14:
	* test/test_filter.cpp 1.1:
		filter test added to check format switch rules

2006-01-12	valex
	* valib/filter.h 1.25:
		Changes in rules

2006-01-09	valex
	* test/test.cpp 1.13:
	* test/test_empty.cpp 1.3:
	* valib/filter.h 1.24:
	* valib/filters/agc.cpp 1.20:
	* valib/filters/convert.cpp 1.16:
	* valib/filters/decoder.cpp 1.12:
	* valib/filters/dejitter.cpp 1.13:
	* valib/filters/dvd_decoder.cpp 1.10:
	* valib/filters/levels.cpp 1.9:
	* valib/filters/mixer.cpp 1.9:
	* valib/filters/spdifer.cpp 1.19:
	* valib/parsers/ac3/ac3_enc.cpp 1.10:
	* valib/sink/sink_dshow.cpp 1.17:
	* valib/source/noise.cpp 1.6:
	* valib/source/raw_source.cpp 1.3:
		Chunk::set() overloaded functions are renamed to set_linear(), 
		set_rawdata(), set_empty() and set().

2006-01-07	valex
	* valib/data.h 1.13:
		data.h cleanup

	* valib/data.h 1.11:
	* valib/filter.h 1.22:
	* valib/filters/agc.cpp 1.19:
	* valib/filters/agc.h 1.10:
	* valib/filters/convert.h 1.11:
	* valib/filters/dejitter.cpp 1.12:
	* valib/filters/delay.h 1.5:
	* valib/filters/demux.cpp 1.6:
	* valib/filters/filter_chain.h 1.8:
	* valib/filters/levels.h 1.6:
	* valib/filters/mixer.cpp 1.8:
	* valib/filters/mixer.h 1.5:
	* valib/filters/spdifer.h 1.9:
	* valib/parsers/ac3/ac3_enc.h 1.3:
	* valib/parsers/mpa/mpa_synth.cpp 1.2:
	* valib/source/noise.h 1.5:
	* valib/spk.cpp 1.7:
	* valib/spk.h 1.10:
		Move samples_t from data.h to spk.h to clear file dependencies

	* valib/filter.h 1.21:
		comments (rules)

	* valib/data.h 1.12:
	* valib/filter.h 1.23:
	* valib/filters/convert.cpp 1.15:
	* valib/spk.h 1.11:
		samples_t::set_null() renamed to samples_t::zero()

2005-12-31	valex
	* test/common.cpp 1.5:
	* test/test_spdifer.cpp 1.4:
	* valib/filter.h 1.20:
	* valib/filters/bass_redir.cpp 1.8:
	* valib/filters/bass_redir.h 1.4:
	* valib/filters/convert.cpp 1.14:
	* valib/filters/convert.h 1.10:
	* valib/filters/decoder.cpp 1.11:
	* valib/filters/mixer.cpp 1.7:
	* valib/filters/proc.cpp 1.6:
	* valib/filters/spdifer.cpp 1.18:
	* valib/mpeg_demux.cpp 1.3:
	* valib/sink.h 1.6:
	* valib/source/noise.cpp 1.5:
	* valib/source/noise.h 1.4:
	* valib/source/raw_source.cpp 1.2:
	* valib/spk.cpp 1.6:
	* valib/spk.h 1.9:
		Filter default set to spk_unknown
		def_spk and unk_spk constants removed

2005-12-27	valex
	* valib/mpeg_demux.cpp 1.2:
		comment

	* lib/valib.dsp 1.12:
		RNG class included into library

	* test/common.cpp 1.4:
	* test/test_crash.cpp 1.3:
	* test/test_empty.cpp 1.2:
	* valib/filter.h 1.18:
	* valib/filters/decoder.cpp 1.10:
	* valib/filters/dejitter.cpp 1.11:
	* valib/filters/dvd_decoder.cpp 1.9:
	* valib/filters/proc.cpp 1.5:
	* valib/sink.h 1.5:
	* valib/sink/sink_dshow.cpp 1.16:
	* valib/sink/sink_dsound.cpp 1.8:
	* valib/sink/sink_raw.h 1.6:
	* valib/sync.h 1.6:
		* filter.h - much of comments
		* Chunk is converted to plain structure and much of unnessesary stuff removed from it. It is much more clear now...
		* Filter::drop() function removed (we should always know what kind of data to drop)

	* valib/filter.h 1.19:
		Input/output format change rules

2005-12-26	valex
	* doc/Filter.vsd 1.5:
	* doc/Hierarchy.vsd 1.2:
	* lib/valib.dsp 1.11:
	* valib/filters/_readme.txt 1.4:
	* valib/spk.h 1.8:
		small changes

2005-12-03	valex
	* valib/filters/_readme.txt 1.3:
		Summary of filters added

2005-09-17	valex
	* valib/filters/spdifer.cpp 1.17:
		Buffer size reviewed and updated.
		Comments updated.
		spdif_header_t::set() function added.
		spdif_pause structure added

	* valib/filters/demux.cpp 1.5:
	* valib/filters/demux.h 1.4:
	* valib/filters/spdifer.cpp 1.16:
	* valib/filters/spdifer.h 1.8:
	* valib/parsers/ac3/ac3_parser.cpp 1.5:
		comments

2005-05-04	valex2
	* valib/filters/spdifer.cpp 1.14:
	* valib/filters/spdifer.h 1.6:
		implemented passthrough mode
		'use spdif header' switch

	* valib/sink/sink_raw.h 1.5:
		Correct error reporting

	* valib/win32/winspk.cpp 1.8:
		use KSADATAFORMAT_DOLBY_AC3_SPDIF defined explicitly

	* valib/filters/levels.cpp 1.8:
	* valib/filters/levels.h 1.5:
	* valib/filters/proc.h 1.9:
		per-channel histogram

	* valib/filters/spdifer.cpp 1.15:
	* valib/filters/spdifer.h 1.7:
		use of size_t
		frame_data corrected

	* test/test.cpp 1.12:
	* test/test.dsp 1.13:
	* valib/sink/sink_dshow.cpp 1.14:
		regular

	* valib/defs.h 1.8:
		obsolete spdif constants removed

	* valib/auto_file.h 1.6:
		use size_t for read()/write()

2005-05-03	valex2
	* valib/win32/winspk.cpp 1.7:
		WAVEFORMATEXTENSIBLE to FORMAT_SPDIF conversion added

	* valib/filter.h 1.17:
		samples_t structure is at <data.h>

	* valib/filters/spdifer.cpp 1.13:
	* valib/filters/spdifer.h 1.5:
		reliable syncronization added (todo: add passthrough mode)

2005-04-28	valex2
	* test/test_spdifer.cpp 1.3:
		incorrect filename

2005-04-27	valex2
	* valib/filters/delay.cpp 1.5:
	* valib/filters/delay.h 1.4:
		Fixed: negative delays lead to crash

	* valib/win32/winspk.cpp 1.6:
		SPDIF extensible format fixed

	* valib/data.h 1.10:
	* valib/filter.h 1.16:
		Comments

	* valib/win32/winspk.cpp 1.5:
		regular

	* valib/parsers/file_parser.h 1.5:
		Better default stats

	* valib/sink/sink_dshow.cpp 1.13:
		extensible format is back again

2005-04-26	valex2
	* valib/sink/sink_dshow.cpp 1.11:
	* valib/sink/sink_dshow.h 1.3:
		New config change algorithm

	* valib/filters/dvd_decoder.h 1.6:
		Unused field

	* valib/filters/bass_redir.cpp 1.7:
		LFE channel level with bass redir enabled was too low. Fixed

	* valib/sink/sink_dshow.cpp 1.12:
	* valib/sink/sink_dshow.h 1.4:
		Ability to report delivery error code

2005-04-22	valex2
	* valib/parsers/ac3/ac3_enc.cpp 1.9:
		Allow Dolby Surround encode

	* valib/sink/sink_dshow.cpp 1.10:
		mt2spk(): DVD LPCM audio support

2005-04-19	valex2
	* test/test.dsp 1.12:
		Added new modules

	* valib/sink/sink_dshow.cpp 1.9:
		Test SPDIF resync

2005-04-12	valex2
	* valib/filters/agc.cpp 1.18:
		attack parameter init

2005-04-08	valex2
	* valib/source/noise.cpp 1.4:
	* valib/source/noise.h 1.3:
		Use RNG class

	* valib/rng.cpp 1.1:
	* valib/rng.h 1.1:
		RNG (new) - random numbers generator

	* valib/filters/proc.h 1.8:
		Comment fixed

2005-04-05	valex2
	* valib/filters/agc.cpp 1.17:
	* valib/filters/agc.h 1.9:
		attack parameter added
		release_factor calculation fixed

	* valib/filters/proc.h 1.7:
		attack parameter added

2005-03-16	valex2
	* valib/spk.cpp 1.5:
		Incorrect stereo_spk constant fixed

	* valib/parsers/mpa/mpa_parser.cpp 1.5:
		Typo fixed

	* valib/todo.txt 1.5:
		regular

2005-02-01	valex
	* valib/sink/sink_dshow.cpp 1.8:
		regular

2005-01-31	valex
	* test/test_spdifer.cpp 1.2:
	* valib/sink/sink_dshow.cpp 1.7:
		Regular

	* valib/filters/convert.cpp 1.13:
		Reorder in RAW->Linear conversion

2005-01-28	valex
	* valib/filters/dvd_decoder.cpp 1.8:
		regular

2005-01-26	valex
	* test/common.cpp 1.3:
	* test/test.cpp 1.11:
	* test/test.dsp 1.11:
	* test/test_spdifer.cpp 1.1:
	* valib/filters/dvd_decoder.cpp 1.7:
	* valib/filters/spdifer.cpp 1.12:
		regular

2005-01-17	valex
	* codegen/linear2pcm.cpp 1.3:
	* codegen/linear2pcm.pl 1.3:
	* codegen/linear2pcm.template 1.2:
	* codegen/pcm2linear.cpp 1.5:
	* codegen/pcm2linear.pl 1.4:
	* codegen/pcm2linear.template 1.4:
	* test/test_crash.cpp 1.2:
	* valib/bitstream.h 1.5:
	* valib/filters/convert.cpp 1.12:
	* valib/filters/convert.h 1.9:
		Converter updated

2005-01-11	valex
	* test/test.cpp 1.10:
	* test/test.dsp 1.10:
	* test/test_crash.cpp 1.1:
	* test/test_empty.cpp 1.1:
	* test/test_float.cpp 1.1:
	* test/test_null.cpp 1.1:
	* test/test_proc.cpp 1.1:
	* test/tests/test_pes_demux.cpp 1.2:
		Much rewrited

	* valib/filters/decoder.cpp 1.9:
	* valib/filters/dvd_decoder.cpp 1.6:
	* valib/filters/dvd_decoder.h 1.5:
	* valib/filters/spdifer.cpp 1.11:
		DVDDecoder fixed

2004-12-20	valex
	* valib/source/noise.cpp 1.3:
		is_empty() fixed

	* valib/log.cpp 1.2:
		Do not write current processing status to file

2004-12-16	valex
	* valib/filters/dejitter.cpp 1.10:
	* valib/filters/dejitter.h 1.8:
		Compensate not output time difference but input time difference!

2004-12-14	valex
	* _clear.bat 1.4:
	* lib/valib.dsp 1.10:
	* test/common.cpp 1.2:
	* test/common.h 1.2:
	* test/test.cpp 1.9:
	* test/tests/test_spdif_pass.cpp 1.6:
	* test/tests/test_time_pass.cpp 1.3:
	* todo.txt 1.6:
	* todo_big.txt 1.5:
	* valib/filters/dejitter.h 1.7:
	* valib/filters/spdifer.cpp 1.10:
	* valib/filters/todo.txt 1.4:
	* valib/todo.txt 1.4:
		Regular

2004-12-09	valex
	* valib/filters/counter.h 1.1:
	* valib/filters/decoder.h 1.5:
	* valib/filters/filter_chain.cpp 1.7:
		regular

	* valib/filters/demux.cpp 1.4:
	* valib/filters/demux.h 1.3:
	* valib/mpeg_demux.cpp 1.1:
	* valib/mpeg_demux.h 1.1:
	* valib/parsers/file_parser.h 1.4:
	* valib/pes_demux.cpp 1.3:
	* valib/pes_demux.h 1.2:
		PESDemux renamed to MPEGDemux.
		Fixed bug in Demux filter

	* valib/parser.cpp 1.3:
		Bug with frame loading fixed

2004-12-03	valex
	* valib/filters/bass_redir.cpp 1.6:
		Subwoofer gain bug fixed

	* valib/filters/mixer.cpp 1.6:
		Bug with upmix fixed

2004-12-02	valex
	* codegen/linear2pcm.cpp 1.2:
	* codegen/linear2pcm.pl 1.2:
	* codegen/pcm2linear.cpp 1.4:
	* codegen/pcm2linear.pl 1.3:
	* valib/filters/convert.cpp 1.11:
		Convertor bugfixes. Both low- and big-endian formats works 
		now...

	* valib/bitstream.h 1.4:
	* valib/defs.h 1.7:
	* valib/filters/spdifer.cpp 1.9:
	* valib/filters/spdifer.h 1.4:
	* valib/parsers/mpa/mpa_parser.cpp 1.4:
	* valib/pes_demux.cpp 1.2:
		swab functions changed

	* test/test.cpp 1.7:
	* test/utils.cpp 1.1:
	* test/utils.h 1.1:
	* valib/auto_file.h 1.5:
	* valib/filters/filter_chain.h 1.7:
	* valib/source/raw_source.cpp 1.1:
	* valib/source/raw_source.h 1.1:
	* valib/source/raw_source.h 1.2:
		regular

	* lib/valib.dsp 1.9:
	* test/common.cpp 1.1:
	* test/common.h 1.1:
	* test/log.h 1.4:
	* test/test.cpp 1.8:
	* test/test.dsp 1.9:
	* test/tests/test_ac3_enc.cpp 1.6:
	* test/tests/test_buffer.cpp 1.4:
	* test/tests/test_filters.cpp 1.6:
	* test/tests/test_float.cpp 1.5:
	* test/tests/test_pcm_pass.cpp 1.8:
	* test/tests/test_spdif_pass.cpp 1.5:
	* test/utils.cpp 1.2:
	* test/utils.h 1.2:
	* valib/log.cpp 1.1:
	* valib/log.h 1.1:
		New Log class

	* test/tests/test_pcm_pass.cpp 1.7:
		Bugfix and old test removed.

2004-12-01	valex
	* valib/filters/filter_chain.cpp 1.6:
	* valib/source/noise.cpp 1.2:
	* valib/source/noise.h 1.2:
	* valib/spk.cpp 1.4:
		Bugfixes

	* valib/filters/convert.h 1.8:
		Partial sample buffer size fixed

	* lib/valib.dsp 1.8:
	* test/test.cpp 1.6:
	* test/test.dsp 1.8:
	* test/test.dsw 1.2:
	* test/tests/test_float.cpp 1.4:
	* test/tests/test_pcm_pass.cpp 1.6:
	* test/tests/test_spdif_pass.cpp 1.4:
		Regular

	* valib/sink.h 1.4:
	* valib/sink/_readme.txt 1.2:
	* valib/sink/sink_dsound.cpp 1.7:
	* valib/sink/sink_dsound.h 1.4:
	* valib/sink/sink_raw.h 1.4:
	* valib/sink/todo.txt 1.3:
	* valib/todo.txt 1.3:
		AudioSink renamed to AudioRenderer

	* valib/filter.h 1.15:
		Added: chunk constructors, NullSink class, and some comments 
		about Filter class

2004-11-30	valex
	* valib/auto_file.h 1.4:
	* valib/filter.h 1.14:
		regular

	* valib/filters/dejitter.cpp 1.9:
		Resync on first received timestamp after reset

2004-11-23	valex
	* valib/filters/agc.cpp 1.16:
	* valib/filters/levels.cpp 1.7:
		Bug in levels calculation fixed

	* valib/filters/dejitter.cpp 1.8:
	* valib/sink/sink_dshow.cpp 1.6:
		regular

	* valib/filters/spdifer.cpp 1.8:
		Bug in ac3 sync (with big endian format) fixed

	* valib/parsers/file_parser.cpp 1.4:
	* valib/parsers/file_parser.h 1.3:
		Compilation warning fixed

	* valib/parsers/ac3/ac3_enc.cpp 1.8:
		Output format for empty chunks fixed.

2004-11-18	valex
	* valib/filters/agc.cpp 1.15:
	* valib/filters/levels.cpp 1.6:
		More correct levels calc

	* lib/valib.dsp 1.7:
	* valib/sink/sink_dshow.cpp 1.5:
		Regular

	* valib/parsers/ac3/ac3_tables.h 1.2:
		avoid compilation warning

	* valib/filters/dejitter.cpp 1.7:
	* valib/filters/dejitter.h 1.6:
		Syncer class rewrited. Tested with ac3filter...

2004-11-17	valex
	* _clear.bat 1.3:
		Noise generator project added

	* lib/valib.dsp 1.6:
	* test/test.dsp 1.7:
	* valib/source/noise.cpp 1.1:
	* valib/source/noise.h 1.1:
		Noise source filter

	* valib/filters/decoder.cpp 1.8:
		Reset timing

	* valib/data.h 1.9:
	* valib/filter.h 1.13:
	* valib/filters/agc.cpp 1.14:
	* valib/filters/filter_chain.cpp 1.5:
	* valib/filters/filter_chain.h 1.6:
	* valib/filters/mixer.cpp 1.5:
	* valib/sync.h 1.5:
		Chunk class moved to filter.h
		FILTER_SAFE macro added
		SampleBuf class now works with both raw and linear samples

	* valib/sink/sink_dsound.cpp 1.6:
		Correct flushing and more correct write()

	* valib/parser.h 1.6:
	* valib/parsers/mpa/mpa_parser.h 1.3:
		Correct is_frame_loaded()

2004-11-16	valex
	* doc/Filter list.html 1.1:
		Doc: filter list

	* codegen/_make.bat 1.1:
	* codegen/_readme.txt 1.2:
	* codegen/linear2pcm.cpp 1.1:
	* codegen/linear2pcm.pl 1.1:
	* codegen/linear2pcm.template 1.1:
	* codegen/mixer_io.cpp 1.3:
	* codegen/mixer_ip.cpp 1.3:
	* codegen/pcm2linear.cpp 1.3:
	* codegen/pcm2linear.pl 1.2:
	* codegen/pcm2linear.template 1.3:
	* test/test.cpp 1.5:
	* test/test.dsp 1.6:
	* test/tests/test_pcm_pass.cpp 1.5:
	* valib/filters/convert.cpp 1.10:
	* valib/filters/convert.h 1.7:
	* valib/spk.h 1.7:
		separate linear-to-PCM conversion functions added. Tests passed.

	* valib/filters/agc.cpp 1.13:
	* valib/filters/agc.h 1.8:
	* valib/filters/decoder.cpp 1.7:
	* valib/filters/decoder.h 1.4:
	* valib/filters/dejitter.cpp 1.6:
	* valib/filters/dejitter.h 1.5:
	* valib/filters/filter_chain.h 1.5:
	* valib/filters/levels.cpp 1.5:
	* valib/filters/levels.h 1.4:
	* valib/filters/proc.cpp 1.4:
	* valib/filters/proc.h 1.6:
	* valib/parser.cpp 1.2:
	* valib/parser.h 1.5:
	* valib/parsers/mpa/mpa_parser.cpp 1.3:
	* valib/parsers/mpa/mpa_parser.h 1.2:
	* valib/sink/sink_dshow.cpp 1.4:
	* valib/sink/sink_dshow.h 1.2:
	* valib/spk.h 1.6:
		Trying to get it work with AC3Filter. Still not stable...

2004-11-11	valex
	* codegen/pcm2linear.cpp 1.2:
	* codegen/pcm2linear.template 1.2:
	* lib/valib.dsp 1.5:
	* test/log.h 1.3:
	* test/test.cpp 1.4:
	* test/test.dsp 1.5:
	* test/tests/test_ac3_enc.cpp 1.5:
	* test/tests/test_buffer.cpp 1.3:
	* test/tests/test_filters.cpp 1.5:
	* test/tests/test_float.cpp 1.3:
	* test/tests/test_pcm_pass.cpp 1.4:
	* test/tests/test_spdif_pass.cpp 1.3:
	* valib/data.h 1.8:
	* valib/defs.h 1.6:
	* valib/filter.h 1.12:
	* valib/filters/agc.h 1.7:
	* valib/filters/bass_redir.cpp 1.5:
	* valib/filters/convert.cpp 1.9:
	* valib/filters/decoder.h 1.3:
	* valib/filters/dejitter.cpp 1.5:
	* valib/filters/delay.cpp 1.4:
	* valib/filters/levels.cpp 1.4:
	* valib/filters/levels.h 1.3:
	* valib/filters/proc.h 1.5:
	* valib/filters/spdifer.cpp 1.7:
	* valib/parser.h 1.4:
	* valib/parsers/ac3/ac3_enc.cpp 1.7:
	* valib/parsers/mpa/mpa_parser.cpp 1.2:
	* valib/sink.h 1.3:
	* valib/sink/sink_dsound.cpp 1.5:
	* valib/sink/sink_dsound.h 1.3:
	* valib/sink/sink_raw.h 1.3:
	* valib/sync.h 1.4:
	* valib/vtime.cpp 1.1:
	* valib/vtime.h 1.1:
	* valib/win32/cpu.cpp 1.2:
	* valib/win32/cpu.h 1.2:
		Working. Testing stage...

2004-10-25	valex
	* codegen/migen_io.pl 1.3:
	* codegen/migen_ip.pl 1.3:
	* codegen/pcm2linear.cpp 1.1:
	* codegen/pcm2linear.pl 1.1:
	* codegen/pcm2linear.template 1.1:
	* test/tests/test_filters.cpp 1.4:
	* valib/defs.h 1.5:
	* valib/filters/agc.cpp 1.12:
	* valib/filters/agc.h 1.6:
	* valib/filters/convert.cpp 1.8:
	* valib/filters/convert.h 1.6:
		Flushing. Compiling. Tests fail...

2004-10-20	valex
	* test/log.h 1.2:
	* test/test.cpp 1.3:
	* test/tests/test_buffer.cpp 1.2:
	* test/tests/test_filters.cpp 1.3:
	* test/tests/test_pcm_pass.cpp 1.3:
	* valib/filter.h 1.11:
	* valib/filters/_readme.txt 1.2:
	* valib/filters/agc.cpp 1.11:
	* valib/filters/convert.cpp 1.7:
	* valib/filters/convert.h 1.5:
	* valib/filters/dvd_decoder.cpp 1.5:
	* valib/filters/dvd_decoder.h 1.4:
	* valib/filters/filter_chain.cpp 1.4:
	* valib/filters/filter_chain.h 1.4:
	* valib/filters/levels.cpp 1.3:
	* valib/filters/proc.cpp 1.3:
	* valib/filters/proc.h 1.4:
		Writing tests and debugging. Still unstable.

2004-10-19	valex
	* codegen/prime.cpp 1.1:
	* codegen/prime.pl 1.1:
	* test/log.h 1.1:
	* test/test.dsp 1.4:
	* test/tests/test_ac3_enc.cpp 1.4:
	* test/tests/test_buffer.cpp 1.1:
	* test/tests/test_filters.cpp 1.2:
	* test/tests/test_pcm_pass.cpp 1.2:
	* test/tests/test_spdif_pass.cpp 1.2:
	* test/tests/test_time_pass.cpp 1.2:
	* valib/data.h 1.7:
	* valib/defs.h 1.4:
	* valib/filter.h 1.10:
	* valib/filters/agc.cpp 1.10:
	* valib/filters/convert.cpp 1.6:
	* valib/filters/decoder.cpp 1.6:
	* valib/filters/mixer.cpp 1.4:
	* valib/filters/spdifer.cpp 1.6:
	* valib/parsers/ac3/ac3_enc.cpp 1.6:
		Writing test. Still not working.

2004-10-18	valex
	* doc/Filter.vsd 1.4:
	* valib/auto_file.h 1.3:
	* valib/filter.h 1.9:
	* valib/filters/agc.cpp 1.9:
	* valib/filters/bass_redir.cpp 1.4:
	* valib/filters/convert.cpp 1.5:
	* valib/filters/convert.h 1.4:
	* valib/filters/mixer.h 1.4:
	* valib/filters/proc.h 1.3:
	* valib/parsers/ac3/ac3_enc.cpp 1.5:
	* valib/sink.h 1.2:
	* valib/sink/sink_dshow.cpp 1.3:
	* valib/sink/sink_dsound.cpp 1.4:
	* valib/sink/sink_dsound.h 1.2:
	* valib/sink/sink_raw.h 1.2:
	* valib/sink/todo.txt 1.2:
		Flushing. Can be compiled.

2004-10-14	valex
	* valib/filters/convert.cpp 1.3:
	* valib/filters/decoder.cpp 1.4:
	* valib/filters/dejitter.cpp 1.3:
	* valib/filters/dejitter.h 1.3:
	* valib/filters/delay.cpp 1.3:
	* valib/filters/delay.h 1.3:
	* valib/filters/demux.cpp 1.2:
	* valib/filters/demux.h 1.2:
	* valib/filters/filter_chain.cpp 1.2:
	* valib/filters/filter_chain.h 1.2:
	* valib/filters/spdifer.cpp 1.4:
	* valib/filters/spdifer.h 1.2:
		Implementing flushing...
		(not working)

	* codegen/migen_io.pl 1.2:
	* codegen/migen_ip.pl 1.2:
	* codegen/mixer_io.cpp 1.2:
	* codegen/mixer_ip.cpp 1.2:
	* valib/data.h 1.6:
	* valib/filter.h 1.8:
	* valib/filters/agc.cpp 1.8:
	* valib/filters/agc.h 1.5:
	* valib/filters/bass_redir.cpp 1.3:
	* valib/filters/bass_redir.h 1.3:
	* valib/filters/convert.cpp 1.4:
	* valib/filters/convert.h 1.3:
	* valib/filters/decoder.cpp 1.5:
	* valib/filters/dejitter.cpp 1.4:
	* valib/filters/dejitter.h 1.4:
	* valib/filters/demux.cpp 1.3:
	* valib/filters/dvd_decoder.cpp 1.4:
	* valib/filters/dvd_decoder.h 1.3:
	* valib/filters/filter_chain.cpp 1.3:
	* valib/filters/filter_chain.h 1.3:
	* valib/filters/levels.cpp 1.2:
	* valib/filters/levels.h 1.2:
	* valib/filters/mixer.cpp 1.3:
	* valib/filters/mixer.h 1.3:
	* valib/filters/proc.cpp 1.2:
	* valib/filters/proc.h 1.2:
	* valib/filters/spdifer.cpp 1.5:
	* valib/filters/spdifer.h 1.3:
	* valib/parsers/ac3/ac3_enc.cpp 1.4:
	* valib/parsers/ac3/ac3_enc.h 1.2:
	* valib/spk.cpp 1.3:
	* valib/spk.h 1.5:
		Flushing. Still not working...

2004-10-06	valex
	* doc/Filter.vsd 1.3:
	* lib/valib.dsp 1.4:
	* valib/data.h 1.5:
	* valib/defs.h 1.3:
	* valib/filter.h 1.7:
	* valib/filters/agc.cpp 1.7:
	* valib/filters/agc.h 1.4:
	* valib/filters/bass_redir.cpp 1.2:
	* valib/filters/bass_redir.h 1.2:
	* valib/filters/convert.cpp 1.2:
	* valib/filters/convert.h 1.2:
	* valib/filters/decoder.cpp 1.3:
	* valib/filters/decoder.h 1.2:
	* valib/filters/dejitter.cpp 1.2:
	* valib/filters/dejitter.h 1.2:
	* valib/filters/delay.h 1.2:
	* valib/sync.h 1.3:
		still not working

2004-10-05	valex
	* valib/bitstream.h 1.3:
		regular

2004-09-29	valex
	* doc/Filter chaining.vsd 1.2:
	* doc/Filter.vsd 1.2:
	* todo_big.txt 1.4:
	* valib/data.h 1.4:
	* valib/filter.h 1.6:
	* valib/filters/agc.cpp 1.6:
	* valib/filters/agc.h 1.3:
	* valib/filters/mixer.cpp 1.2:
	* valib/parsers/ac3/ac3_parser.cpp 1.4:
		regular

2004-09-27	valex
	* doc/DVDDecoder.vsd 1.1:
	* doc/Filter chaining.vsd 1.1:
	* doc/Filter.vsd 1.1:
	* doc/Hierarchy.vsd 1.1:
	* todo.txt 1.5:
	* valib/data.h 1.3:
	* valib/filter.h 1.5:
	* valib/filters/agc.cpp 1.5:
	* valib/filters/agc.h 1.2:
	* valib/filters/mixer.h 1.2:
	* valib/spk.h 1.4:
	* valib/sync.h 1.2:
		Some docs added
		Starting work on correct flushing

2004-08-30	valex
	* GPL_eng.txt 1.1:
	* GPL_rus.txt 1.1:
	* todo.txt 1.4:
	* todo_big.txt 1.3:
	* valib/filters/todo.txt 1.3:
	* valib/sink/sink_dshow.cpp 1.2:
	* valib/spk.h 1.3:
	* valib/win32/thread.cpp 1.2:
	* valib/win32/thread.h 1.2:
	* valib/win32/winspk.cpp 1.4:
		Daily

2004-08-16	valex
	* todo.txt 1.3:
	* valib/auto_file.h 1.2:
	* valib/data.h 1.2:
	* valib/defs.h 1.2:
	* valib/filter.h 1.4:
	* valib/parser.h 1.3:
	* valib/parsers/_readme.txt 1.3:
	* valib/parsers/todo.txt 1.4:
	* valib/spk.cpp 1.2:
	* valib/spk.h 1.2:
	* valib/win32/winspk.cpp 1.3:
		daily

2004-08-10	valex
	* valib/parsers/ac3/ac3_parser.cpp 1.3:
		Bug fixed: CRC check dod not work with big endian
		todo: CRC check for big endian

	* valib/parsers/file_parser.cpp 1.2:
	* valib/parsers/file_parser.h 1.2:
		File info added

	* valib/win32/winspk.cpp 1.2:
	* valib/win32/winspk.h 1.2:
		Compressed format conversions added

	* valib/parsers/ac3/ac3_enc.cpp 1.3:
	* valib/parsers/todo.txt 1.3:
		daily

	* valib/parsers/file_parser.cpp 1.3:
		Correct timing in case of padded stream

2004-08-03	valex
	* test/tests/test_ac3_enc.cpp 1.3:
		ac3 encoder test misoperation bug fixed

	* test/test.bat 1.2:
	* test/test.dsp 1.3:
	* valib/filters/dvd_decoder.cpp 1.3:
	* valib/filters/dvd_decoder.h 1.2:
		daily

2004-07-14	valex
	* valib/parsers/ac3/ac3_enc.cpp 1.2:
		* Bug with bit counting
		* After last bisection iteration we may have high-bound bit allocation,
		so we need to redo bit allocation process again with lower bound

	* _clear.bat 1.2:
	* lib/valib.dsp 1.3:
	* test/test.cpp 1.2:
	* test/test.dsp 1.2:
	* test/tests/test_ac3_enc.cpp 1.2:
	* test/tests/test_float.cpp 1.2:
	* valib/bitstream.cpp 1.2:
	* valib/bitstream.h 1.2:
		Regular

2004-07-12	valex
	* valib/filters/dvd_decoder.cpp 1.2:
		SPDIF passthrough mode for AC3 by default

	* valib/parsers/ac3/ac3_parser.cpp 1.2:
	* valib/parsers/ac3/ac3_parser.h 1.2:
		AC3 CRC check

	* valib/filters/decoder.cpp 1.2:
		Passthrough empty chunks [process()]
		Return empty chunk if filter is empty [get_chunk()]

	* codegen/_readme.txt 1.1:
	* codegen/migen_io.pl 1.1:
	* codegen/migen_ip.pl 1.1:
	* codegen/mixer_io.cpp 1.1:
	* codegen/mixer_ip.cpp 1.1:
	* codegen/spk_tbl.cpp 1.1:
	* codegen/spk_tblgen.pl 1.1:
	* test/_clear.bat 1.1:
	* test/test.bat 1.1:
	* test/test.cpp 1.1:
	* test/test.dsp 1.1:
	* test/test.dsw 1.1:
	* test/tests/test_ac3_enc.cpp 1.1:
	* test/tests/test_ac3_parser.cpp 1.1:
	* test/tests/test_filters.cpp 1.1:
	* test/tests/test_float.cpp 1.1:
	* test/tests/test_pcm_pass.cpp 1.1:
	* test/tests/test_pes_demux.cpp 1.1:
	* test/tests/test_spdif_pass.cpp 1.1:
	* test/tests/test_time_pass.cpp 1.1:
	* todo_big.txt 1.2:
	* valib/filter.h 1.3:
	* valib/parsers/_readme.txt 1.2:
	* valib/parsers/todo.txt 1.2:
		Daily

	* valib/sink/sink_dsound.cpp 1.3:
		Fixed audio skips on fast computers.
		Output time was incorrect.

	* valib/filter.h 1.2:
		Comments added

	* valib/filters/delay.cpp 1.2:
		Disabled by default

	* valib/filters/agc.cpp 1.4:
		Deafult release factor fixed (50dB/s)

2004-07-08	valex
	* valib/filters/agc.cpp 1.3:
		DRC transfer function now has bend at -50dB to prevent noise 
		amplification.

2004-07-07	valex
	* todo.txt 1.2:
	* valib/filters/todo.txt 1.2:
	* valib/todo.txt 1.2:
		todo (about agc & spdifer)

	* valib/sink/sink_dsound.cpp 1.2:
		DSoundSink: more correct sleep time

	* valib/parser.h 1.2:
		Parsers for spdifable formats shouldd support raw frame access

	* valib/filters/agc.cpp 1.2:
		define DRC power as
		log(out) = k * log(in)
		out = in ^ k
		where k = drc_power / 50

	* valib/filters/spdifer.cpp 1.2:
		Fix SPDIF passthrough mode bug

2004-06-30	valex
	* _clear.bat 1.1.1.1:
	* lib/_clear.bat 1.1.1.1:
	* lib/valib.dsp 1.1.1.1:
	* lib/valib.dsw 1.1.1.1:
	* todo.txt 1.1.1.1:
	* todo_big.txt 1.1.1.1:
	* todo_join.bat 1.1.1.1:
	* valib.txt 1.1.1.1:
	* valib/auto_file.h 1.1.1.1:
	* valib/bitstream.cpp 1.1.1.1:
	* valib/bitstream.h 1.1.1.1:
	* valib/crc.h 1.1.1.1:
	* valib/data.h 1.1.1.1:
	* valib/defs.h 1.1.1.1:
	* valib/filter.h 1.1.1.1:
	* valib/filters/_readme.txt 1.1.1.1:
	* valib/filters/agc.cpp 1.1.1.1:
	* valib/filters/agc.h 1.1.1.1:
	* valib/filters/bass_redir.cpp 1.1.1.1:
	* valib/filters/bass_redir.h 1.1.1.1:
	* valib/filters/convert.cpp 1.1.1.1:
	* valib/filters/convert.h 1.1.1.1:
	* valib/filters/decoder.cpp 1.1.1.1:
	* valib/filters/decoder.h 1.1.1.1:
	* valib/filters/dejitter.cpp 1.1.1.1:
	* valib/filters/dejitter.h 1.1.1.1:
	* valib/filters/delay.cpp 1.1.1.1:
	* valib/filters/delay.h 1.1.1.1:
	* valib/filters/demux.cpp 1.1.1.1:
	* valib/filters/demux.h 1.1.1.1:
	* valib/filters/dvd_decoder.cpp 1.1.1.1:
	* valib/filters/dvd_decoder.h 1.1.1.1:
	* valib/filters/filter_chain.cpp 1.1.1.1:
	* valib/filters/filter_chain.h 1.1.1.1:
	* valib/filters/levels.cpp 1.1.1.1:
	* valib/filters/levels.h 1.1.1.1:
	* valib/filters/mixer.cpp 1.1.1.1:
	* valib/filters/mixer.h 1.1.1.1:
	* valib/filters/proc.cpp 1.1.1.1:
	* valib/filters/proc.h 1.1.1.1:
	* valib/filters/spdifer.cpp 1.1.1.1:
	* valib/filters/spdifer.h 1.1.1.1:
	* valib/filters/todo.txt 1.1.1.1:
	* valib/parser.cpp 1.1.1.1:
	* valib/parser.h 1.1.1.1:
	* valib/parsers/_readme.txt 1.1.1.1:
	* valib/parsers/ac3/ac3_bitalloc.cpp 1.1.1.1:
	* valib/parsers/ac3/ac3_bitalloc.h 1.1.1.1:
	* valib/parsers/ac3/ac3_defs.h 1.1.1.1:
	* valib/parsers/ac3/ac3_dither.h 1.1.1.1:
	* valib/parsers/ac3/ac3_enc.cpp 1.1.1.1:
	* valib/parsers/ac3/ac3_enc.h 1.1.1.1:
	* valib/parsers/ac3/ac3_imdct.cpp 1.1.1.1:
	* valib/parsers/ac3/ac3_imdct.h 1.1.1.1:
	* valib/parsers/ac3/ac3_mdct.cpp 1.1.1.1:
	* valib/parsers/ac3/ac3_mdct.h 1.1.1.1:
	* valib/parsers/ac3/ac3_parser.cpp 1.1.1.1:
	* valib/parsers/ac3/ac3_parser.h 1.1.1.1:
	* valib/parsers/ac3/ac3_tables.h 1.1.1.1:
	* valib/parsers/dts/dts_defs.h 1.1.1.1:
	* valib/parsers/dts/dts_parser.cpp 1.1.1.1:
	* valib/parsers/dts/dts_parser.h 1.1.1.1:
	* valib/parsers/dts/dts_tables.h 1.1.1.1:
	* valib/parsers/dts/dts_tables_adpcm.h 1.1.1.1:
	* valib/parsers/dts/dts_tables_fir.h 1.1.1.1:
	* valib/parsers/dts/dts_tables_huffman.h 1.1.1.1:
	* valib/parsers/dts/dts_tables_quantization.h 1.1.1.1:
	* valib/parsers/dts/dts_tables_vq.h 1.1.1.1:
	* valib/parsers/file_parser.cpp 1.1.1.1:
	* valib/parsers/file_parser.h 1.1.1.1:
	* valib/parsers/file_pcm.cpp 1.1.1.1:
	* valib/parsers/file_pcm.h 1.1.1.1:
	* valib/parsers/mpa/mpa_defs.h 1.1.1.1:
	* valib/parsers/mpa/mpa_parser.cpp 1.1.1.1:
	* valib/parsers/mpa/mpa_parser.h 1.1.1.1:
	* valib/parsers/mpa/mpa_synth.cpp 1.1.1.1:
	* valib/parsers/mpa/mpa_synth.h 1.1.1.1:
	* valib/parsers/mpa/mpa_synth_filter.h 1.1.1.1:
	* valib/parsers/mpa/mpa_tables.h 1.1.1.1:
	* valib/parsers/todo.txt 1.1.1.1:
	* valib/pes_demux.cpp 1.1.1.1:
	* valib/pes_demux.h 1.1.1.1:
	* valib/sink.h 1.1.1.1:
	* valib/sink/_readme.txt 1.1.1.1:
	* valib/sink/sink_dshow.cpp 1.1.1.1:
	* valib/sink/sink_dshow.h 1.1.1.1:
	* valib/sink/sink_dsound.cpp 1.1.1.1:
	* valib/sink/sink_dsound.h 1.1.1.1:
	* valib/sink/sink_raw.h 1.1.1.1:
	* valib/sink/todo.txt 1.1.1.1:
	* valib/spk.cpp 1.1.1.1:
	* valib/spk.h 1.1.1.1:
	* valib/sync.h 1.1.1.1:
	* valib/todo.txt 1.1.1.1:
	* valib/win32/_readme.txt 1.1.1.1:
	* valib/win32/cpu.cpp 1.1.1.1:
	* valib/win32/cpu.h 1.1.1.1:
	* valib/win32/thread.cpp 1.1.1.1:
	* valib/win32/thread.h 1.1.1.1:
	* valib/win32/todo.txt 1.1.1.1:
	* valib/win32/winspk.cpp 1.1.1.1:
	* valib/win32/winspk.h 1.1.1.1:
		CVS init

