diff options
Diffstat (limited to 'examples/multimedia/audiorecorder/doc')
-rw-r--r-- | examples/multimedia/audiorecorder/doc/images/audiorecorder.png | bin | 0 -> 28212 bytes | |||
-rw-r--r-- | examples/multimedia/audiorecorder/doc/src/audiorecorder.qdoc | 104 |
2 files changed, 104 insertions, 0 deletions
diff --git a/examples/multimedia/audiorecorder/doc/images/audiorecorder.png b/examples/multimedia/audiorecorder/doc/images/audiorecorder.png Binary files differnew file mode 100644 index 000000000..6643bf320 --- /dev/null +++ b/examples/multimedia/audiorecorder/doc/images/audiorecorder.png diff --git a/examples/multimedia/audiorecorder/doc/src/audiorecorder.qdoc b/examples/multimedia/audiorecorder/doc/src/audiorecorder.qdoc new file mode 100644 index 000000000..3dea92cac --- /dev/null +++ b/examples/multimedia/audiorecorder/doc/src/audiorecorder.qdoc @@ -0,0 +1,104 @@ +/**************************************************************************** +** +** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the documentation of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:FDL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and Digia. For licensing terms and +** conditions see http://qt.digia.com/licensing. For further information +** use the contact form at http://qt.digia.com/contact-us. +** +** GNU Free Documentation License Usage +** Alternatively, this file may be used under the terms of the GNU Free +** Documentation License version 1.3 as published by the Free Software +** Foundation and appearing in the file included in the packaging of +** this file. Please review the following information to ensure +** the GNU Free Documentation License version 1.3 requirements +** will be met: http://www.gnu.org/copyleft/fdl.html. +** $QT_END_LICENSE$ +** +****************************************************************************/ + +/*! + \example audiorecorder + \title Audio Recorder Example + \ingroup audio_examples + \brief The Audio Recorder Example shows how to create a simple audio recorder. + + It demonstrates the discovery of the supported devices and codecs and the use + of recording functions in the QAudioRecorder class. + + We display a window for the user to select the appropriate audio input, + codec, container, and sample rate. Allow a setting of either quality or + bitrate. Finally, the output file can be selected and recording can be + started. + + The lists are setup using the \l{QAudioRecorder::audioInputs()}{audioInputs()}, + \l{QAudioRecorder::supportedAudioCodecs()}{supportedAudioCodecs()}, + \l{QAudioRecorder::supportedContainers()}{supportedContainers()}, + \l{QAudioRecorder::supportedContainers()}{supportedContainers()}, and + \l{QAudioRecorder::supportedAudioSampleRates()}{supportedAudioSampleRates()} + methods. The quality slider is setup from 0 (zero) to + \l{QMultimedia::VeryHighQuality} with a default value of + \l{QMultimedia::NormalQuality}, while the bitrates are hardcoded + into the list. + + \image audiorecorder.png + + To record audio we simply create a QAudioRecorder object. + + \code + audioRecorder = new QAudioRecorder(this); + \endcode + + And setup the lists as described above. The text on the record and pause + buttons are toggled depending on the \l{QMediaRecorder::State}{state} of + the \c audioRecorder object. This means that if the state is + \l{QMediaRecorder::StoppedState} then the button text will be "Record" and + "Pause". In \l{QMediaRecorder::RecordingState} the record button will have + the text "Stop", and in \l{QMediaRecorder::PausedState} the pause button + will have the text "Resume". + + Pressing the buttons will also result in a toggle based on the state. If + recording is stopped, then pressing the record button will setup the + \l{QAudioEncoderSettings} based on the values of the selection lists, + will set the encoding settings and container on the \c audioRecorder + object, and start recording using the + \l{QMediaRecorder::record()}{record()} method. + + \code + QAudioEncoderSettings settings; + settings.setCodec(boxValue(ui->audioCodecBox).toString()); + settings.setSampleRate(boxValue(ui->sampleRateBox).toInt()); + settings.setBitRate(boxValue(ui->bitrateBox).toInt()); + settings.setQuality(QMultimedia::EncodingQuality(ui->qualitySlider->value())); + settings.setEncodingMode(ui->constantQualityRadioButton->isChecked() ? + QMultimedia::ConstantQualityEncoding : + QMultimedia::ConstantBitRateEncoding); + + QString container = boxValue(ui->containerBox).toString(); + + audioRecorder->setEncodingSettings(settings, QVideoEncoderSettings(), container); + audioRecorder->record(); + \endcode + + While recording, the status bar of the application is updated with duration information + from the \l{QMediaRecorder::durationChanged()}{durationChanged} signal from the + \c audioRecorder object. + + \code + ui->statusbar->showMessage(tr("Recorded %1 sec").arg(duration / 1000)); + \endcode + + + + +*/ + + |