summaryrefslogtreecommitdiff
path: root/src/multimedia/doc/src/qtmultimedia-index.qdoc
blob: 5e4ba3c583b128a9dc90d8a3aacc1eaba2937ac5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
/****************************************************************************
**
** 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
*/