W3cubDocs

/Qt

QMediaFormat Class

Describes an encoding format for a multimedia file or stream. More...

Header: #include <QMediaFormat>
CMake: find_package(Qt6 COMPONENTS Multimedia REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia

Public Types

enum class AudioCodec { WMA, AC3, AAC, ALAC, DolbyTrueHD, …, Unspecified }
enum ConversionMode { Encode, Decode }
enum FileFormat { WMA, AAC, Matroska, WMV, MP3, …, UnspecifiedFormat }
enum ResolveFlags { NoFlags, RequiresVideo }
enum class VideoCodec { VP8, MPEG2, MPEG1, WMV, H265, …, Unspecified }

Properties

Public Functions

QMediaFormat(QMediaFormat &&other)
QMediaFormat(const QMediaFormat &other)
QMediaFormat(QMediaFormat::FileFormat format = UnspecifiedFormat)
QMediaFormat & operator=(QMediaFormat &&other)
QMediaFormat & operator=(const QMediaFormat &other)
~QMediaFormat()
QMediaFormat::AudioCodec audioCodec() const
QMediaFormat::FileFormat fileFormat() const
bool isSupported(QMediaFormat::ConversionMode mode) const
QMimeType mimeType() const
void resolveForEncoding(QMediaFormat::ResolveFlags flags)
void setAudioCodec(QMediaFormat::AudioCodec codec)
void setFileFormat(QMediaFormat::FileFormat f)
void setVideoCodec(QMediaFormat::VideoCodec codec)
QList<QMediaFormat::AudioCodec> supportedAudioCodecs(QMediaFormat::ConversionMode m)
QList<QMediaFormat::FileFormat> supportedFileFormats(QMediaFormat::ConversionMode m)
QList<QMediaFormat::VideoCodec> supportedVideoCodecs(QMediaFormat::ConversionMode m)
QMediaFormat::VideoCodec videoCodec() const

Static Public Members

QString audioCodecDescription(QMediaFormat::AudioCodec codec)
QString audioCodecName(QMediaFormat::AudioCodec codec)
QString fileFormatDescription(QMediaFormat::FileFormat fileFormat)
QString fileFormatName(QMediaFormat::FileFormat fileFormat)
QString videoCodecDescription(QMediaFormat::VideoCodec codec)
QString videoCodecName(QMediaFormat::VideoCodec codec)

Detailed Description

QMediaFormat describes an encoding format for a multimedia file or stream.

You can check whether a certain media format can be used for encoding or decoding using QMediaFormat.

Member Type Documentation

enum class QMediaFormat::AudioCodec

Describes the audio codec used in multimedia file or stream.

Constant Value Description
QMediaFormat::AudioCodec::WMA 9 Windows Media Audio
QMediaFormat::AudioCodec::AC3 2 Dolby Digital
QMediaFormat::AudioCodec::AAC 1 Advanced Audio Coding
QMediaFormat::AudioCodec::ALAC 10 Apple Lossless Audio Codec
QMediaFormat::AudioCodec::DolbyTrueHD 5 Dolby TrueHD
QMediaFormat::AudioCodec::EAC3 3 Dolby Digital Plus (EAC3)
QMediaFormat::AudioCodec::MP3 0 MPEG-1 Audio Layer III or MPEG-2 Audio Layer III
QMediaFormat::AudioCodec::Wave 8 Waveform Audio File Format
QMediaFormat::AudioCodec::Vorbis 7 Ogg Vorbis
QMediaFormat::AudioCodec::FLAC 4 Free Lossless Audio Codec
QMediaFormat::AudioCodec::Opus 6 Opus Audio Format
QMediaFormat::AudioCodec::Unspecified -1 Unspecified codec

enum QMediaFormat::ConversionMode

In many cases, systems have asymmetric capabilities and can often decode more formats or codecs than can be encoded. This enum describes the requested conversion mode to be used when checking whether a certain file format or codec is supported.

Constant Value Description
QMediaFormat::Encode 0 Used to check whether a certain file format or codec can be encoded.
QMediaFormat::Decode 1 Used to check whether a certain file format or codec can be decoded.

See also supportedFileFormats, supportedAudioCodecs, and supportedVideoCodecs.

enum QMediaFormat::FileFormat

Describes the container format used in a multimedia file or stream.

Constant Value Description
QMediaFormat::WMA 9 Windows Media Audio
QMediaFormat::AAC 8 Advanced Audio Coding
QMediaFormat::Matroska 2 Matroska (MKV)
QMediaFormat::WMV 0 Windows Media Video
QMediaFormat::MP3 10 MPEG-1 Audio Layer III or MPEG-2 Audio Layer III
QMediaFormat::Wave 12 Waveform Audio File Format
QMediaFormat::Ogg 4 Ogg
QMediaFormat::MPEG4 3 MPEG-4
QMediaFormat::AVI 1 Audio Video Interleave
QMediaFormat::QuickTime 5 QuickTime
QMediaFormat::WebM 6 WebM
QMediaFormat::Mpeg4Audio 7 MPEG-4 Part 3 or MPEG-4 Audio (formally ISO/IEC 14496-3)
QMediaFormat::FLAC 11 Free Lossless Audio Codec
QMediaFormat::UnspecifiedFormat -1 The format is unspecified.

enum QMediaFormat::ResolveFlags

Describes the requirements for resolving a suitable format for QMediaRecorder.

Constant Value Description
QMediaFormat::NoFlags 0 No requirements
QMediaFormat::RequiresVideo 1 A video codec is required

See also resolveForEncoding().

enum class QMediaFormat::VideoCodec

Describes the video coded used in multimedia file or stream.

Constant Value Description
QMediaFormat::VideoCodec::VP8 5 VP8
QMediaFormat::VideoCodec::MPEG2 1 MPEG-2
QMediaFormat::VideoCodec::MPEG1 0 MPEG-1
QMediaFormat::VideoCodec::WMV 9 Windows Media Video
QMediaFormat::VideoCodec::H265 4 High Efficiency Video Coding (HEVC)
QMediaFormat::VideoCodec::H264 3 Advanced Video Coding
QMediaFormat::VideoCodec::MPEG4 2 MPEG-4
QMediaFormat::VideoCodec::AV1 7 AOMedia Video 1
QMediaFormat::VideoCodec::MotionJPEG 10 MotionJPEG
QMediaFormat::VideoCodec::VP9 6 VP9
QMediaFormat::VideoCodec::Theora 8 Theora
QMediaFormat::VideoCodec::Unspecified -1 Video codec not specified

Property Documentation

audioCodec : AudioCodec

This property holds the audio codec of the media.

Access functions:

QMediaFormat::AudioCodec audioCodec() const
void setAudioCodec(QMediaFormat::AudioCodec codec)

See also QMediaFormat::AudioCodec.

fileFormat : FileFormat

This property holds the file (container) format of the media.

Access functions:

QMediaFormat::FileFormat fileFormat() const
void setFileFormat(QMediaFormat::FileFormat f)

See also QMediaFormat::FileFormat.

videoCodec : VideoCodec

This property holds the video codec of the media.

Access functions:

QMediaFormat::VideoCodec videoCodec() const
void setVideoCodec(QMediaFormat::VideoCodec codec)

See also QMediaFormat::VideoCodec.

Member Function Documentation

QMediaFormat::QMediaFormat(QMediaFormat &&other)

Constructs a QMediaFormat objects by moving from other.

QMediaFormat::QMediaFormat(const QMediaFormat &other)

Constructs a QMediaFormat object by copying from other.

QMediaFormat::QMediaFormat(QMediaFormat::FileFormat format = UnspecifiedFormat)

Constructs a QMediaFormat object for format.

QMediaFormat &QMediaFormat::operator=(QMediaFormat &&other)

Moves other into this QMediaFormat objects.

QMediaFormat &QMediaFormat::operator=(const QMediaFormat &other)

Copies other into this QMediaFormat object.

QMediaFormat::~QMediaFormat()

Destroys the QMediaFormat object.

QMediaFormat::AudioCodec QMediaFormat::audioCodec() const

Returns the audio codec used in this format.

Note: Getter function for property audioCodec.

See also setAudioCodec() and QMediaFormat::AudioCodec.

[static invokable] QString QMediaFormat::audioCodecDescription(QMediaFormat::AudioCodec codec)

Returns a description for codec.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

[static invokable] QString QMediaFormat::audioCodecName(QMediaFormat::AudioCodec codec)

Returns a string based name for codec.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

[static invokable] QString QMediaFormat::fileFormatDescription(QMediaFormat::FileFormat fileFormat)

Returns a description for fileFormat.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

[static invokable] QString QMediaFormat::fileFormatName(QMediaFormat::FileFormat fileFormat)

Returns a string based name for fileFormat.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

[invokable] bool QMediaFormat::isSupported(QMediaFormat::ConversionMode mode) const

Returns true if Qt Multimedia can encode or decode this format, depending on mode.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

QMimeType QMediaFormat::mimeType() const

Returns the MIME type for the file format used in this media format.

void QMediaFormat::resolveForEncoding(QMediaFormat::ResolveFlags flags)

Resolves the format, based on flags, to a format that is supported by QMediaRecorder.

This method tries to find the best possible match for unspecified settings. Settings that are not supported by the recorder will be modified to the closest match that is supported.

When resolving, priority is given in the following order:

  1. File format
  2. Video codec
  3. Audio codec

void QMediaFormat::setAudioCodec(QMediaFormat::AudioCodec codec)

Sets the audio codec to codec.

Note: Setter function for property audioCodec.

See also audioCodec() and QMediaFormat::AudioCodec.

void QMediaFormat::setVideoCodec(QMediaFormat::VideoCodec codec)

Sets the video codec to codec.

Note: Setter function for property videoCodec.

See also videoCodec() and QMediaFormat::VideoCodec.

[invokable] QList<QMediaFormat::AudioCodec> QMediaFormat::supportedAudioCodecs(QMediaFormat::ConversionMode m)

Returns a list of audio codecs for the chosen file format and video codec (m).

To get all supported audio codecs, run this query on a default constructed QMediaFormat.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also QMediaFormat::ConversionMode.

[invokable] QList<QMediaFormat::FileFormat> QMediaFormat::supportedFileFormats(QMediaFormat::ConversionMode m)

Returns a list of file formats for the audio and video codec indicated by m.

To get all supported file formats, run this query on a default constructed QMediaFormat.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also QMediaFormat::ConversionMode.

[invokable] QList<QMediaFormat::VideoCodec> QMediaFormat::supportedVideoCodecs(QMediaFormat::ConversionMode m)

Returns a list of video codecs for the chosen file format and audio codec (m).

To get all supported video codecs, run this query on a default constructed MediaFormat.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

See also QMediaFormat::ConversionMode.

QMediaFormat::VideoCodec QMediaFormat::videoCodec() const

Returns the video codec used in this format.

Note: Getter function for property videoCodec.

See also setVideoCodec() and QMediaFormat::VideoCodec.

[static invokable] QString QMediaFormat::videoCodecDescription(QMediaFormat::VideoCodec codec)

Returns a description for codec.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

[static invokable] QString QMediaFormat::videoCodecName(QMediaFormat::VideoCodec codec)

Returns a string based name for codec.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qmediaformat.html