/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the documentation of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/

/*!
    \page qtmultimedia-index.html
    \title Qt Multimedia
    \brief The Qt Multimedia module provides APIs for audio, video, radio, and
    camera-related functionality.

    Qt Multimedia is an essential module that provides a rich set of QML types
    and C++ classes to handle multimedia content. It also provides necessary
    APIs to access the camera and radio functionality. The included
    \l{Qt Audio Engine QML Types}{Qt Audio Engine} provides types for
    3D positional audio playback and content management.

    The functionality of this module is divided into the following submodules:

    \table
     \row
      \li \l{QtMultimedia}{Qt Multimedia}
      \li Provides API for multimedia-specific use cases.
     \row
      \li \l{QtMultimediaWidgets}{Qt Multimedia Widgets}
      \li Provides the widget-based multimedia API.
    \endtable

   \section1 Getting Started

    The QML types can be imported into your applciation using the following
    import statement in your \c {.qml} file.

    \code
     import QtMultimedia 5.8
    \endcode

    If you intend to use the C++ classes in your application, include the C++
    definitions using the following directive:

    \code
      #include <QtMultimedia>
      #include <QtMultimediaWidgets>
    \endcode

    \note If you are using a few classes from this module, we recommend
    including those specific classes only instead of the module.

    To link against the corresponding C++ libraries, add the following to your
    \c {qmake} project file:

   \code
     QT += multimedia multimediawidgets
   \endcode

    \section1 QML Types and C++ Classes

    The following is a list of important QML types and C++ classes provided by
    this module:

    \table
    \header
     \li Type
     \li Description
    \row
     \li \l {QtMultimedia::Audio}{Audio}
     \li Add audio playback functionality to a scene
    \row
     \li \l {QtMultimedia::Playlist}{Playlist}
     \li For specifying a list of media to be played.
    \row
     \li \l {QtMultimedia::Camera}{Camera}
     \li Access camera viewfinder frames
    \row
     \li MediaPlayer
     \li Add media playback functionality to a scene. It is same as Audio type,
     but can be used for video playback with the VideoOutput type.
    \row
     \li \l {QtMultimedia::Radio}{Radio}
     \li Access radio functionality
    \row
     \li \l {QtMultimedia::Video}{Video}
     \li Add Video playback functionality to a scene. It uses MediaPlayer and
     VideoOutput types to provide video playback functionality.
    \endtable

    \table
    \header
     \li Class
     \li Description
    \row
     \li QAudioOutput
     \li Sends audio data to an audio output device
    \row
     \li QAudioRecorder
     \li Record media content from an audio source.
    \row
     \li QCamera
     \li Access camera viewfinder.
    \row
     \li QCameraImageCapture
     \li Capture still images with a camera.
    \row
     \li QMediaRecorder
     \li Record media content from a camera or radio tuner source.
    \row
     \li QMediaPlayer
     \li Playback media from a source.
    \row
     \li QMediaPlaylist
     \li List of media to be played.
    \row
     \li QRadioTuner
     \li Access radio device.
    \row
     \li QAbstractVideoSurface
     \li Base class for video presentation.
    \endtable

    \section1 Licenses and Attributions

    The Qt Quick Multimedia module is available under commercial licenses from \l{The Qt Company}.
    In addition, it is available under free software licenses. Since Qt 5.4,
    these free software licenses are
    \l{GNU Lesser General Public License, version 3}, or
    the \l{GNU General Public License, version 2}.
    See \l{Qt Licensing} for further details.

    \section1 Related Information

    \section2 Guides
     \list
      \li \l Multimedia - overview of multimedia support in Qt
      \li \l{Audio Overview}
      \li \l{Video Overview}
      \li \l{Camera Overview}
      \li \l{Radio Overview}
     \endlist

    \section2 Platform Notes

    The \l{Qt Multimedia Backends} wiki provides a summary of features
    supported by each platform plugin made available by this module. The
    following topics provide more platform-specific information.

     \list
      \li \l{Qt Multimedia on Windows}{Windows}
      \li \l{Qt Multimedia on iOS}{iOS}
     \endlist

    \section2 Reference
    \list
    \li Qt Multimedia
    \list
        \li \l{Qt Multimedia QML Types}{QML Types}
        \li \l{Qt Multimedia C++ Classes}{C++ Classes}
    \endlist
    \endlist

    \list
    \li Qt Audio Engine
    \list
        \li \l{Qt Audio Engine QML Types}{QML Types}
    \endlist
    \endlist

    \section2 Examples
     \list
      \li \l{Qt Multimedia Examples}
     \endlist
*/
