Removed encoding options from Audio/Video encoding controls

They are replaced with encoding options from
QAudio/Video/ImageEncoderSettings.
This also allows to specify options without
requesting controls.

Change-Id: I507e68cdb8cb46325689804d27c6d0561cada50b
Reviewed-by: Lev Zelenskiy <lev.zelenskiy@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
This commit is contained in:
Dmytro Poplavskiy
2012-06-06 14:06:04 +10:00
committed by Qt by Nokia
parent f53788ae42
commit 62749d654d
15 changed files with 0 additions and 201 deletions

View File

@@ -120,24 +120,6 @@ QAudioEncoderControl::~QAudioEncoderControl()
*\a continuous is set to true, otherwise *\a continuous is set to false. *\a continuous is set to true, otherwise *\a continuous is set to false.
*/ */
/*!
\fn QAudioEncoderControl::supportedEncodingOptions(const QString &codec) const
Returns the list of \a codec specific audio encoding options.
*/
/*!
\fn QAudioEncoderControl::encodingOption(const QString &codec, const QString &option) const
Returns the value of audio encoding \a option for \a codec.
*/
/*!
\fn QAudioEncoderControl::setEncodingOption(const QString &codec, const QString &option, const QVariant &value)
Set the \a codec specific \a option to \a value.
*/
/*! /*!
\fn QAudioEncoderControl::audioSettings() const \fn QAudioEncoderControl::audioSettings() const

View File

@@ -75,11 +75,6 @@ public:
virtual QAudioEncoderSettings audioSettings() const = 0; virtual QAudioEncoderSettings audioSettings() const = 0;
virtual void setAudioSettings(const QAudioEncoderSettings&) = 0; virtual void setAudioSettings(const QAudioEncoderSettings&) = 0;
virtual QStringList supportedEncodingOptions(const QString &codec) const = 0;
virtual QVariant encodingOption(const QString &codec, const QString &name) const = 0;
virtual void setEncodingOption(
const QString &codec, const QString &name, const QVariant &value) = 0;
protected: protected:
QAudioEncoderControl(QObject *parent = 0); QAudioEncoderControl(QObject *parent = 0);
}; };

View File

@@ -107,26 +107,6 @@ QVideoEncoderControl::~QVideoEncoderControl()
Returns a description of a video \a codec. Returns a description of a video \a codec.
*/ */
/*!
\fn QVideoEncoderControl::supportedEncodingOptions(const QString &codec) const
Returns a list of supported encoding options for a video \a codec.
The names and types of the options in the list is system dependent.
*/
/*!
\fn QVideoEncoderControl::encodingOption(const QString &codec, const QString &option) const
Returns the value of a video \a codec \a option.
*/
/*!
\fn QVideoEncoderControl::setEncodingOption(const QString &codec, const QString &option, const QVariant &value)
Sets the \a value of a \a codec specific \a option.
*/
/*! /*!
\fn QVideoEncoderControl::supportedResolutions(const QVideoEncoderSettings &settings = QVideoEncoderSettings(), \fn QVideoEncoderControl::supportedResolutions(const QVideoEncoderSettings &settings = QVideoEncoderSettings(),
bool *continuous = 0) const bool *continuous = 0) const

View File

@@ -79,10 +79,6 @@ public:
virtual QVideoEncoderSettings videoSettings() const = 0; virtual QVideoEncoderSettings videoSettings() const = 0;
virtual void setVideoSettings(const QVideoEncoderSettings &settings) = 0; virtual void setVideoSettings(const QVideoEncoderSettings &settings) = 0;
virtual QStringList supportedEncodingOptions(const QString &codec) const = 0;
virtual QVariant encodingOption(const QString &codec, const QString &name) const = 0;
virtual void setEncodingOption(const QString &codec, const QString &name, const QVariant &value) = 0;
protected: protected:
QVideoEncoderControl(QObject *parent = 0); QVideoEncoderControl(QObject *parent = 0);
}; };

View File

@@ -89,30 +89,6 @@ QString AudioEncoderControl::codecDescription(const QString &codecName) const
return QString(); return QString();
} }
QStringList AudioEncoderControl::supportedEncodingOptions(const QString &codec) const
{
Q_UNUSED(codec)
QStringList list;
return list;
}
QVariant AudioEncoderControl::encodingOption(const QString &codec, const QString &name) const
{
Q_UNUSED(codec)
Q_UNUSED(name)
return QVariant();
}
void AudioEncoderControl::setEncodingOption(
const QString &codec, const QString &name, const QVariant &value)
{
Q_UNUSED(value)
Q_UNUSED(codec)
Q_UNUSED(name)
}
QList<int> AudioEncoderControl::supportedSampleRates(const QAudioEncoderSettings &, bool *continuous) const QList<int> AudioEncoderControl::supportedSampleRates(const QAudioEncoderSettings &, bool *continuous) const
{ {
if (continuous) if (continuous)

View File

@@ -67,10 +67,6 @@ public:
QAudioEncoderSettings audioSettings() const; QAudioEncoderSettings audioSettings() const;
void setAudioSettings(const QAudioEncoderSettings&); void setAudioSettings(const QAudioEncoderSettings&);
QStringList supportedEncodingOptions(const QString &codec) const;
QVariant encodingOption(const QString &codec, const QString &name) const;
void setEncodingOption(const QString &codec, const QString &name, const QVariant &value);
private: private:
AudioCaptureSession* m_session; AudioCaptureSession* m_session;
QAudioEncoderSettings m_settings; QAudioEncoderSettings m_settings;

View File

@@ -65,23 +65,6 @@ QString CameraBinAudioEncoder::codecDescription(const QString &codecName) const
return m_codecs.codecDescription(codecName); return m_codecs.codecDescription(codecName);
} }
QStringList CameraBinAudioEncoder::supportedEncodingOptions(const QString &codec) const
{
return m_codecOptions.value(codec);
}
QVariant CameraBinAudioEncoder::encodingOption(
const QString &codec, const QString &name) const
{
return m_options[codec].value(name);
}
void CameraBinAudioEncoder::setEncodingOption(
const QString &codec, const QString &name, const QVariant &value)
{
m_options[codec][name] = value;
}
QList<int> CameraBinAudioEncoder::supportedSampleRates(const QAudioEncoderSettings &, bool *) const QList<int> CameraBinAudioEncoder::supportedSampleRates(const QAudioEncoderSettings &, bool *) const
{ {
//TODO check element caps to find actual values //TODO check element caps to find actual values

View File

@@ -90,8 +90,6 @@ Q_SIGNALS:
private: private:
QGstCodecsInfo m_codecs; QGstCodecsInfo m_codecs;
QMap<QString,QStringList> m_codecOptions;
QMap<QString, QMap<QString, QVariant> > m_options;
QAudioEncoderSettings m_audioSettings; QAudioEncoderSettings m_audioSettings;
QAudioEncoderSettings m_userSettings; QAudioEncoderSettings m_userSettings;

View File

@@ -94,22 +94,6 @@ QString CameraBinVideoEncoder::videoCodecDescription(const QString &codecName) c
return m_codecs.codecDescription(codecName); return m_codecs.codecDescription(codecName);
} }
QStringList CameraBinVideoEncoder::supportedEncodingOptions(const QString &codec) const
{
return m_codecOptions.value(codec);
}
QVariant CameraBinVideoEncoder::encodingOption(const QString &codec, const QString &name) const
{
return m_options[codec].value(name);
}
void CameraBinVideoEncoder::setEncodingOption(
const QString &codec, const QString &name, const QVariant &value)
{
m_options[codec][name] = value;
}
QVideoEncoderSettings CameraBinVideoEncoder::videoSettings() const QVideoEncoderSettings CameraBinVideoEncoder::videoSettings() const
{ {
return m_videoSettings; return m_videoSettings;

View File

@@ -77,10 +77,6 @@ public:
QVideoEncoderSettings videoSettings() const; QVideoEncoderSettings videoSettings() const;
void setVideoSettings(const QVideoEncoderSettings &settings); void setVideoSettings(const QVideoEncoderSettings &settings);
QStringList supportedEncodingOptions(const QString &codec) const;
QVariant encodingOption(const QString &codec, const QString &name) const;
void setEncodingOption(const QString &codec, const QString &name, const QVariant &value);
void setActualVideoSettings(const QVideoEncoderSettings&); void setActualVideoSettings(const QVideoEncoderSettings&);
void resetActualSettings(); void resetActualSettings();
@@ -93,8 +89,6 @@ private:
CameraBinSession *m_session; CameraBinSession *m_session;
QGstCodecsInfo m_codecs; QGstCodecsInfo m_codecs;
QMap<QString,QStringList> m_codecOptions;
QMap<QString, QMap<QString, QVariant> > m_options;
QVideoEncoderSettings m_videoSettings; // backend selected settings, using m_userSettings QVideoEncoderSettings m_videoSettings; // backend selected settings, using m_userSettings
QVideoEncoderSettings m_userSettings; QVideoEncoderSettings m_userSettings;

View File

@@ -71,7 +71,6 @@ private slots:
void testNullService(); void testNullService();
void testNullControl(); void testNullControl();
void testAudioSource(); void testAudioSource();
void testOptions();
void testDevices(); void testDevices();
void testAvailability(); void testAvailability();
void testAvailableAudioInputChangedSignal(); void testAvailableAudioInputChangedSignal();
@@ -142,16 +141,6 @@ void tst_QAudioRecorder::testAudioSource()
QCOMPARE(audiosource->mediaObject()->service(),(QMediaService *) mockMediaRecorderService); QCOMPARE(audiosource->mediaObject()->service(),(QMediaService *) mockMediaRecorderService);
} }
void tst_QAudioRecorder::testOptions()
{
const QString codec(QLatin1String("audio/mpeg"));
QStringList options = mockMediaRecorderService->mockAudioEncoderControl->supportedEncodingOptions(codec);
QCOMPARE(options.count(), 4);
mockMediaRecorderService->mockAudioEncoderControl->setEncodingOption(codec, options.first(),8000);
QVERIFY(mockMediaRecorderService->mockAudioEncoderControl->encodingOption(codec, options.first()).toInt() == 8000);
}
void tst_QAudioRecorder::testDevices() void tst_QAudioRecorder::testDevices()
{ {
audiosource = new QAudioRecorder; audiosource = new QAudioRecorder;

View File

@@ -390,11 +390,6 @@ void tst_QMediaRecorder::testAudioEncodeControl()
QStringList codecs = capture->supportedAudioCodecs(); QStringList codecs = capture->supportedAudioCodecs();
QVERIFY(codecs.count() == 2); QVERIFY(codecs.count() == 2);
QVERIFY(capture->audioCodecDescription("audio/pcm") == "Pulse Code Modulation"); QVERIFY(capture->audioCodecDescription("audio/pcm") == "Pulse Code Modulation");
QStringList options = encode->supportedEncodingOptions("audio/mpeg");
QCOMPARE(options.count(), 4);
QVERIFY(encode->encodingOption("audio/mpeg","bitrate").isNull());
encode->setEncodingOption("audio/mpeg", "bitrate", QString("vbr"));
QCOMPARE(encode->encodingOption("audio/mpeg","bitrate").toString(), QString("vbr"));
QList<int> rates; QList<int> rates;
rates << 8000 << 11025 << 22050 << 44100; rates << 8000 << 11025 << 22050 << 44100;
QCOMPARE(capture->supportedAudioSampleRates(), rates); QCOMPARE(capture->supportedAudioSampleRates(), rates);
@@ -423,14 +418,6 @@ void tst_QMediaRecorder::testVideoEncodeControl()
QStringList vCodecs = capture->supportedVideoCodecs(); QStringList vCodecs = capture->supportedVideoCodecs();
QVERIFY(vCodecs.count() == 2); QVERIFY(vCodecs.count() == 2);
QCOMPARE(capture->videoCodecDescription("video/3gpp"), QString("video/3gpp")); QCOMPARE(capture->videoCodecDescription("video/3gpp"), QString("video/3gpp"));
QStringList options = videoEncode->supportedEncodingOptions("video/3gpp");
QCOMPARE(options.count(), 2);
QVERIFY(encode->encodingOption("video/3gpp","me").isNull());
encode->setEncodingOption("video/3gpp", "me", QString("dia"));
QCOMPARE(encode->encodingOption("video/3gpp","me").toString(), QString("dia"));
} }
void tst_QMediaRecorder::testEncodingSettings() void tst_QMediaRecorder::testEncodingSettings()

View File

@@ -53,8 +53,6 @@ public:
{ {
m_codecs << "audio/pcm" << "audio/mpeg"; m_codecs << "audio/pcm" << "audio/mpeg";
m_descriptions << "Pulse Code Modulation" << "mp3 format"; m_descriptions << "Pulse Code Modulation" << "mp3 format";
m_supportedEncodeOptions.insert("audio/pcm", QStringList());
m_supportedEncodeOptions.insert("audio/mpeg", QStringList() << "quality" << "bitrate" << "mode" << "vbr");
m_audioSettings.setCodec("audio/pcm"); m_audioSettings.setCodec("audio/pcm");
m_audioSettings.setBitRate(128*1024); m_audioSettings.setBitRate(128*1024);
m_audioSettings.setSampleRate(8000); m_audioSettings.setSampleRate(8000);
@@ -96,21 +94,6 @@ public:
return m_descriptions.value(m_codecs.indexOf(codecName)); return m_descriptions.value(m_codecs.indexOf(codecName));
} }
QStringList supportedEncodingOptions(const QString &codec) const
{
return m_supportedEncodeOptions.value(codec);
}
QVariant encodingOption(const QString &codec, const QString &name) const
{
return m_encodeOptions[codec].value(name);
}
void setEncodingOption(const QString &codec, const QString &name, const QVariant &value)
{
m_encodeOptions[codec][name] = value;
}
private: private:
QAudioEncoderSettings m_audioSettings; QAudioEncoderSettings m_audioSettings;
@@ -119,9 +102,6 @@ private:
QList<int> m_freqs; QList<int> m_freqs;
QMap<QString, QStringList> m_supportedEncodeOptions;
QMap<QString, QMap<QString, QVariant> > m_encodeOptions;
}; };
#endif // MOCKAUDIOENCODERCONTROL_H #endif // MOCKAUDIOENCODERCONTROL_H

View File

@@ -51,8 +51,6 @@ public:
MockVideoEncoderControl(QObject *parent): MockVideoEncoderControl(QObject *parent):
QVideoEncoderControl(parent) QVideoEncoderControl(parent)
{ {
m_supportedEncodeOptions.insert("video/3gpp", QStringList() << "quantizer" << "me");
m_supportedEncodeOptions.insert("video/H264", QStringList() << "quantizer" << "me" << "bframes");
m_videoCodecs << "video/3gpp" << "video/H264"; m_videoCodecs << "video/3gpp" << "video/H264";
m_sizes << QSize(320,240) << QSize(640,480); m_sizes << QSize(320,240) << QSize(640,480);
m_framerates << 30 << 15 << 1; m_framerates << 30 << 15 << 1;
@@ -83,27 +81,9 @@ public:
QStringList supportedVideoCodecs() const { return m_videoCodecs; } QStringList supportedVideoCodecs() const { return m_videoCodecs; }
QString videoCodecDescription(const QString &codecName) const { return codecName; } QString videoCodecDescription(const QString &codecName) const { return codecName; }
QStringList supportedEncodingOptions(const QString &codec) const
{
return m_supportedEncodeOptions.value(codec);
}
QVariant encodingOption(const QString &codec, const QString &name) const
{
return m_encodeOptions[codec].value(name);
}
void setEncodingOption(const QString &codec, const QString &name, const QVariant &value)
{
m_encodeOptions[codec][name] = value;
}
private: private:
QVideoEncoderSettings m_videoSettings; QVideoEncoderSettings m_videoSettings;
QMap<QString, QStringList> m_supportedEncodeOptions;
QMap< QString, QMap<QString, QVariant> > m_encodeOptions;
QStringList m_videoCodecs; QStringList m_videoCodecs;
QList<QSize> m_sizes; QList<QSize> m_sizes;
QList<qreal> m_framerates; QList<qreal> m_framerates;

View File

@@ -97,27 +97,6 @@ public:
{ {
Q_UNUSED(settings); Q_UNUSED(settings);
} }
QStringList supportedEncodingOptions(const QString &codec) const
{
Q_UNUSED(codec);
return QStringList();
}
QVariant encodingOption(const QString &codec, const QString &name) const
{
Q_UNUSED(codec);
Q_UNUSED(name);
return QVariant();
}
void setEncodingOption(const QString &codec, const QString &name, const QVariant &value)
{
Q_UNUSED(codec);
Q_UNUSED(name);
Q_UNUSED(value);
}
}; };
class tst_QVideoEncoderControl: public QObject class tst_QVideoEncoderControl: public QObject