- Qt 6.8
- Qt Multimedia
- Qt Multimedia Module C++ Classes
- Qt 6.8.1 Reference Documentation

# Qt Multimedia Module C++ Classes

The Qt Multimedia module provides audio, video and camera functionality. More...

## Namespaces

QtAudio | Contains enums used by the audio classes
QtVideo | Enumerations for camera and video functionality

## Classes

QAbstractVideoBuffer | Abstraction for video data
QAbstractVideoBuffer::MapData | QAbstractVideoBuffer::MapData structure describes the mapped plane layout
QAudioBuffer | Represents a collection of audio samples with a specific format and sample rate
QAudioBufferInput | Used for providing custom audio buffers to QMediaRecorder through QMediaCaptureSession
QAudioBufferOutput | Used for capturing audio data provided by QMediaPlayer
QAudioDecoder | Implements decoding audio
QAudioDevice | Information about audio devices and their functionality
QAudioFormat | Stores audio stream parameter information
QAudioInput | Represents an input channel for audio
QAudioOutput | Represents an output channel for audio
QAudioSink | Interface for sending audio data to an audio output device
QAudioSource | Interface for receiving audio data from an audio input device
QCamera | Interface for system camera devices
QCameraDevice | General information about camera devices
QCameraFormat | Describes a video format supported by a camera device
QCapturableWindow | Used for getting the basic information of a capturable window
QImageCapture | Used for the recording of media content
QMediaCaptureSession | Allows capturing of audio and video content
QMediaDevices | Information about available multimedia input and output devices
QMediaFormat | Describes an encoding format for a multimedia file or stream
QMediaMetaData | Provides meta-data for media files
QMediaPlayer | Allows the playing of a media files
QMediaRecorder | Used for encoding and recording a capture session
QMediaTimeRange | Represents a set of zero or more disjoint time intervals
QMediaTimeRange::Interval | QMediaTimeRange::Interval class represents a time interval with integer precision
QScreenCapture | This class is used for capturing a screen
QSoundEffect | Way to play low latency sound effects
QVideoFrame | Represents a frame of video data
QVideoFrameFormat | Specifies the stream format of a video presentation surface
QVideoFrameInput | Used for providing custom video frames to QMediaRecorder or a video output through QMediaCaptureSession
QVideoSink | Represents a generic sink for video data
QWindowCapture | This class is used for capturing a window

## Detailed Description

### Using the Module

Using a Qt module requires linking against the module library, either directly or through other dependencies. Several build tools have dedicated support for this, including CMake and qmake.

#### Building with CMake

Use the `find_package()` command to locate the needed module components in the `Qt6` package:

     find_package(Qt6 REQUIRED COMPONENTS Multimedia)
     target_link_libraries(mytarget PRIVATE Qt6::Multimedia)