v4l1-compat-0.6 (V4L2 apps stay working)
----------------------------------------
* Do not go into emulation mode of rgb24 immediately, but only after a
  GPICT ioctl which has not been preceded by a SPICT ioctl, AKA do not get
  in the way of V4L2 read calls by doing conversion on them
* Do not get in the way of mmap calls made by V4L2 applications
* Fix swapping of red and blue in bayer -> bgr24 decode routine
* Remember the v4l1 palette asked for with SPICT and return that, as
  otherwise we loose information when going v4l1 -> v4l2 -> v4l1, for example
  YUV420P becomes YUV420, which are separate in v4l1.


v4l1-compat-0.5 (perfect camorama)
----------------------------------
* Allow changing of format after the buffers have been mapped, by tearing
  down the entire house, changing the fundament and then rebuilding it.
  Now changing the capture resolution in camorama works!
* Fix jpeg decoding error reporting
* Allow jpeg's with a height which is a multiple of 8 (was 16)
* Remove a number of pretty new VIDIOCXXX -> string mappings from log.c,
  fixing compiling with somewhat older kernels


v4l1-compat 0.4
---------------
* Do not even try to change the format in v4l1_compat_set_format(), unless
  _really_ necessary.
* Cleanup ambigious use of src_format (no functional changes)
* Drop the mmap hack for zerocopy access under certain conditions, one of them
  that the cam can deliver the requested format. Although avoiding the
  memcpy in this scenarios is a good thing todo, there were several issues
  with the 0.3 implementation of this, fixing all these means adding lots of
  special cases all over the code. So instead we just drop support and
  always do atleast a memcpy (or a conversion). If an application cannot
  live with the speed penalty this imposes it should be ported to v4l2.
* Now that we've gotten rid of the zerocopy mmap hack, we can safely allow
  mixing read and mmap based IO.
* Explictly include linux/ioctl.h, to fix compile with kernel headers where
  linux/videodev.h doesn't.


v4l1-compat 0.3
---------------
* Don't allow multiple opens, in theory our code can handle it, but not all
  v4l2 devices like it (ekiga does it and uvc doesn't like it).


v4l1-compat 0.2
---------------
* When mmap gets passed an fd of -1 (anonymous map) don't look for it in our
  list of managed fds, as we use -1 to mark unused entries (fixes ekiga
  crashing). Also check for an fd of -1 in the other calls we intercept.
* In close() start with removing the fd from our list of managed fds, this must
  be done first, because as soon as we've done the actual close syscall, the
  fd maybe returned by an open in another thread and we don't want to intercept
  calls to this new fd.
* Make unknown v4l1 palette types a normal level log messages instead of an
  error.
* When an applicaiton changes the width / height through the CMCAPTURE ioctl
  remember the new width and height.
* If the devices initial v4l2 pixformat has no corresponding v4l1 palette, try
  setting a format which does (and which we emulate when necessary) so that
  applicactions which just query the current format (GPICT) and then take
  whatever they get will work (partially fixes camorama)
* Implement our own SWIN instead of using kernel compat layer, for more
  flexibility and better error checking


v4l1-compat 0.1
---------------
* Initial public release.
