From f62e7ba660b7214d609df30fe739e612584c1f32 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Mon, 8 Feb 2021 16:32:38 +0100 Subject: Cleanup QImageEncoderSettings Define a list of supported file formats, as with QMediaEncoderSettings. Implement support for detecting those on gstreamer. Remove the old interface in QCameraImageEncoderControl. Change-Id: Ic3d67dd19fe13336ba2017dc8055014274619ce6 Reviewed-by: Doris Verria Reviewed-by: Lars Knoll --- examples/multimediawidgets/camera/imagesettings.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'examples') diff --git a/examples/multimediawidgets/camera/imagesettings.cpp b/examples/multimediawidgets/camera/imagesettings.cpp index 239442a0f..6dfcba91e 100644 --- a/examples/multimediawidgets/camera/imagesettings.cpp +++ b/examples/multimediawidgets/camera/imagesettings.cpp @@ -67,10 +67,10 @@ ImageSettings::ImageSettings(QCameraImageCapture *imageCapture, QWidget *parent) //image codecs ui->imageCodecBox->addItem(tr("Default image format"), QVariant(QString())); - const QStringList supportedImageCodecs = imagecapture->supportedImageCodecs(); - for (const QString &codecName : supportedImageCodecs) { - QString description = imagecapture->imageCodecDescription(codecName); - ui->imageCodecBox->addItem(codecName + ": " + description, QVariant(codecName)); + const auto supportedImageFormats = QImageEncoderSettings::supportedFormats(); + for (const auto &f : supportedImageFormats) { + QString description = QImageEncoderSettings::fileFormatDescription(f); + ui->imageCodecBox->addItem(QImageEncoderSettings::fileFormatName(f) + ": " + description, QVariant::fromValue(f)); } ui->imageQualitySlider->setRange(0, int(QMultimedia::VeryHighQuality)); @@ -103,7 +103,7 @@ void ImageSettings::changeEvent(QEvent *e) QImageEncoderSettings ImageSettings::imageSettings() const { QImageEncoderSettings settings = imagecapture->encodingSettings(); - settings.setCodec(boxValue(ui->imageCodecBox).toString()); + settings.setFormat(boxValue(ui->imageCodecBox).value()); settings.setQuality(QMultimedia::EncodingQuality(ui->imageQualitySlider->value())); settings.setResolution(boxValue(ui->imageResolutionBox).toSize()); @@ -112,7 +112,7 @@ QImageEncoderSettings ImageSettings::imageSettings() const void ImageSettings::setImageSettings(const QImageEncoderSettings &imageSettings) { - selectComboBoxItem(ui->imageCodecBox, QVariant(imageSettings.codec())); + selectComboBoxItem(ui->imageCodecBox, QVariant::fromValue(imageSettings.format())); selectComboBoxItem(ui->imageResolutionBox, QVariant(imageSettings.resolution())); ui->imageQualitySlider->setValue(imageSettings.quality()); } -- cgit v1.2.3