QMediaRecorder Class Reference
The QMediaRecorder class is used for the recording of media content. More...
#include <QMediaRecorder>
This class is under development and is subject to change.
Inherits QMediaBindableInterface.
Public Types
enum | Error { NoError, ResourceError, FormatError } |
enum | State { StoppedState, RecordingState, PausedState } |
Properties
Public Functions
Reimplemented Public Functions
Public Slots
Signals
Additional Inherited Members
Detailed Description
The QMediaRecorder class is used for the recording of media content.
The QMediaRecorder class is a high level media recording class. It's not intended to be used alone but for accessing the media recording functions of other media objects, like QRadioTuner, or QAudioCaptureSource.
// Audio only recording
audioSource = new QAudioCaptureSource;
recorder = new QMediaRecorder(audioSource);
QAudioEncoderSettings audioSettings;
audioSettings.setCodec("audio/vorbis");
audioSettings.setQuality(QtMultimediaKit::HighQuality);
recorder->setEncodingSettings(audioSettings);
recorder->setOutputLocation(QUrl::fromLocalFile(fileName));
recorder->record();
Member Type Documentation
enum QMediaRecorder::Error
|
Constant | Value | Description |
QMediaRecorder::NoError | 0 | No Errors. |
QMediaRecorder::ResourceError | 1 | Device is not ready or not available. |
QMediaRecorder::FormatError | 2 | Current format is not supported. |
enum QMediaRecorder::State
|
Constant | Value | Description |
QMediaRecorder::StoppedState | 0 | The recorder is not active. |
QMediaRecorder::RecordingState | 1 | The recorder is currently active and producing data. |
QMediaRecorder::PausedState | 2 | The recorder is paused. |
Property Documentation
duration : const qint64
This property holds the recorded media duration in milliseconds.
Access functions:
Notifier signal:
metaDataAvailable : const bool
This property holds whether access to a media object's meta-data is available.
If this is true there is meta-data available, otherwise there is no meta-data available.
Access functions:
bool | isMetaDataAvailable () const |
Notifier signal:
metaDataWritable : const bool
This property holds whether a media object's meta-data is writable.
If this is true the meta-data is writable, otherwise the meta-data is read-only.
Access functions:
bool | isMetaDataWritable () const |
Notifier signal:
muted : bool
This property holds whether a recording audio stream is muted.
Access functions:
bool | isMuted () const |
void | setMuted ( bool muted ) |
Notifier signal:
outputLocation : QUrl
This property holds the destination location of media content.
Setting the location can fail, for example when the service supports only local file system locations but a network URL was passed. If the service does not support media recording this setting the output location will always fail.
The location can be relative or empty; in this case the recorder uses the system specific place and file naming scheme. After recording has stated, QMediaRecorder::outputLocation() returns the actual output location.
Access functions:
QUrl | outputLocation () const |
bool | setOutputLocation ( const QUrl & location ) |
Member Function Documentation
QMediaRecorder::QMediaRecorder ( QMediaObject * mediaObject, QObject * parent = 0 )
Constructs a media recorder which records the media produced by mediaObject.
The parent is passed to QMediaObject.
QMediaRecorder::~QMediaRecorder ()
Destroys a media recorder object.
QString QMediaRecorder::audioCodecDescription ( const QString & codec ) const
Returns a description of an audio codec.
Returns the audio encoder settings being used.
See also setEncodingSettings().
QtMultimediaKit::AvailabilityError QMediaRecorder::availabilityError () const
Returns the availability error code.
QStringList QMediaRecorder::availableExtendedMetaData () const
Returns a list of keys there is extended meta-data available for.
QList<QtMultimediaKit::MetaData> QMediaRecorder::availableMetaData () const
Returns a list of keys there is meta-data available for.
QString QMediaRecorder::containerDescription ( const QString & mimeType ) const
Returns a description of a container format mimeType.
QString QMediaRecorder::containerMimeType () const
Returns the MIME type of the selected container format.
void QMediaRecorder::durationChanged ( qint64 duration ) [signal]
Signals that the duration of the recorded media has changed.
Error QMediaRecorder::error () const
Returns the current error state.
See also errorString().
void QMediaRecorder::error ( QMediaRecorder::Error error ) [signal]
Signals that an error has occurred.
QString QMediaRecorder::errorString () const
Returns a string describing the current error state.
See also error().
QVariant QMediaRecorder::extendedMetaData ( const QString & key ) const
Returns the value associated with a meta-data key.
The naming and type of extended meta-data is not standardized, so the values and meaning of keys may vary between backends.
See also setExtendedMetaData().
bool QMediaRecorder::isAvailable () const
Returns true if media recorder service ready to use.
QMediaObject * QMediaRecorder::mediaObject () const [virtual]
Reimplemented from QMediaBindableInterface::mediaObject().
Returns the QMediaObject instance that this QMediaRecorder is bound too, or 0 otherwise.
QVariant QMediaRecorder::metaData ( QtMultimediaKit::MetaData key ) const
Returns the value associated with a meta-data key.
See also setMetaData().
void QMediaRecorder::metaDataAvailableChanged ( bool available ) [signal]
Signals that the available state of a media object's meta-data has changed.
void QMediaRecorder::metaDataChanged () [signal]
Signals that a media object's meta-data has changed.
void QMediaRecorder::metaDataWritableChanged ( bool writable ) [signal]
Signals that the writable state of a media object's meta-data has changed.
void QMediaRecorder::mutedChanged ( bool muted ) [signal]
Signals that the muted state has changed. If true the recording is being muted.
void QMediaRecorder::pause () [slot]
Pause recording.
void QMediaRecorder::record () [slot]
Start recording.
This is an asynchronous call, with signal stateCahnged(QMediaRecorder::RecordingState) being emitted when recording started, otherwise the error() signal is emitted.
void QMediaRecorder::setEncodingSettings ( const QAudioEncoderSettings & audio, const QVideoEncoderSettings & video = QVideoEncoderSettings(), const QString & container = QString() )
Sets the audio and video encoder settings and container format MIME type.
If some parameters are not specified, or null settings are passed, the encoder will choose default encoding parameters, depending on media source properties. While setEncodingSettings is optional, the backend can preload encoding pipeline to improve recording startup time.
It's only possible to change settings when the encoder is in the QMediaEncoder::StoppedState state.
See also audioSettings(), videoSettings(), and containerMimeType().
void QMediaRecorder::setExtendedMetaData ( const QString & key, const QVariant & value )
Sets a value for a meta-data key.
The naming and type of extended meta-data is not standardized, so the values and meaning of keys may vary between backends.
See also extendedMetaData().
void QMediaRecorder::setMetaData ( QtMultimediaKit::MetaData key, const QVariant & value )
Sets a value for a meta-data key.
See also metaData().
State QMediaRecorder::state () const
Returns the current media recorder state.
See also QMediaRecorder::State.
void QMediaRecorder::stateChanged ( QMediaRecorder::State state ) [signal]
Signals that a media recorder's state has changed.
void QMediaRecorder::stop () [slot]
Stop recording.
QStringList QMediaRecorder::supportedAudioCodecs () const
Returns a list of supported audio codecs.
QList<int> QMediaRecorder::supportedAudioSampleRates ( const QAudioEncoderSettings & settings = QAudioEncoderSettings(), bool * continuous = 0 ) const
Returns a list of supported audio sample rates.
If non null audio settings parameter is passed, the returned list is reduced to sample rates supported with partial settings applied.
This can be used to query the list of sample rates, supported by specific audio codec.
If the encoder supports arbitrary sample rates within the supported rates range, *continuous is set to true, otherwise *continuous is set to false.
QStringList QMediaRecorder::supportedContainers () const
Returns a list of MIME types of supported container formats.
QList<qreal> QMediaRecorder::supportedFrameRates ( const QVideoEncoderSettings & settings = QVideoEncoderSettings(), bool * continuous = 0 ) const
Returns a list of frame rates video can be encoded at.
If non null video settings parameter is passed, the returned list is reduced to frame rates supported with partial settings like video codec or resolution applied.
If the encoder supports arbitrary frame rates within the supported range, *continuous is set to true, otherwise *continuous is set to false.
See also QVideoEncoderSettings::frameRate().
QList<QSize> QMediaRecorder::supportedResolutions ( const QVideoEncoderSettings & settings = QVideoEncoderSettings(), bool * continuous = 0 ) const
Returns a list of resolutions video can be encoded at.
If non null video settings parameter is passed, the returned list is reduced to resolution supported with partial settings like video codec or framerate applied.
If the encoder supports arbitrary resolutions within the supported range, *continuous is set to true, otherwise *continuous is set to false.
See also QVideoEncoderSettings::resolution().
QStringList QMediaRecorder::supportedVideoCodecs () const
Returns a list of supported video codecs.
QString QMediaRecorder::videoCodecDescription ( const QString & codec ) const
Returns a description of a video codec.
See also setEncodingSettings().
Returns the video encoder settings being used.
See also setEncodingSettings().