Qt 5.9 introduces many new features and improvements as well as bugfixes
over the 5.8.x series. For more details, refer to the online documentation
included in this distribution. The documentation is also available online:

http://doc.qt.io/qt-5/index.html

The Qt version 5.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.

Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:

https://bugreports.qt.io/

Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.

****************************************************************************
*                          Library                                         *
****************************************************************************

QtMutlimedia
------------

 - [QTBUG-45323] Added new supportedModes property in the CameraFlash's QML API

 - [QTBUG-44961] Added new notifyInterval property in the MediaPlayer's QML API.

 - [QTBUG-45289] Added new supportedResolution property in the CameraCaptures's
   QML API.

 - [QTBUG-57145] Fixed high dpi scaling with QVideoWidget.


****************************************************************************
*                      Platform Specific Changes                           *
****************************************************************************

Android
-------

 - [QTBUG-55992] Added run-time permission checks for the media-recorder,
   camera, and audio input.

 - [QTBUG-60115] Fixed crash caused by stale video-frame objects.

 - [QTBUG-56536] Fixed Camera preview orientation on devices running on
   Android devices with API level 24 or newer.

DirectShow
----------

 - [QTBUG-56415] Added support for audio and video probes in the
   mediaplayer.

GStreamer
---------

 - Added QT_GSTREAMER_PLAYBIN_AUDIOSINK environment variable, for setting
   a custom audio sink to be used together with the media player.

 - Improved the list of default recording formats.

 - [QTBUG-50460] Fixed potential crash when using multiple mediaplayers.

 - [QTBUG-50567] Improved codec support by dynamically compiling the list of
   supported codecs through QGstCodecsInfo.

WinRT
-----

 - [QTBUG-58152] Fixed video playback without autoplay enabled.

 - [QTBUG-57288] Removed support for WinRT 81 and Windows Phone 8.1.
