summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicholas Bennett <nicholas.bennett@qt.io>2021-12-13 14:42:55 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-12-14 18:36:24 +0000
commitb043135725f72aa1963247425c03778c60d87973 (patch)
treef3efb3247bebadd074162804ce2ff2d182e3a1a8
parentca48a9707c24e5d66540bbe735442a2e0ad0b863 (diff)
Docs: Add supported media format information
-Added supported media format information to video overview page. -Added links to this information, where appropriate. -Reorganized some information on the index page to make this easier to find. Task-number: QTBUG-96599 Change-Id: I94810792523f3b7291bda41b18ae78267f3bdc21 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit 5f0f86398f0171180d55671e9395ab091c254a66) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/multimedia/doc/src/audiooverview.qdoc9
-rw-r--r--src/multimedia/doc/src/multimedia-overview.qdoc1
-rw-r--r--src/multimedia/doc/src/qm-external-pages.qdoc26
-rw-r--r--src/multimedia/doc/src/qtmultimedia-index.qdoc22
-rw-r--r--src/multimedia/doc/src/videooverview.qdoc42
5 files changed, 83 insertions, 17 deletions
diff --git a/src/multimedia/doc/src/audiooverview.qdoc b/src/multimedia/doc/src/audiooverview.qdoc
index 045a7617c..d47df5566 100644
--- a/src/multimedia/doc/src/audiooverview.qdoc
+++ b/src/multimedia/doc/src/audiooverview.qdoc
@@ -55,12 +55,9 @@ high level approaches to: audio input, output and processing.
For playing media or audio files that are not simple, uncompressed audio, you
can use the QMediaPlayer C++ class, or the \l{MediaPlayer} QML type.
The QMediaPlayer class and associated QML types are also capable of playing
-\l{multimedia-playing-video}{video}, if required. The audio formats
-that the player supports depends on:
-\list
- \li The operating system environment.
- \li Any decoder plugins the user may have installed.
-\endlist
+\l{multimedia-playing-video}{video}, if required.
+
+See \l{Supported Media Formats} for more detail.
The media player needs to be connected to a QAudioOutput object (or the QML AudioOutput
element) to play back audio.
diff --git a/src/multimedia/doc/src/multimedia-overview.qdoc b/src/multimedia/doc/src/multimedia-overview.qdoc
index bebb59ca1..2547ffc50 100644
--- a/src/multimedia/doc/src/multimedia-overview.qdoc
+++ b/src/multimedia/doc/src/multimedia-overview.qdoc
@@ -147,6 +147,7 @@ For some quick recipes, see this table:
The Qt Multimedia APIs build upon the multimedia framework of the underlying
platform. This can mean that support for various codecs, or containers will vary
between machines. This support depends on what the end user has installed.
+See \l{Supported Media Formats} for more detail.
\section1 Changes from Previous Versions
diff --git a/src/multimedia/doc/src/qm-external-pages.qdoc b/src/multimedia/doc/src/qm-external-pages.qdoc
index 97964b059..dcd5e9138 100644
--- a/src/multimedia/doc/src/qm-external-pages.qdoc
+++ b/src/multimedia/doc/src/qm-external-pages.qdoc
@@ -240,3 +240,29 @@
\externalpage https://en.wikipedia.org/wiki/Theora
\title Theora
*/
+
+/*!
+ \externalpage https://en.wikipedia.org/wiki/Windows_Media_Player
+ \title Windows Media Player
+*/
+
+
+/*!
+ \externalpage https://support.microsoft.com/en-us/topic/file-types-supported-by-windows-media-player-32d9998e-dc8f-af54-7ba1-e996f74375d9
+ \title Windows Media Player documentation
+*/
+
+/*!
+ \externalpage https://www.codecguide.com/guides.htm
+ \title codec guide
+*/
+
+/*!
+ \externalpage https://developer.android.com/guide/topics/media/media-formats
+ \title Android supported media formats
+*/
+
+/*!
+ \externalpage https://gstreamer.freedesktop.org/
+ \title GStreamer
+*/
diff --git a/src/multimedia/doc/src/qtmultimedia-index.qdoc b/src/multimedia/doc/src/qtmultimedia-index.qdoc
index 5461d82b5..e3c7fed37 100644
--- a/src/multimedia/doc/src/qtmultimedia-index.qdoc
+++ b/src/multimedia/doc/src/qtmultimedia-index.qdoc
@@ -92,6 +92,17 @@
target_link_libraries(my_project PUBLIC Qt::Multimedia)
\endcode
+ \section1 Overviews and Important Topics
+
+ \list
+ \li \l{Changes to Qt Multimedia}{Changes in Qt 6}
+ \li \l{Multimedia Overview}
+ \li \l{Audio Overview}
+ \li \l{Video Overview}
+ \li \l{Camera Overview}
+ \li \l{Supported Media Formats}
+ \endlist
+
\section1 QML Types
The following table outlines some important QML types.
@@ -184,17 +195,6 @@
the \l{GNU General Public License, version 2}.
See \l{Qt Licensing} for further details.
- \section1 Related information
-
- \section2 Guides
- \list
- \li \l{Changes to Qt Multimedia}{Changes in Qt 6}
- \li \l{Multimedia Overview}
- \li \l{Audio Overview}
- \li \l{Video Overview}
- \li \l{Camera Overview}
- \endlist
-
\section2 Platform notes
For most features, Qt Multimedia builds upon the multimedia framework of the
diff --git a/src/multimedia/doc/src/videooverview.qdoc b/src/multimedia/doc/src/videooverview.qdoc
index 928f3cc78..2988c6e7f 100644
--- a/src/multimedia/doc/src/videooverview.qdoc
+++ b/src/multimedia/doc/src/videooverview.qdoc
@@ -80,6 +80,48 @@ The central class for any type of capturing or recording of audio and video is Q
(or the CaptureSession QML type). You can connect a QCamera (Camera in QML) and a QMediaRecorder
(MediaRecorder)to the session and then ask the media recorder to start recording.
+\section1 Supported Media Formats
+
+What media formats are supported ultimately depends on the configuration of the
+target system.
+
+\section2 Windows
+By default what is available on a MS Windows target depends on the version of
+\l{Windows Media Player} that was packaged with the OS. See the
+\l{Windows Media Player documentation} for official information.
+
+Independent of Windows Media Player, there are of course numerous codec packs
+that could be installed. See the \l{codec guide} site for some examples.
+
+\section2 Android
+See \l{Android supported media formats} for this information.
+
+\section2 Linux
+On Linux this is about installing the correct \l{GStreamer} plugins.
+
+\section3 Minimum Required GStreamer Plugins
+\list
+\li gstreamer1.0-plugins-base
+\li gstreamer1.0-plugins-good
+\li gstreamer1.0-plugins-pulseaudio
+\endlist
+
+For a Linux desktop target, it is strongly recommended to have \c gstreamer1.0-libav
+for good codec coverage and \c gstreamer1.0-vaapi to get hardware acceleration.
+
+On embedded Linux, the required set of plugins could be somewhat different.
+
+\section2 Determining Supported Media Formats at Runtime
+You can determine what formats are available on a target system at runtime using
+the static QMediaFormat API.
+
+\list
+\li Use \l QMediaFormat::isSupported() on a QMediaFormat::ConversionMode to query a
+ specific format.
+\li Use \l QMediaFormat::supportedFileFormats() on a default constructed QMediaFormat
+ to get all the supported file formats.
+\endlist
+
\section1 Examples
There are both C++ and QML examples available.