3.1.14	2004 May 31
	Included Ian McConnell's fix for snapshots when using the
	"lastsnap" filename.
	Fixed the bug in advanced filename and text feature when event
	numbers go higher than 99.
	Included Angel Carpintero's improvement of configure reporting of
	missing shared libraries (Kenneth Lavrsen improved it a little
	further).
	Included Ian McConnell's timelapse close mpeg file when set to zero
	patch.
	Changed motion-control to make a proper output from motion.conf.list.
	Renamed ffmpeg_timelaps to ffmpeg_timelapse (we change now or never)
	Corrected man page (\n).
	Added setting access rights to 644 (755 for configure) when doing
	make dist.
	Small improvement on xmlrpc-api.html document.
	Included Angel Carpintero's fix for building motion without ffmpeg
	(missing #ifdef round newly added ffmpeg timelapse code)
	Fixed missing init of viddev.frequency causing VIDIOCGCHAN errors.
	Included Angel Carpintero's snap2 based patch for improving configure.
	XML-RPC changes of threshold and noise_level are now being used as
	long as threshold_tune and noise_level are not enabled.
	Enabled the round robin feature to also work by changing frequency on
	the same device and same input.
	Fixed the pre_capture feature so that it also stores the jpegs properly.
	Fixed the ffmpeg_timelapse feature so that the calculated time is
	correct and the current image is used instead of an old image from
	position 0 in the pre_capture ring buffer.
	Fixed ffmpeg routines so that also graytone images can be
	pre_captured and used with ffmpeg_timelapse.
	Fixed the position of the incrementing of shots in the motion_loop
	so that it is correct before any functions use it.
	Added quite many comments to the code to make it easier to maintain
	(more comments will be added).
	Removed some old debugging printf's that were displayed in non-quiet
	mode.
	Changed to snapshot feature from being alarm driven to being timer
	driven. This means that each thread can have its own interval
	value. The XML-RPC motion.action.snapshot still works. The SIGALRM
	method has been changed so that all thread that have the
	snapshot_interval non zero will take a snapshot when being signaled
	with SIGALRM. A	negative value for snapshot_interval will activate
	the SIGALRM trigger but not the timing interval.
	Implemented ffmpeg_timelapse_mode feature by James A. Russo.
	Implemented RH (sysV) and Debian type control scripts for /etc/init.d
	by Angel Carpintero.
	Implemented enhanced SQL features by James A. Russo. This adds logging
	of mpeg and prediction events to MySQL/PostgreSQL.
	James patch also replaced the mime file types by a more refined
	filetype scheme that allows more refined control for SQL and other
	future control.
	Kenneth Lavrsen changed the enhanced SQL config from single sql_mask
	option to 5 sel_log_ options for more user friendly control.
	Implemented Daniel Sterlings minimum_motion_frames feature.
	Plugged a memory leak in the pre_capture feature.
	Changed the behaviour of onsave back to original mode where also
	snapshots causes onsave command to be run.
	Fixed a bug in frequency setting of V4L device.
	Renamed snapshots_interval and snapshots_filename to snapshot_interval
	and snapshot_filename.
	Changed the webcam_port value to 0 in motion-dist.conf to avoid that
	people get segmentation faults when having 2 or more cameras and
	webcam_port not set in the thread config files.
	Implemented Daniel Sterlings improved handling of config strings. This
	plugs the memory leak when changing string type options via XML-RPC.
	It also makes the memory handling more elegant/optimal and finally
	it now allows strings to be as long as allowed by the environment
	variable PATH_MAX.
	Kenneth and Daniel added many comments to motion.c and conf.c.
	Daniel Sterling made the XMLRPC able to handle errors without crashing.
	Daniel Sterling and Kenneth Lavrsen added a feature that checks for
	two threads having the same webcam_port. If this is the case the last
	thread gets its webcam disabled and a warning message is written
	to console and syslog.
	Implemented Daniel Sterling's fix for a small calculation error in
	alg_diff_fast().
	Small improvements in messages sent to console and syslog during
	startup of Motion.

3.1.13	Included Ian McConnell's despeckle feature (including extra
	improvement of the original patch).
	Changed the name of motion.conf to motion-dist.conf to avoid
	make install overwrites your perfectly OK working motion.conf
	file when you re-install.
	Updated the motion.spec.in. Not tested yet.
	Included Matthias Kilian configure patch which enables configure
	to find and use a dynamic library of ffmpegs libavcodec.so .
	Included Steffen Haas improved on screen display patch
	(plus some extra characters including a real space).
	Changed the parsing of the motion.conf and thread.conf files so
	that spaces are now allowed. This also enables using a space in
	the user text. For XML-RPC you put text in "" if you need spaces.
	Changed the XML-RPC function motion.conf.write so that undefined
	config options gets written into the main motion.conf file with
	the help line and the option prefixed by a '#'. Example
	# netcam_url value.
	Added Mike Lees onffmpegclose feature which enabled a command to
	be executed each time a file generated by ffmpeg is closed.
	Added Daniel Sterlings night compensate fix.
	Added Angel Carpintero's improved configure process which
	automatically detects presence of xmlrpc-c and ffmpeg and makes
	the Makefile accordingly.
	Included Ian McConnell's flexible on screen display feature and
	flexible strftime based path names.
	Changed conf.c so that xml-rpc command motion.conf.write creates
	a much more user friendly motion.conf file.
	Modified Ian's on screen display putting back the config parameter
	(draw)text_changes. If enabled the number of changed pixes are shown
	in the upper right corner of the image.
	Removed the snap_override feature and reduced the oldlayout to an
	Berkeley mpeg_encode feature only renaming it to
	berkeley_single_directory. Instead the flexible filename
	feature now has oldlayout as default and the "new" directory layout
	specified in the motion.conf file.
	Motion.conf sequency re-arranged so the important things comes first.
	Changed names of many options to be more user friendly.
	Renamed the options for displayed text to text_right, text_left and
	text_changes.
	Change the parsing of config files so that the argument can be in
	quotation marks (" or ') allowing leading spaces for the text_left
	and text_right options. This means that you can place the text
	anywhere on the picture by using spaces and new lines \n.
		

3.1.12	Removed vid_keepalive
	Added reentrant warning to codestyle answer in FAQ.
	Rewrite of PWC tracking code.
	Tracking is inactive by default.
	Motion-control action.quit fix.
	Netcam with mask fixed.
	Added tracking options to xmlrpc interface.
	Ignore SIGPIPE (crashes webcam code).
	Changed fast algorithm to imgs.size/10000 steps.
	Renamed prerecord to pre_capture to be more consistent with
	post_capture.
	Redone pre_capture completly.

3.1.12
rc1	added pre-record. with configparameter n_prerecord one can set
	the number of frames that should be recorded *before* the
	motion starts. for this feature to work, you need to set
	post capture to at the value given for n_prerecord! also:
	n_prerecord must be at least 1

3.1.11	found 2 memory-leaks (two 'FILE *' were not closed) in the
	webcam-interface
	started working on support for logitech sphere/orbit tracking
	fixed bug in tracking routines (would sometimes use garbage
	coordinates)
	added max-number-of-frames-limit to the webcaminterface (patch
	by Jeroen Vreeken)

3.1.10	added Kenneth's fixes for ffmpeg instability and the problem
	with the "ioctl(VIDIOCGCHAN): Invalid argument" error
	small optimalisation of rgb24toyuv420p (about 6% faster) so
	for certain video-devices things might be a little faster
	optimized alg_diff_fast: about 50% faster
	made it compile again with 2.6.0-test9
	noise tuning is now only done when there's no motion!
	noise is resetted to the median of the tuned value and the
	configured value as soon as no motion is detected
	fixed includes for mysql/psql (thanks Felix Finch!)

3.1.9	motion now logs to syslog instead of stderr, that way it is
	still possible to see what is going wrong when motion runs
	as a daemon process.
	motion will now exit nicely when memory allocation fails
	instead of segfaulting
	low_cpu now takes the number of frames per second to process
	when no motion is detected instead of on/off
	"quick motion detection" is now only performed when motion
	is in "idle" mode.
	added Kenneth's patch: motion with ffmpeg-0.4.8 now compiles
	again!
	small optimalisation: if a file is created, the path is now
	only recreated when it did not already exist.


3.1.8 is the last version release by Jeroen Vreeken.
New maintainers are: Kenneth Lavrsen (http://www.lavrsen.dk/) and Folkert
van Heusden (http://www.vanheusden.com/).


3.1.8	Froze 3.1.8
	Can't use the same variable name twice in ppm code...

3.1.7	Froze 3.1.7
	Added codingstyle answer to faq
	yuv to rgb conversion for ppm images.
	Webcam close and denial of service fixes.
	Renamed roundrobing to roundrobin.
	Don't try to compile in xml-rpc support when not defined.

3.1.6	Froze 3.1.6
	Added output_all option for continuous file saving.
	Fixed picture saving on rgb files.
	Fixed off-by-one error in framerate calculation.

3.1.5	Froze 3.1.5
	Added motion.action.quit to xml-rpc api.
	Changed v4l code to convert rgb to yuv420p and
	removed support for rgb24 from all other files.
	Removed read() support from v4l code.
	Changed netcam code to output yuv420p images.
	Fixed libavcodec.h include in ffmpeg.h

3.1.4	Froze 3.1.4
	Fixed ffmpeg segfault.
	Removed motion.conf* from install section in Makefile
	Fixed mail option.
	Fixed conf list hang.

3.1.3	Froze 3.1.3
	Made timelaps interval variable.
	Added motion.conf.write to xmlrpc API
	Motion can write its own config file.
	Changed xmlrpc API to use strings for all option types.
	Added comment fields for config options.
	Added additional settings for ffmpeg.

3.1.2	Froze 3.1.2
	Use SO_REUSEADDR on http listen sockets.
	Added control_localhost and webcam_localhost options for
	binding servers to the loopback interface (default=on).
	xmlrpc-httpd now uses nonblocking io allowing for multiple
	connections to be handled at the same time.
	Set default for 'threshold_tune' and 'noise_tune' to yes.
	Added threshold_tune config option.

3.1.1	Froze 3.1.1
	Sync with 3.0.4
	Added xmlrpc motion-control.
	Changed description output to match input format.
	Added Server and Connection fields to the webcam code.
	Added threshold_tune????? for autotuning the max_changes level.
	Added noise_tune option for autotuning the noise level.
	Sync with 3.0.3

3.1.0	Froze 3.1.0
	Added predict evaluation.
	Added predict_description config option.
	Started with predict functions.
	Forked from 3.0.2

3.0.2	Froze 3.0.2
	Changed strtok() call for argument in conf.c arguments with
	'=' in them are now allowed.

3.0.1	Froze 3.0.1
	Added 'dist' and 'updateguide' options to Makefile.
	Added motion_guide.html to documentation.
	Fixed mpeg names when using oldlayout.
	Updated manpage.
	Added check to low_cpu frame_delay calculation for a maximum
	of 1 second.

3.0.0	Froze 3.0.0
	Added string.h to ffmpeg.c

2.9.12	Froze 2.9.12
	Added ffmpeg_bps option.
	Fixed devpipe instead of devmpipe in motion.c

2.9.11	Froze 2.9.11
	Added all config files to examples in Makefile
	Fixed YUV422 converter for real :)
	Use 2 as minimum fps for ffmpeg (less produces a floating point
	exeption)

2.9.10	Froze 2.9.10
	Fixed YUV422 to YUV420 converter.
	Fixed oldlayout for ffmpeg files.
	Added -lz for mysql.
	Removed TODO from makefile.

2.9.9	Froze 2.9.9
	Fixed leaks in webcam.c
	Fixed mask image use (imgs.motionsize instead of imgs.size)
	Don't try to detect motion with threshold set to 0.

2.9.8	Froze 2.9.8
	Always try to remove snapshot link.
	Cleande up config file.
	Cleaned up ppm code, now loads pgm greyscale files.
	Fixed max_mpeg_time segfault in ffmpeg close event.
	Added -lm for libavcodec.
	Updated FAQ.
	Added timelaps option.
	Fixed SIGHUP handling.
	Added /usr/local/mysql/include and /usr/local/mysql/lib to
	configure script and fixed bogus error message.
	Fixed snapshot location (missing filepath)

2.9.7	Froze 2.9.7
	Fixed some more #endif statements
	Use cnt->lastrate for ffmpeg framerate.
	Fixed ffmpeg code for RGB and GREY images.
	Added YUV422 support (converted to YUV420P)
	Added roundrobing on frequency.

2.9.6	Froze 2.9.6
	Tweaked autobrightness mode.
	Added webcam_maxrate option.
	Reversed image and boundary in webcam code.
	Added framerate control.
	Added webcam_motion config option.
	New frame_limit code.
	Fixed include files for ffmpeg.h
	Code cleanup.
	Removed SIGHUP handler.
	Removed draw on motion images.
	Added speed and stepsize options to tracking code.
	Reversed the night compensation.
	Removed ffmpeg error in max mpegtime code.
	Fixed #endif statements in header files.
	Changed 'deamon' to 'daemon'

2.9.5	Froze 2.9.5
	Added missing time.h define in webcam.c
	Added 'frequency' option for v4l tuners.
	Fixed max mpeg time with ffmpeg encoding
	Added path for mpeg_encode (problems with PATH variable)
	Fixed deamon mode.
	Changed overlay to white on black (more readable).

2.9.4	Froze 2.9.4
	Added webcam option.
	Moved reference image update before draw()
	Added fclose() to put_picture()

2.9.3	Froze 2.9.3
	Added GNU license to all file headers.
	New netcam code
	Fixed snapshot filenames
	Use correct image sizes (no more width*height*3)

2.9.2	Froze 2.9.2
	Added ffmpeg code (from monitor) for realtime mpeg encoding.
	Moved image creation to event.c
	Moved put_picture functions to picture.c
	Added support for Y plane images (YUV420P and GREYSCALE)
	Set default jpeg quality from 50 to 75
	PostgreSQL support
	Moved event handlers from motion.c to event.c
	Introduced new event() functions.
	Updated xml-rpc rmon code.

2.9.1	Froze 2.9.1
	Fixed lastsnap symlink for new layout.
	switchfilter added
	post_capture option added
	Round robbing_skip added
	Added roundrobing_frames option.

2.9.0	Froze 2.9.0
	Shuffled everything around and added 'struct context', this
	should make motion ready for some serious threading.
	Added xml-rpc remote monitoring.
	Higher quality settings for mpeg.
	Added missing w to getopt in conf.c
	Removed c++ style '//' comments, they're EVIL.
	Removed some old outcommented code.

2.6.3	froze 2.6.3
	Fixed removal of directories after mpeg creation.
	Added new netcam code.

2.6.2	froze 2.6.2
	Added support for YUV420P palette to video.c, this should fix
	problems with the Philips webcams.

2.6.1	froze 2.6.1
	Changed system() calls into remove() and symlink().
	oldlayout option now also affects snapshots.
	Fixed snapshot link name (ppm vs jpg).
	Added new snapshot_overwrite option.
	Changed directory permissions to 0755 instead of 0750.
	Made timestamp overlay better readable, it is now black
	or white depending on the back color.

2.6.0	froze 2.6.0
	Updated manpage.
	Added iomojo Smilecam support.
	Added uninstall option to Makefile
	Added config file location to the FAQ.
	Made timestamp overlay inverse of original pixel instead of 
	white.
	Created 'struct images' to minimize the passing of arguments
	between functions.
	Move contents of various header files around to make things
	more sane.
	Made locate box inverse off original pixel instead of white.
	Created alg.c and alg.h, they contain all functions that
	have something to do with the motion detection algoritmes.
	Renamed video.c functions to vid_xxxxx.
	Created video.h
	Improved stepper tracking code.
	Tracking code cleanup, multiple tracking interfaces are now
	possible.
	Added diff_hybrid, a combination of diff_fast and diff_standard
	Introduced some pointer magic in the locate functions.
	Added experimental diff_fast.
	Fixed SIGHUP handling and blocking.
	Added auto_bright option.

2.5.0	froze 2.5.0
	Updated documentation, config files, man page.
	Freeing 'line' in decompress_jpeg, this fixes a memory leak
	when using Axis cameras.
	Implemented SIGHUP handler for reloading config files.
	Added realconfig option for starting multiple motion processes
	or loading alternative config files.
	Added 'jpg_cleanup' to the manpage.
	Made 'low_cpu' lower on cpu.
	Fixed mpeg creation for old layout.
	Moved mpeg movies into year/month/day dir.
	Remove empty directories when doing jpg_cleanup.

2.4.2	froze 2.4.2
	Fixed low_cpu option to be actually low on the cpu.
	Fixed missing case for '-w' in conf.c.

2.4.1	froze 2.4.1
	New version numbering: ala linux kernel
	Fixed includes for track.c

2.4	froze 2.4
	Complete rewrite of the tracking stuff... it now uses a serial
	stepper motor interface (and actually works!)
	Fixed division by zero in ajdust_rate code
	Added 'low_cpu' option for minimizing the cpu load while not
	detecting any motion.
	Added 'oldlayout' option for using the old style filenames.
	Added automatic location of vloopback inputs by using
	/proc/video/vloopback/vloopbacks.
	Fixed '-l' option
	Uploaded motion to the sourceforge CVS
	Alphabetized CREDITS file.
	Added 'pal-nc' norm.

2.3	froze 2.3
	Started faq.
	Includec fix for bad 'strtok' in glibc with RH 7.0
	Added \t as a delimiter for config files.
	Made mpeg creation checks more sane.

2.2	froze 2.2
	Fixed segfault bug with filebase creation.
	Added creation of mpegs when killed or when getting SIGUSR1
	or when max_mpeg_time has been reached.

2.1	froze 2.1
	Only create directories if they are going to be used.
	Changed SYNC ioctl argument to int in video.c
	Added realmotion option
	Default config changed:
	 -gap is now 60 instead of 300 seconds.
	 -locate is on by default (-l function now works reversed)
	 -night_compensate is on by default
	Added mpeg framerate adjustment.
	Added night_compenstate for dark pictures.

2.0	froze 2.0
	Integrated motion tracking.
	Improved lightswitch detection.
	Added clipcount in video.c, quickcam should work good now.

1.99	froze 1.99
	Fixed memory leak in mpeg creation.
	Created put_picture for saving images.
	Moved lightswitch code out of main loop.
	Merged exec_externcommand, exec_onsavecommand and
	exec_onmpegcommand into exec_command
	Added onmpeg command.

1.81	froze 1.81
	Fixed segfault bug in 'mysql_password' option.

1.8	froze 1.8
	Added video loopback for motion pictures.
	Location box is now only enlarged for heads, not for feet.
	Merged in Axis 2100 camera support.
	conf.c now also looks for '~/.motion/motion.conf'.
	Moved filebase creation to mkfilebase
	Minor improvements.
	Loopback feed during lightswitch.

1.7	froze 1.7
	Little bit of code cleanup
	Splitted motion.c in motion.c and video.c
	Changed config.in to correctly detect the mysql libraries and
	include files.

1.6	froze 1.6
	Motion now has its own mailinglist: motion@frogtown.com
	Added MySQL support
	Added creation of symbolic link to snapshots
	Changed file names of snapshots

1.5	froze 1.5
	Added video loopback support for realtime viewing.
	Fixed division by zero bug.
	Added install option to Makefile.
	Fixed bug that prevented external commands, mail and sms from
	being called at the first event.

1.4	froze 1.4
	Added lightswitch filter
	Updated manpage

1.3	froze 1.3
	Added minimum gap option.
	Changed /007 to /a, not a real change but more sane.
	Added mask option.
	Added get_ppm for reading ppm files
	Optimized greyscale blowup code.
	Added 'FORCE_ENCODE_LAST_FRAME' to mpeg params file.
	Experimental tracking routines for mini ssc library

1.2	froze 1.2
	Fixed some exit(-1) to exit(1)
	Updated manpage with the new options.
	Added adjustable noise level.
	Snapshots can be made in ppm format to.
	Fixed signal blocking code (this time right?)

1.1	froze 1.1
	Motion now has it own logos!!!!
	Added timestamp to picture.
	Added ppm output format.
	Rewrote locate function, small things (like fish :) don't
	disturb the locate option anymore.
	Added break for -B option

1.0	froze 1.0
	Went back to alarm for automated snapshots 
	(signals should work with bttv now)
	Moved usage to conf.c
	Finished manpage
	Added check for existing target dir.
	Moved diff calculation and image_out generation out of main
	loop, adding other methods is easier this way.
	Removed sanity check for output formats since someone might 
	want no pictures at all but only warning messages.
	Make snapshots seperately from other pictures.
	New snapshot names: YYYYMMDDHHMMSS-snapshot
	Motion images are encoded to mpeg movies to.
	Made movie file names and counter sane.

0.99-2	froze 0.99-2
	Added signal blocking during ioctls, bttv should now continue
	to work when receiving signals.
	Snapshots with no movement don't go to the movies ;)
	Also flush buffers when making snapshots.
	Fixed for segfault when there is no config file.
	(Second time, remember to fix the current version next time)

0.99	Last beta before 1.0
	mpeg movies get timestamp in filename
	mpeg_encode is now called from within motion
	added chdir, filename generation is now much easier
	Added check for complete frames with read

0.8	froze 0.8
	Added script for mpeg_encode
	Moved getopt stuff to conf.c
	Added conf.h and conf.c for config file parsing
	Added -f option for frame rate limit
	Fixed frame nr count (starts at 0 again instead of 1 in v0.7)

0.7	froze 0.7
	Added event nr to the filename, settable with -g (gap).
	Added genhtml.sh (for creating a static version of show.cgi)
	New show.cgi
	Option for saving both motion and normal images.
	Moved image_ref update into diff for loop.
	-a option does not use alarm anymore, bttv card users can use
	it to (they just miss the SIGALRM option...)
	Added picture size settings for read.
	Moved read back in, after mmap failure motion we fall back
	to normal reads.
	Greyscale camera fix
	Added check for capture failure

0.6	froze 0.6
	Fixed stupid typo for execute option (forgot the shift)
	Added -l option for locating and marking movement
	Added buffer flush to keep log files up to date

0.5	froze 0.5
	Added contrib dir with infra red script
	Option to always output changes between images
	Output of motion images
	configure script

0.4	froze 0.4
	Gave the help text a new look.
	Overall cleanup (moving defines to motion.h)
	Added -E option for executing external commands

0.3	froze 0.3
	New homepage: http://motion.technolust.cx
	Fixed -t option (target path)
	Changed from read to mmap for bttv cards
	Added input and norm selection
	Added alarm signal handler and snapshot (-a) option
	(does not work with bttv....)
	
0.2	froze 0.2
	Updated README and TODO
	Added SMS and mail alert messages
	Changed file name format to YYYYMMDDHHMMSS-fn.jpg
	(fn=framenumber)
	Added deamonize option
	Cleaned up includes
	Decaying reference picture added
	Renamed image1 and image2 to image_ref and image_new

0.1	Initial release
