diff options
author | Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com> | 2012-05-18 10:26:51 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-05-18 05:28:35 +0200 |
commit | 63db99a8ee1fa6430cf5f6ab3406323bd7c14850 (patch) | |
tree | 90a7e37191ad4de209a5156bdbe60896768c3963 /tests/auto/unit/qmediarecorder | |
parent | f965f683d09eebcf5d1d0e8403db402551ac7c50 (diff) |
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>
Diffstat (limited to 'tests/auto/unit/qmediarecorder')
-rw-r--r-- | tests/auto/unit/qmediarecorder/tst_qmediarecorder.cpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/auto/unit/qmediarecorder/tst_qmediarecorder.cpp b/tests/auto/unit/qmediarecorder/tst_qmediarecorder.cpp index aad7b873d..bb5c8b525 100644 --- a/tests/auto/unit/qmediarecorder/tst_qmediarecorder.cpp +++ b/tests/auto/unit/qmediarecorder/tst_qmediarecorder.cpp @@ -516,11 +516,26 @@ void tst_QMediaRecorder::testAudioSettings() 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() @@ -644,12 +667,27 @@ void tst_QMediaRecorder::testVideoSettings() 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()); QCOMPARE(settings.bitRate(), -1); 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() |