Qt Multimedia Documentation

AOMedia Video 1

Advanced Audio Coding

Advanced FFmpeg Configuration

Enable logging from FFmpeg and the Qt FFmpeg media backend

Enable experimental FFmpeg codecs

Configuring allowed network protocols

Configure hardware acceleration in backends

Advanced Video Coding

Android foreground service permission

Android supported media formats

Apple Lossless Audio Codec

Audio Devices Example

Running the Example

Audio Output Example

Running the Example

Audio Overview

raw access

Audio Features

Audio Implementation Details

Playing Compressed Audio

Recording Audio to a File

Low Latency Sound Effects

Low Level Audio Playback and Recording

Push and Pull

Decoding Compressed Audio to Memory

Spatial Audio

Reference Documentation

C++ Classes

QML Types

Examples

Audio QML Type

Audio Recorder Example

Running the Example

Displaying the Window and Audio Settings

Recording Audio

Audio Source Example

Running the Example

Audio Video Interleave

Building FFmpeg from source

Windows

macOS

Linux

iOS

Building FFmpeg from source for iOS on macOS

Preparing build environment

Getting the FFmpeg source code

Configuring and building FFmpeg

Creating iOS frameworks from FFmpeg libraries

Creating a multiplatform binary framework bundle

Embedding frameworks

Building FFmpeg from source on Linux

Get the FFmpeg source code

Prerequisites

Installing packages

Configuring and building FFmpeg

Hardware Acceleration

Disabling Autodetect

RPATH and RUNPATH on Linux

Building FFmpeg

Building FFmpeg from source on Windows

Get the FFmpeg source code

Prerequisites

Installing MSYS2

Preparing the MSYS environment for building with Mingw-w64

Preparing the MSYS2 environment for the MSVC

Configuring and building FFmpeg

Building FFmpeg from source on macOS

Get the FFmpeg source code

Prerequisites

Installing Homebrew

Installing Homebrew packages

Configuring and building FFmpeg

Configuring and Building FFmpeg Universal Binaries

Building Qt Multimedia from sources

Building from source

Platform Notes

Linux

Camera Overview

camera_image_processing

Camera Features

The Lens Assembly

The Sensor

Image Processing

Recording for Posterity

Camera Implementation Details

Detecting and Selecting a Camera

Preview

Still Images

Movies

Controlling the Imaging Pipeline

Focus and Zoom

Exposure, Shutter Speed and Flash

Image Processing

Canceling Asynchronous Operations

Examples

C++ Examples

QML Examples

Reference Documentation

C++ Classes

QML Types

Camera Example

Running the Example

The Camera constructor

setCamera()

Triggering capturing

AudioInput

AudioOutput

Camera

CapturableWindow

CaptureSession

Changes to Qt Multimedia

New features in Qt 6

Removed features

Changed features

DOF

Dolby Digital

Dolby Digital Plus (EAC3)

Dolby TrueHD

FFmpeg, version n7.1

Free Lossless Audio Codec

GStreamer

High Efficiency Video Coding (HEVC)

ISO 639-2 code

ImageCapture

Info.plist

MIME type

MPEG-1

MPEG-1 Audio Layer III or MPEG-2 Audio Layer III

MPEG-2

MPEG-4

MPEG-4 Part 3 or MPEG-4 Audio (formally ISO/IEC 14496-3)

Matroska (MKV)

Media Player Example

Running the Example

MediaDevices

MediaPlayer

MediaRecorder

MotionJPEG

Multimedia Overview

Features

Multimedia Components

Multimedia Recipes

Limitations

Changes from Previous Versions

Reference Documentation

Ogg

Ogg Vorbis

Opus Audio Format

QML Camera Application

Running the Example

Application structure

Using screen orientation to select layout

Controls for capturing

Image capturing

Zoom control

Flash and torch control

QML Media Player Example

Running the Example

Instantiating the MediaPlayer

Playback Controls

Playback Seeking and Audio

Metadata and Track Information

QML Video Example

Running the Example

Application Structure

Calculating and Displaying QML Painting Rate

QML Video Recorder

Running the Example

Overview

Recording

captureSession

recorder

controls

Selecting a video source

Selecting an audio input

Screen Capture Limitations

QT_NO_FFMPEG_XCODE_EMBED_FRAMEWORKS_CODE_SIGN_ON_COPY

cmake-variable-QT_NO_FFMPEG_XCODE_EMBED_FRAMEWORKS_CODE_SIGN_ON_COPY

Window Capture Limitations

Qt Multimedia

Getting started

Overviews and important topics

QML types

C++ classes

Licenses and attributions

Target platform and backend notes

The FFmpeg backend

Native backends

Changing backends

Target platform notes

Permissions

Reference and examples

Qt Multimedia C++ Classes

Namespaces

Classes

Qt Multimedia Module

Qt Multimedia Widgets Module

Qt Spatial Audio Module

Qt Multimedia GStreamer backend

Limitations and Known Issues

Customization points

Raw pipeline access

Custom GStreamer elements as sinks and sources

QMediaPlayer: custom sources

Architectural Considerations.

Qt Multimedia Widgets

Getting Started

References

Examples

Qt Multimedia on Linux

Audio backend requirements

Limitations on Linux using the Wayland compositor

Qt Multimedia on WebAssembly

Limitations

Qt Multimedia on Windows

Notes on COM

Qt Multimedia on macOS and iOS

Limitations

Use of FFmpeg libraries on iOS

QuickTime

Screen Capture Example

Running the Example

Application Structure

ScreenCapture

Screen Capture Limitations

Sonification

SoundEffect

Theora

VP8

VP9

Video

Video Graphics Item Example

Running the Example

Video Overview

Video Features

Video Implementation Details

Playing Video in C++

Playing Video in QML

Working with Low Level Video Frames

Recording Video

Supported Media Formats

Windows

Android

Linux

Minimum Required GStreamer Plugins

Determining Supported Media Formats at Runtime

Examples

C++ Examples

QML Examples

Reference Documentation

C++ Classes

QML Types

Video Widget Example

Running the Example

VideoOutput

Waveform Audio File Format

WebM

WindowCapture

Window Capture Limitations

Windows Media Audio

Windows Media Player

Windows Media Player documentation

Windows Media Video

audioDevice

boost

cameraDevice

cameraFormat

codec guide

gstreamer

hyperfocal

libjpeg

loudness

mediaFormat

mediaMetaData

photo glossary

pixel format

qt_add_ios_ffmpeg_libraries

qt6_add_ios_ffmpeg_libraries

Synopsis

Description

qtqml import syntax

volume controls

zlib

Qt Multimedia Examples

Qt Multimedia Module C++ Classes

Using the Module

Building with CMake

Qt Multimedia Widgets C++ Classes

Qt Multimedia QML Types

QML Types

Qt Spatial Audio Module