Qt 5.6 | Qt Multimedia | C++ Classes | QAudioRecorder

Qt 5.6.2 Reference Documentation

# QAudioRecorder Class

The QAudioRecorder class is used for the recording of audio. More...

Header: | #include <QAudioRecorder>
qmake: | QT += multimedia
Inherits: | QMediaRecorder

- List of all members, including inherited members

## Properties

- audioInput : QString

- 9 properties inherited from QMediaRecorder
- 1 property inherited from QObject

## Public Functions

| QAudioRecorder(QObject *parent = Q_NULLPTR)
| ~QAudioRecorder()
QString | audioInput() const
QString | audioInputDescription(const QString &name) const
QStringList | audioInputs() const
QString | defaultAudioInput() const

- 34 public functions inherited from QMediaRecorder
- 31 public functions inherited from QObject
- 1 public function inherited from QMediaBindableInterface

## Public Slots

void | setAudioInput(const QString &name)

- 5 public slots inherited from QMediaRecorder
- 1 public slot inherited from QObject

## Signals

void | audioInputChanged(const QString &name)
void | availableAudioInputsChanged()

- 13 signals inherited from QMediaRecorder
- 2 signals inherited from QObject

### Additional Inherited Members

- 1 public variable inherited from QObject
- 10 static public members inherited from QObject
- 9 protected functions inherited from QObject
- 1 protected function inherited from QMediaBindableInterface
- 2 protected variables inherited from QObject

## Detailed Description

The QAudioRecorder class is used for the recording of audio.

The QAudioRecorder class is a high level media recording class and contains the same functionality as QMediaRecorder.

      audioRecorder = new QAudioRecorder;

      QAudioEncoderSettings audioSettings;
      audioSettings.setCodec("audio/amr");
      audioSettings.setQuality(QMultimedia::HighQuality);

      audioRecorder->setEncodingSettings(audioSettings);

      audioRecorder->setOutputLocation(QUrl::fromLocalFile("test.amr"));
      audioRecorder->record();

In addition QAudioRecorder provides functionality for selecting the audio input.

      QStringList inputs = audioRecorder->audioInputs();
      QString selectedInput = audioRecorder->defaultAudioInput();

      foreach (QString input, inputs) {
          QString description = audioRecorder->audioInputDescription(input);
          // show descriptions to user and allow selection
          selectedInput = input;
      }

      audioRecorder->setAudioInput(selectedInput);

The Audio Recorder Example shows how to use this class in more detail.

See also QMediaRecorder and QAudioInputSelectorControl.

## Property Documentation

### audioInput : QString

This property holds the active audio input name.

Access functions:

QString | audioInput() const
void | setAudioInput(const QString &name)

Notifier signal:

void | audioInputChanged(const QString &name)

## Member Function Documentation

### QAudioRecorder::QAudioRecorder(QObject *parent = Q_NULLPTR)

Constructs an audio recorder. The parent is passed to QMediaObject.

### QAudioRecorder::~QAudioRecorder()

Destroys an audio recorder object.

### QString QAudioRecorder::audioInput() const

Returns the active audio input name.

Note: Getter function for property audioInput.

See also setAudioInput().

### `[signal]` void QAudioRecorder::audioInputChanged(const QString &name)

Signal emitted when active audio input changes to name.

Note: Notifier signal for property audioInput.

### QString QAudioRecorder::audioInputDescription(const QString &name) const

Returns the readable translated description of the audio input device with name.

### QStringList QAudioRecorder::audioInputs() const

Returns a list of available audio inputs

### `[signal]` void QAudioRecorder::availableAudioInputsChanged()

Signal is emitted when the available audio inputs change.

### QString QAudioRecorder::defaultAudioInput() const

Returns the default audio input name.

### `[slot]` void QAudioRecorder::setAudioInput(const QString &name)

Set the active audio input to name.

Note: Setter function for property audioInput.

See also audioInput().