Added custom parameters to Audio/Video/ImageEncodingSettings
This allows to specify more advanced and system/codec specific settings Change-Id: Ia0a2e94eaf56df285a219018e0beab895a2e7c2a Reviewed-by: Ling Hu <ling.hu@nokia.com>
This commit is contained in:
committed by
Qt by Nokia
parent
f965f683d0
commit
63db99a8ee
@@ -791,11 +791,26 @@ void tst_QCamera::testImageSettings()
|
||||
QCOMPARE(settings.resolution(), QSize(800,600));
|
||||
QVERIFY(!settings.isNull());
|
||||
|
||||
settings = QImageEncoderSettings();
|
||||
settings.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption")), QVariant(1));
|
||||
QVariantMap options;
|
||||
options.insert(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QCOMPARE(settings.encodingOptions(), options);
|
||||
options.insert(QLatin1Literal("encoderOption2"), QVariant(2));
|
||||
options.remove(QLatin1Literal("encoderOption"));
|
||||
settings.setEncodingOptions(options);
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption")), QVariant());
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption2")), QVariant(2));
|
||||
QVERIFY(!settings.isNull());
|
||||
QVERIFY(settings != QImageEncoderSettings());
|
||||
|
||||
settings = QImageEncoderSettings();
|
||||
QVERIFY(settings.isNull());
|
||||
QCOMPARE(settings.codec(), QString());
|
||||
QCOMPARE(settings.quality(), QtMultimedia::NormalQuality);
|
||||
QCOMPARE(settings.resolution(), QSize());
|
||||
QVERIFY(settings.encodingOptions().isEmpty());
|
||||
|
||||
{
|
||||
QImageEncoderSettings settings1;
|
||||
@@ -855,6 +870,14 @@ void tst_QCamera::testImageSettings()
|
||||
QVERIFY(settings1 == settings2);
|
||||
settings2.setQuality(QtMultimedia::LowQuality);
|
||||
QVERIFY(settings1 != settings2);
|
||||
|
||||
settings1 = QImageEncoderSettings();
|
||||
settings1.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
settings2 = QImageEncoderSettings();
|
||||
settings2.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QVERIFY(settings1 == settings2);
|
||||
settings2.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(2));
|
||||
QVERIFY(settings1 != settings2);
|
||||
}
|
||||
|
||||
void tst_QCamera::testCameraLock()
|
||||
|
||||
@@ -515,12 +515,27 @@ void tst_QMediaRecorder::testAudioSettings()
|
||||
QCOMPARE(settings.channelCount(), 2);
|
||||
QVERIFY(!settings.isNull());
|
||||
|
||||
settings = QAudioEncoderSettings();
|
||||
settings.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption")), QVariant(1));
|
||||
QVariantMap options;
|
||||
options.insert(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QCOMPARE(settings.encodingOptions(), options);
|
||||
options.insert(QLatin1Literal("encoderOption2"), QVariant(2));
|
||||
options.remove(QLatin1Literal("encoderOption"));
|
||||
settings.setEncodingOptions(options);
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption")), QVariant());
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption2")), QVariant(2));
|
||||
QVERIFY(!settings.isNull());
|
||||
QVERIFY(settings != QAudioEncoderSettings());
|
||||
|
||||
settings = QAudioEncoderSettings();
|
||||
QVERIFY(settings.isNull());
|
||||
QCOMPARE(settings.codec(), QString());
|
||||
QCOMPARE(settings.bitRate(), -1);
|
||||
QCOMPARE(settings.quality(), QtMultimedia::NormalQuality);
|
||||
QCOMPARE(settings.sampleRate(), -1);
|
||||
QVERIFY(settings.encodingOptions().isEmpty());
|
||||
|
||||
{
|
||||
QAudioEncoderSettings settings1;
|
||||
@@ -601,6 +616,14 @@ void tst_QMediaRecorder::testAudioSettings()
|
||||
QVERIFY(settings1 == settings2);
|
||||
settings2.setSampleRate(2);
|
||||
QVERIFY(settings1 != settings2);
|
||||
|
||||
settings1 = QAudioEncoderSettings();
|
||||
settings1.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
settings2 = QAudioEncoderSettings();
|
||||
settings2.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QVERIFY(settings1 == settings2);
|
||||
settings2.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(2));
|
||||
QVERIFY(settings1 != settings2);
|
||||
}
|
||||
|
||||
void tst_QMediaRecorder::testVideoSettings()
|
||||
@@ -643,6 +666,20 @@ void tst_QMediaRecorder::testVideoSettings()
|
||||
QCOMPARE(settings.resolution(), QSize(800,600));
|
||||
QVERIFY(!settings.isNull());
|
||||
|
||||
settings = QVideoEncoderSettings();
|
||||
settings.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption")), QVariant(1));
|
||||
QVariantMap options;
|
||||
options.insert(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QCOMPARE(settings.encodingOptions(), options);
|
||||
options.insert(QLatin1Literal("encoderOption2"), QVariant(2));
|
||||
options.remove(QLatin1Literal("encoderOption"));
|
||||
settings.setEncodingOptions(options);
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption")), QVariant());
|
||||
QCOMPARE(settings.encodingOption(QLatin1Literal("encoderOption2")), QVariant(2));
|
||||
QVERIFY(!settings.isNull());
|
||||
QVERIFY(settings != QVideoEncoderSettings());
|
||||
|
||||
settings = QVideoEncoderSettings();
|
||||
QVERIFY(settings.isNull());
|
||||
QCOMPARE(settings.codec(), QString());
|
||||
@@ -650,6 +687,7 @@ void tst_QMediaRecorder::testVideoSettings()
|
||||
QCOMPARE(settings.quality(), QtMultimedia::NormalQuality);
|
||||
QCOMPARE(settings.frameRate(), qreal());
|
||||
QCOMPARE(settings.resolution(), QSize());
|
||||
QVERIFY(settings.encodingOptions().isEmpty());
|
||||
|
||||
{
|
||||
QVideoEncoderSettings settings1;
|
||||
@@ -730,6 +768,14 @@ void tst_QMediaRecorder::testVideoSettings()
|
||||
QVERIFY(settings1 == settings2);
|
||||
settings2.setFrameRate(2);
|
||||
QVERIFY(settings1 != settings2);
|
||||
|
||||
settings1 = QVideoEncoderSettings();
|
||||
settings1.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
settings2 = QVideoEncoderSettings();
|
||||
settings2.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(1));
|
||||
QVERIFY(settings1 == settings2);
|
||||
settings2.setEncodingOption(QLatin1Literal("encoderOption"), QVariant(2));
|
||||
QVERIFY(settings1 != settings2);
|
||||
}
|
||||
|
||||
void tst_QMediaRecorder::testSettingsApplied()
|
||||
|
||||
Reference in New Issue
Block a user