Qt Multimedia C++ Classes

The C++ classes provide more control over the multimedia content than the QML alternatives. If your application is serving complex use cases such as decoding media files, accessing video or audio buffers, use the C++ alternative. For more details about the complex audio, video, and camera use cases supported by the C++ classes, refer to Multimedia Overview.

Namespaces

QAudio

Contains enums used by the audio classes

QMediaMetaData

Provides identifiers for meta-data attributes

QMultimedia

Contains miscellaneous identifiers used throughout the Qt Multimedia library

Classes

Qt Multimedia Module

QAbstractAudioDeviceInfo

Base class for audio backends

QAbstractAudioInput

Access for QAudioInput to access the audio device provided by the plugin

QAbstractAudioOutput

Base class for audio backends

QAbstractPlanarVideoBuffer

Abstraction for planar video data

QAbstractVideoBuffer

Abstraction for video data

QAbstractVideoFilter

Represents a filter that is applied to the video frames received by a VideoOutput type

QAbstractVideoSurface

Base class for video presentation surfaces

QAudioBuffer

Represents a collection of audio samples with a specific format and sample rate

QAudioBuffer::StereoFrame

Simple wrapper for a stereo audio frame

QAudioDecoder

Allows decoding audio

QAudioDecoderControl

Access to the audio decoding functionality of a QMediaService

QAudioDeviceInfo

Interface to query audio devices and their functionality

QAudioEncoderSettings

Set of audio encoder settings

QAudioFormat

Stores audio stream parameter information

QAudioInput

Interface for receiving audio data from an audio input device

QAudioOutput

Interface for sending audio data to an audio output device

QAudioProbe

Allows you to monitor audio being played or recorded

QAudioRecorder

Used for the recording of audio

QAudioSystemPlugin

Abstract base for audio plugins

QCamera

Interface for system camera devices

QCamera::FrameRateRange

A FrameRateRange represents a range of frame rates as minimum and maximum rate

QCameraExposure

Interface for exposure related camera settings

QCameraFocus

Interface for focus and zoom related camera settings

QCameraFocusZone

Information on zones used for autofocusing a camera

QCameraImageCapture

Used for the recording of media content

QCameraImageProcessing

Interface for image processing related camera settings

QCameraInfo

General information about camera devices

QCameraViewfinderSettings

Set of viewfinder settings

QCameraViewfinderSettingsControl2

Access to the viewfinder settings of a camera media service

QImageEncoderSettings

Set of image encoder settings

QMediaBindableInterface

The base class for objects extending media objects functionality

QMediaContent

Access to the resource relating to a media content

QMediaObject

Common base for multimedia objects

QMediaPlayer

Allows the playing of a media source

QMediaPlaylist

List of media content to play

QMediaRecorder

Used for the recording of media content

QMediaTimeInterval

Represents a time interval with integer precision

QMediaTimeRange

Represents a set of zero or more disjoint time intervals

QSound

Method to play .wav sound files

QSoundEffect

Way to play low latency sound effects

QVideoEncoderSettings

Set of video encoder settings

QVideoFilterRunnable

Represents the implementation of a filter that owns all graphics and computational resources, and performs the actual filtering or calculations

QVideoFrame

Represents a frame of video data

QVideoProbe

Allows you to monitor video frames being played or recorded

QVideoSurfaceFormat

Specifies the stream format of a video presentation surface

Qt Multimedia Widgets Module

QCameraViewfinder

Camera viewfinder widget

QGraphicsVideoItem

Graphics item which display video produced by a QMediaObject

QVideoWidget

Widget which presents video produced by a media object

QVideoWidgetControl

Media control which implements a video widget

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.