14QList<QMediaFormat::FileFormat> QPlatformMediaFormatInfo::supportedFileFormats(
const QMediaFormat &constraints, QMediaFormat::ConversionMode m)
const
16 std::set<QMediaFormat::FileFormat> formats;
18 const auto &codecMap = (m == QMediaFormat::Encode) ? encoders : decoders;
19 for (
const auto &m : codecMap) {
20 if (constraints.audioCodec() != QMediaFormat::AudioCodec::Unspecified && !m.audio.contains(constraints.audioCodec()))
22 if (constraints.videoCodec() != QMediaFormat::VideoCodec::Unspecified && !m.video.contains(constraints.videoCodec()))
24 formats.insert(m.format);
26 return { formats.begin(), formats.end() };
29QList<QMediaFormat::AudioCodec> QPlatformMediaFormatInfo::supportedAudioCodecs(
const QMediaFormat &constraints, QMediaFormat::ConversionMode m)
const
31 std::set<QMediaFormat::AudioCodec> codecs;
33 const auto &codecMap = (m == QMediaFormat::Encode) ? encoders : decoders;
34 for (
const auto &m : codecMap) {
35 if (constraints.fileFormat() != QMediaFormat::UnspecifiedFormat && m.format != constraints.fileFormat())
37 if (constraints.videoCodec() != QMediaFormat::VideoCodec::Unspecified && !m.video.contains(constraints.videoCodec()))
39 for (
const auto &c : m.audio)
43 return { codecs.begin(), codecs.end() };
46QList<QMediaFormat::VideoCodec> QPlatformMediaFormatInfo::supportedVideoCodecs(
const QMediaFormat &constraints, QMediaFormat::ConversionMode m)
const
48 std::set<QMediaFormat::VideoCodec> codecs;
50 const auto &codecMap = (m == QMediaFormat::Encode) ? encoders : decoders;
51 for (
const auto &m : codecMap) {
52 if (constraints.fileFormat() != QMediaFormat::UnspecifiedFormat && m.format != constraints.fileFormat())
54 if (constraints.audioCodec() != QMediaFormat::AudioCodec::Unspecified && !m.audio.contains(constraints.audioCodec()))
56 for (
const auto &c : m.video)
59 return { codecs.begin(), codecs.end() };
62bool QPlatformMediaFormatInfo::isSupported(
const QMediaFormat &format, QMediaFormat::ConversionMode m)
const
64 const auto &codecMap = (m == QMediaFormat::Encode) ? encoders : decoders;
66 for (
const auto &m : codecMap) {
67 if (m.format != format.fileFormat())
69 if (format.audioCodec() != QMediaFormat::AudioCodec::Unspecified && !m.audio.contains(format.audioCodec()))
71 if (format.videoCodec() != QMediaFormat::VideoCodec::Unspecified && !m.video.contains(format.videoCodec()))