Merged revision(s) 30088-30093 from ptlib/branches/v2_12:
Added to MS Windows video output a context menu (right mouse button click) that allows changing the size of the window, and in particular a "full screen" mode. Also added a text output on the screen indicating the actual image size and frame rate.

Make sure tinyjpeg is compiled with optimiser even in debug mode. Simply too slow otherwise.

Allow MJPEG resolution to be on 8 pixel boundary and not 16 as JPEG can do 8x8 macroblocks and HD1080 is not actually divisible by 16!

Fixed error message output in tinyjpeg code.
Merged revision(s) 30088-30095 from ptlib/branches/v2_12:
Fixed the scaeled SI units string conversion for floating point.
Fixed GNU compile
Fixed silly gstreamer warning in a different way, for compatibility to different versions.
Optimisations for HD video:
  Use IPP colour conversion (YUV420P to BGR32 in particular) if available.
  Use libjpeg-turbo instead of tinyjpeg, if available.

Normalise the PJPEGFile to use new PJPEGConverter created for above.
Removed more MJPEG special cases, now moved into the specific converter.
Added missing GUID for I420 (aka YUV420P) format that a camera, e.g. the Logitech C920, can use instead of IYUV, which is also YUV420P. MJPEG was actually NOT required!
Changed test for libjpeg, older versions not good enough!
Make sure SetFrameSizeConverter() does not create a converter if the device can do the resolution natively.
Workaround for what seems a bug in autoconf, it fais to detect unsigned long long even though supported by compiler. So assume if either signed or unsigned types detected, both are really available.
everted previous attempt to deal with autocon detection of unsigned long long and tried a different method. Apparently need to do the configure test before setting all the other compiler flags. No idea why.
Removed #pragma interface for wxstring.h as there can't be a matching #ragme implmentation
Merged revision(s) 30096-30126 from ptlib/branches/v2_12:
Fixed memory/handle leak in "external thread" handling. Also tidied some logging in that area.
Merged revision(s) 30127-30134 from ptlib/branches/v2_12:
Fixed the setting of the "native flip" flag in DirectShow grabber, it appears to be dependent on the selected colour space.
Merged revision(s) 30135-30149 from ptlib/branches/v2_12:
Fixed reported link error, thanks  Sysolyatin Pavel
Merged revision(s) 30150-30156 from ptlib/branches/v2_12:
Fixed command line argument option string parsing, must have distinction between an empty option and no option present.
Merged revision(s) 30157-30158 from ptlib/branches/v2_12:
Fixed issue with std::iostream::flush() affecting the input side of the stream. It is really just to flush the output. This causes major issues with simultaneous reading/writing in threads, especially for TCP sockets.