Split QMediaRecorder::setEncodingSettings to separate setters.

It's easier to change only the necessary part of encoding settings.
The settings are applied during the next event loop or before recording
starts.

Change-Id: Ia2b5c93826a302212aa7f79a0c75e4cbaaf1dd7a
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
This commit is contained in:
Dmytro Poplavskiy
2012-01-31 10:08:49 +10:00
committed by Qt by Nokia
parent 9d3102efe2
commit a22a0195f1
19 changed files with 231 additions and 80 deletions

View File

@@ -152,10 +152,10 @@ void QGstreamerRecorderControl::applySettings()
bool needVideo = m_session->captureMode() & QGstreamerCaptureSession::Video;
QStringList containerCandidates;
if (mediaContainerControl->containerMimeType().isEmpty())
if (mediaContainerControl->containerFormat().isEmpty())
containerCandidates = mediaContainerControl->supportedContainers();
else
containerCandidates << mediaContainerControl->containerMimeType();
containerCandidates << mediaContainerControl->containerFormat();
QStringList audioCandidates;
@@ -221,7 +221,7 @@ void QGstreamerRecorderControl::applySettings()
if (container.isEmpty()) {
emit error(QMediaRecorder::FormatError, tr("Not compatible codecs and container format."));
} else {
mediaContainerControl->setContainerMimeType(container);
mediaContainerControl->setContainerFormat(container);
if (needAudio) {
QAudioEncoderSettings audioSettings = audioEncodeControl->audioSettings();