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
- audioCodec : AudioCodec
- fileFormat : FileFormat
- videoCodec : VideoCodec
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:
- File format
- Video codec
- 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.