.. image:: images/noun_Media_166644.svg The Qt Multimedia module provides APIs for playing back and recording audiovisual content Qt Multimedia is an add-on module that provides a rich set of QML types and C++ classes to handle multimedia content. It contains an easy to use API for playing back audio and video files and rendering those on screen, as well as a comprehensive API for recording audio and video from the systems cameras and microphones. The functionality of this module is divided into the following submodules: +---------------------------------------------------+-----------------------------------------------+ |:ref:`Qt Multimedia` |Provides API for multimedia-specific use cases.| +---------------------------------------------------+-----------------------------------------------+ |:ref:`Qt Multimedia Widgets`|Provides the widget-based multimedia API. | +---------------------------------------------------+-----------------------------------------------+ Getting started ^^^^^^^^^^^^^^^ If you are porting from Qt 5 to Qt 6 see :ref:`Changes to Qt Multimedia` . To include the definitions of modules classes, use the following directive: :: import PySide6.QtMultimedia The module also provides QML `types `_ . Overviews and Important Topics ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ * :ref:`Changes in Qt 6` * :ref:`Multimedia Overview` * :ref:`Audio Overview` * :ref:`Video Overview` * :ref:`Camera Overview` * :ref:`Supported Media Formats` QML Types ^^^^^^^^^ The following table outlines some important QML types. +------------------+---------------------------------------------------------------------+ |Type |Description | +------------------+---------------------------------------------------------------------+ |`MediaPlayer`_ |Add audio/video playback functionality to a scene. | +------------------+---------------------------------------------------------------------+ |`CaptureSession`_ |Create a session for capturing audio/video. | +------------------+---------------------------------------------------------------------+ |`Camera`_ |Access a camera connected to the system. | +------------------+---------------------------------------------------------------------+ |`AudioInput`_ |Access an audio input (microphone) connected to the system. | +------------------+---------------------------------------------------------------------+ |`AudioOutput`_ |Access an audio output (speaker, headphone) connected to the system. | +------------------+---------------------------------------------------------------------+ |`VideoOutput`_ |Display video content. | +------------------+---------------------------------------------------------------------+ |`MediaRecorder`_ |Record audio/video from the `CaptureSession`_ . | +------------------+---------------------------------------------------------------------+ |`ImageCapture`_ |Capture still images from the Camera. | +------------------+---------------------------------------------------------------------+ |`Video`_ |Add Video playback functionality to a scene. Uses `MediaPlayer`_ and | | |`VideoOutput`_ types to provide video playback functionality. | +------------------+---------------------------------------------------------------------+ .. _MediaPlayer: https://doc.qt.io/qt-6/qml-qtmultimedia-mediaplayer.html .. _CaptureSession: https://doc.qt.io/qt-6/qml-qtmultimedia-capturesession.html .. _Camera: https://doc.qt.io/qt-6/qml-qtmultimedia-camera.html .. _AudioInput: https://doc.qt.io/qt-6/qml-qtmultimedia-audioinput.html .. _AudioOutput: https://doc.qt.io/qt-6/qml-qtmultimedia-audiooutput.html .. _VideoOutput: https://doc.qt.io/qt-6/qml-qtmultimedia-videooutput.html .. _MediaRecorder: https://doc.qt.io/qt-6/qml-qtmultimedia-mediarecorder.html .. _ImageCapture: https://doc.qt.io/qt-6/qml-qtmultimedia-imagecapture.html .. _Video: https://doc.qt.io/qt-6/qml-qtmultimedia-video.html C++ Classes ^^^^^^^^^^^ The following table outlines some important C++ Classes +------------------------------------------------------------------------+--------------------------------------------------------------------+ |Class |Description | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QMediaPlayer` |Playback media from a source. | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QVideoWidget` |Display video from a media player or a capture session. | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QMediaCaptureSession`|Capture audio and video. | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QCamera` |Access a camera connected to the system | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QAudioInput` |Access an audio input (microphone) connected to the system. | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QAudioOutput` |Access an audio output (speaker, headphone) connected to the system.| +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QImageCapture` |Capture still images with a camera. | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QMediaRecorder` |Record media content from a capture session. | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QVideoSink` |Access and render individual video frames. | +------------------------------------------------------------------------+--------------------------------------------------------------------+ |:class:`QAudioSink` |Sends raw audio data to an audio output device. | +------------------------------------------------------------------------+--------------------------------------------------------------------+ For playback :class:`QMediaPlayer` , :class:`QAudioOutput` and QVideoOutput contain all the required functionality. The other classes are used for capturing audio and video content, where the :class:`QMediaCaptureSession` is the central class managing the whole capture/recording process.